diff --git a/metropolis/node/core/curator/impl_leader_test.go b/metropolis/node/core/curator/impl_leader_test.go
index 465de13..b5b46de 100644
--- a/metropolis/node/core/curator/impl_leader_test.go
+++ b/metropolis/node/core/curator/impl_leader_test.go
@@ -44,6 +44,8 @@
 // implementations without the overhead of having to wait for a leader election.
 func fakeLeader(t *testing.T) fakeLeaderData {
 	t.Helper()
+	lt := logtree.New()
+	logtree.PipeAllToTest(t, lt)
 	// Set up context whose cancel function will be returned to the user for
 	// terminating all harnesses started by this function.
 	ctx, ctxC := context.WithCancel(context.Background())
@@ -145,9 +147,6 @@
 	}
 	leader := newCuratorLeader(leadership, &nodeCredentials.Node)
 
-	lt := logtree.New()
-	logtree.PipeAllToStderr(t, lt)
-
 	// Create a curator gRPC server which performs authentication as per the created
 	// ServerSecurity and is backed by the created leader.
 	srv := grpc.NewServer(sec.GRPCOptions(lt.MustLeveledFor("leader"))...)
diff --git a/metropolis/pkg/logtree/testhelpers.go b/metropolis/pkg/logtree/testhelpers.go
index fe69017..45bcaf2 100644
--- a/metropolis/pkg/logtree/testhelpers.go
+++ b/metropolis/pkg/logtree/testhelpers.go
@@ -2,17 +2,15 @@
 
 import (
 	"context"
-	"fmt"
-	"os"
 	"testing"
 )
 
-// PipeAllToStderr starts a goroutine that will forward all logtree entries
-// into stderr, in the canonical logtree payload representation.
+// PipeAllToTest starts a goroutine that will forward all logtree entries
+// t.Logf(), in the canonical logtree payload representation.
 //
 // It's designed to be used in tests, and will automatically stop when the
 // test/benchmark it's running in exits.
-func PipeAllToStderr(t testing.TB, lt *LogTree) {
+func PipeAllToTest(t testing.TB, lt *LogTree) {
 	t.Helper()
 
 	reader, err := lt.Read("", WithChildren(), WithStream())
@@ -26,12 +24,13 @@
 	t.Cleanup(ctxC)
 
 	go func() {
+		t.Helper()
 		for {
 			select {
 			case <-ctx.Done():
 				return
 			case p := <-reader.Stream:
-				fmt.Fprintf(os.Stderr, "%s\n", p.String())
+				t.Logf("%s", p.String())
 			}
 		}
 	}()
diff --git a/metropolis/pkg/supervisor/supervisor_testhelpers.go b/metropolis/pkg/supervisor/supervisor_testhelpers.go
index 017c9f9..1a72ad8 100644
--- a/metropolis/pkg/supervisor/supervisor_testhelpers.go
+++ b/metropolis/pkg/supervisor/supervisor_testhelpers.go
@@ -57,7 +57,7 @@
 		verbose = true
 	}
 	if verbose {
-		logtree.PipeAllToStderr(t, lt)
+		logtree.PipeAllToTest(t, lt)
 	}
 
 	sup := New(ctx, func(ctx context.Context) error {
