Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

testingパッケージの"Example~"記法だと実行例をドキュメントに記載できる

testingパッケージの"Example~"記法だと実行例をドキュメントに記載できます。
ユーザが頻繁に利用するタイプの関数なら、付けておくと親切で良いかと思います。

実際のところ

実行対象の内容は前回のと同じです。

func ExampleSomething() {
	fmt.Println(Something(1, 4))
	// Output: 5
}

実行すると、こんな感じ

$ go test hoge
ok  	hoge	0.007s

駄目なバージョンとして
先程の"Output: 5"を、
正しい"Output: 6"にしてみると……

$ go test hoge
--- FAIL: ExampleSomething (0.00s)
got:
5
want:
6
FAIL
FAIL	hoge	0.007s

これだと何の旨みがあるのか全く分かりませんね。
godocと連携すると、公式で見られるような"ドキュメント中に記載できる実行例"として扱う事ができます。
f:id:shuzo_kino:20170419224148p:plain
テストもドキュメント化も兼ねていて実際便利!