简单使用

进入 package 所在目录,执行以下命令,该命令只会输出最终的测试结果:

1
go test

输出:

1
2
PASS
ok      addrtool        0.519s

使用 -v 参数,可以查看更多测试信息:

1
go test -v

输出:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
=== RUN   TestPubkeyToAddress
--- PASS: TestPubkeyToAddress (0.00s)
=== RUN   TestDcrPubkeyToAddress
--- PASS: TestDcrPubkeyToAddress (0.00s)
=== RUN   TestGenMnemonicBip39
--- PASS: TestGenMnemonicBip39 (0.00s)
=== RUN   TestMnemonicToSeedBip39
--- PASS: TestMnemonicToSeedBip39 (0.01s)
=== RUN   TestSeedToPubkey
--- PASS: TestSeedToPubkey (0.02s)
=== RUN   TestPubkeyFromExtendKey
--- PASS: TestPubkeyFromExtendKey (0.00s)
PASS
ok      addrtool        0.132s

测试覆盖率:

测试覆盖率简单的说就是测试代码运行时执行到的代码行数,占用总代码行数的百分比。

使用以下命令可以简单的显示测试代码的覆盖率:

1
go test -cover

输出:

1
2
3
PASS
coverage: 35.2% of statements
ok      addrtool        0.529s

如果要具体查看哪些代码未覆盖,哪些代码覆盖了,则需要以下步骤,先生成轮廓图再生成 html 文件:

1
2
3
go test -coverprofile=./testdata/covprofile 

go tool cover -html=./testdata/covprofile -o ./testdata/coverage.html

然后在浏览器中打开生成的 html 文件,绿色的表示已经覆盖的代码,红色的表示还没有覆盖的代码,一目了然:

test.png