diff --git a/cmd/cue/cmd/common.go b/cmd/cue/cmd/common.go
index a2b9c7b..2cec1e8 100644
--- a/cmd/cue/cmd/common.go
+++ b/cmd/cue/cmd/common.go
@@ -16,7 +16,6 @@
 
 import (
 	"bytes"
-	"flag"
 	"io"
 	"os"
 	"strings"
@@ -35,12 +34,6 @@
 
 var inTest = false
 
-func init() {
-	if flag.Lookup("test.v") != nil || strings.Contains(os.Args[0], "/_test/") {
-		inTest = true
-	}
-}
-
 func mustParseFlags(t *testing.T, cmd *cobra.Command, flags ...string) {
 	if err := cmd.ParseFlags(flags); err != nil {
 		t.Fatal(err)
diff --git a/cmd/cue/cmd/root.go b/cmd/cue/cmd/root.go
index 2f89cb4..6fcc8ce 100644
--- a/cmd/cue/cmd/root.go
+++ b/cmd/cue/cmd/root.go
@@ -102,6 +102,12 @@
 	return c
 }
 
+// MainTest is like Main, runs the cue tool and returns the code for passing to os.Exit.
+func MainTest() int {
+	inTest = true
+	return Main()
+}
+
 // Main runs the cue tool and returns the code for passing to os.Exit.
 func Main() int {
 	err := mainErr(context.Background(), os.Args[1:])
diff --git a/cmd/cue/cmd/script_test.go b/cmd/cue/cmd/script_test.go
index 67a3b69..13f23ea 100644
--- a/cmd/cue/cmd/script_test.go
+++ b/cmd/cue/cmd/script_test.go
@@ -18,8 +18,7 @@
 	// Setting inTest causes filenames printed in error messages
 	// to be normalized so the output looks the same on Unix
 	// as Windows.
-	inTest = true
 	os.Exit(testscript.RunMain(m, map[string]func() int{
-		"cue": Main,
+		"cue": MainTest,
 	}))
 }
diff --git a/doc/tutorial/basics/0_intro/47_validation.txt b/doc/tutorial/basics/0_intro/47_validation.txt
index 095fd2f..0f3c4fe 100644
--- a/doc/tutorial/basics/0_intro/47_validation.txt
+++ b/doc/tutorial/basics/0_intro/47_validation.txt
@@ -1,4 +1,5 @@
 ! cue vet schema.cue data.yaml
+cmp stderr expect-stderr
 
 -- frontmatter.toml --
 title = "Validation"
diff --git a/doc/tutorial/basics/script_test.go b/doc/tutorial/basics/script_test.go
index 6b68152..c1879e4 100644
--- a/doc/tutorial/basics/script_test.go
+++ b/doc/tutorial/basics/script_test.go
@@ -61,6 +61,6 @@
 
 func TestMain(m *testing.M) {
 	os.Exit(testscript.RunMain(m, map[string]func() int{
-		"cue": cmd.Main,
+		"cue": cmd.MainTest,
 	}))
 }
