diff --git a/metropolis/node/core/curator/impl_leader_test.go b/metropolis/node/core/curator/impl_leader_test.go
index e89d4a1..2d92536 100644
--- a/metropolis/node/core/curator/impl_leader_test.go
+++ b/metropolis/node/core/curator/impl_leader_test.go
@@ -182,7 +182,8 @@
 	externalLis := bufconn.Listen(1024 * 1024)
 	go func() {
 		if err := srv.Serve(externalLis); err != nil {
-			t.Fatalf("GRPC serve failed: %v", err)
+			t.Errorf("GRPC serve failed: %v", err)
+			return
 		}
 	}()
 
diff --git a/metropolis/node/core/mgmt/svc_logs_test.go b/metropolis/node/core/mgmt/svc_logs_test.go
index 9517600..734a149 100644
--- a/metropolis/node/core/mgmt/svc_logs_test.go
+++ b/metropolis/node/core/mgmt/svc_logs_test.go
@@ -35,7 +35,8 @@
 	externalLis := bufconn.Listen(1024 * 1024)
 	go func() {
 		if err := srv.Serve(externalLis); err != nil {
-			t.Fatalf("GRPC serve failed: %v", err)
+			t.Errorf("GRPC serve failed: %v", err)
+			return
 		}
 	}()
 	withLocalDialer := grpc.WithContextDialer(func(_ context.Context, _ string) (net.Conn, error) {
diff --git a/metropolis/node/core/roleserve/worker_statuspush_test.go b/metropolis/node/core/roleserve/worker_statuspush_test.go
index d1a8d2d..06e48e8 100644
--- a/metropolis/node/core/roleserve/worker_statuspush_test.go
+++ b/metropolis/node/core/roleserve/worker_statuspush_test.go
@@ -87,7 +87,8 @@
 	defer lis.Close()
 	go func() {
 		if err := srv.Serve(lis); err != nil {
-			t.Fatalf("GRPC serve failed: %v", err)
+			t.Errorf("GRPC serve failed: %v", err)
+			return
 		}
 	}()
 	withLocalDialer := grpc.WithContextDialer(func(_ context.Context, _ string) (net.Conn, error) {
diff --git a/metropolis/node/core/rpc/resolver/resolver_test.go b/metropolis/node/core/rpc/resolver/resolver_test.go
index eac59d1..e0f67ef 100644
--- a/metropolis/node/core/rpc/resolver/resolver_test.go
+++ b/metropolis/node/core/rpc/resolver/resolver_test.go
@@ -153,7 +153,8 @@
 		ipb.RegisterCuratorLocalServer(servers[i], impls[i])
 		go func() {
 			if err := servers[i].Serve(listeners[i]); err != nil {
-				t.Fatalf("GRPC serve failed: %v", err)
+				t.Errorf("GRPC serve failed: %v", err)
+				return
 			}
 		}()
 
diff --git a/metropolis/node/core/rpc/server_authentication_test.go b/metropolis/node/core/rpc/server_authentication_test.go
index b0da0a9..8a869bd 100644
--- a/metropolis/node/core/rpc/server_authentication_test.go
+++ b/metropolis/node/core/rpc/server_authentication_test.go
@@ -51,7 +51,8 @@
 	lis := bufconn.Listen(1024 * 1024)
 	go func() {
 		if err := srv.Serve(lis); err != nil {
-			t.Fatalf("GRPC serve failed: %v", err)
+			t.Errorf("GRPC serve failed: %v", err)
+			return
 		}
 	}()
 	defer lis.Close()
diff --git a/metropolis/pkg/event/etcd/etcd_test.go b/metropolis/pkg/event/etcd/etcd_test.go
index e7e1227..6173732 100644
--- a/metropolis/pkg/event/etcd/etcd_test.go
+++ b/metropolis/pkg/event/etcd/etcd_test.go
@@ -210,7 +210,9 @@
 				return
 			}
 			if err != nil {
-				t.Fatalf("Get: %v", err)
+				t.Errorf("Get: %v", err)
+				close(c)
+				return
 			}
 			c <- got.Value
 		}
diff --git a/metropolis/pkg/socksproxy/socksproxy_test.go b/metropolis/pkg/socksproxy/socksproxy_test.go
index 1f384f6..0132ab3 100644
--- a/metropolis/pkg/socksproxy/socksproxy_test.go
+++ b/metropolis/pkg/socksproxy/socksproxy_test.go
@@ -35,7 +35,8 @@
 	go func() {
 		err := http.Serve(lisSrv, mux)
 		if err != nil {
-			t.Fatalf("http.Serve: %v", err)
+			t.Errorf("http.Serve: %v", err)
+			return
 		}
 	}()
 
@@ -47,7 +48,8 @@
 	go func() {
 		err := Serve(ctx, HostHandler, lisPrx)
 		if err != nil && !errors.Is(err, ctx.Err()) {
-			t.Fatalf("proxy.Serve: %v", err)
+			t.Errorf("proxy.Serve: %v", err)
+			return
 		}
 	}()
 
@@ -122,7 +124,8 @@
 	go func() {
 		err := Serve(ctx, handler, lisPrx)
 		if err != nil && !errors.Is(err, ctx.Err()) {
-			t.Fatalf("proxy.Serve: %v", err)
+			t.Errorf("proxy.Serve: %v", err)
+			return
 		}
 	}()
 
diff --git a/metropolis/test/util/curator.go b/metropolis/test/util/curator.go
index 7d1f36a..39b2610 100644
--- a/metropolis/test/util/curator.go
+++ b/metropolis/test/util/curator.go
@@ -95,7 +95,8 @@
 	externalLis := bufconn.Listen(1024 * 1024)
 	go func() {
 		if err := srv.Serve(externalLis); err != nil {
-			t.Fatalf("GRPC serve failed: %v", err)
+			t.Errorf("GRPC serve failed: %v", err)
+			return
 		}
 	}()
 	withLocalDialer := grpc.WithContextDialer(func(_ context.Context, _ string) (net.Conn, error) {
