go test -v 可显示测试执行详情,如用例运行状态与耗时,但无 -vv 参数;通过 -v 结合 -cover、-race 等参数可增强输出,t.Log 配合 -v 还能输出调试日志,满足多数调试需求。

在 Go 语言中,使用 go test -v 可以查看测试的详细输出,但并不存在 -vv 这样的双 verbose 参数。Go 的测试工具只支持单个 -v(verbose)标志来显示测试函数的运行情况。
-v 参数会让测试框架打印出每个测试用例的执行状态,包括哪些测试开始运行、是否通过等信息。这对于调试和观察测试流程非常有帮助。
示例代码:假设你有一个简单的测试文件 example_test.go:
package main
<p>import "testing"</p><p><span>立即学习</span>“<a href="https://pan.quark.cn/s/00968c3c2c15" style="text-decoration: underline !important; color: blue; font-weight: bolder;" rel="nofollow" target="_blank">go语言免费学习笔记(深入)</a>”;</p><p>func TestAdd(t *testing.T) {
if add(2, 3) != 5 {
t.Error("Expected 2+3=5")
}
}</p><p>func TestSubtract(t *testing.T) {
if subtract(5, 3) != 2 {
t.Error("Expected 5-3=2")
}
}
运行命令:
go test -v
输出结果类似:
=== RUN TestAdd --- PASS: TestAdd (0.00s) === RUN TestSubtract --- PASS: TestSubtract (0.00s) PASS ok your-package-name 0.001s
虽然没有 -vv,但你可以结合其他参数获得更多信息:
在测试中使用 t.Log 或 t.Logf 输出中间值或状态,这些内容只有在开启 -v 时才会显示。
修改测试函数示例:
func TestAdd(t *testing.T) {
result := add(2, 3)
t.Logf("add(2,3) = %d", result)
if result != 5 {
t.Error("Expected 2+3=5")
}
}加上 -v 后会看到日志输出,有助于分析执行过程。
基本上就这些。Go 的测试系统设计简洁,-v 已经提供了足够的详细信息,配合合理的日志和外部工具就能满足大多数调试需求。不复杂但容易忽略细节。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号