単体テストとは
単体テストとは、実装したコードの処理が正しいかどうかを担保するために必要なものです。
モダンなWeb開発企業ではほとんど単体テストをしっかり書いて、コードの品質を保っていますね。
テストのルール
GoLangでユニットテストを書くには、testing パッケージをインポートする必要があります。
また、ファイル名は _test で終わらなければなりません。
sample_test.go // こんな感じ
使用するコマンドは、go testです。これはテストファイルとして設定されたすべてのファイルをテストし、ターミナルに出力を返します。
func TestXXX(t *testing.T) {
// テスト内容
}
実際にテストを書いてみよう
以下のコードではデフォルトのmathパッケージを使用してMin関数をテストしています。もしこれが成功すれば、PASSEDという出力がされるでしょう。
package main
import "testing"
import "math"
func TestMathBasics(t *testing.T) {
v := math.Min(10, 0)
if v != 0 {
t.Error("Failed the test!")
}
}
実行結果
$ go test
PASS
ok gin_practice/src 0.291s