kawabatas技術ブログ

試してみたことを書いていきます

はじめての Go のテスト

概要

go を触り始めたばかりで、go のテストのことが少しわかったので、メモ。

書き方

テストのファイルは *_test.go

main.go だったら main_test.go

testing ライブラリを import して、func TestXXX(t *testing.T) という関数を作成する

package main

func sum(a int, b int) int {
    return a + b
}
package main

import (
    "testing"
)

func TestSum(t *testing.T) {
    result := sum(1, 2)
    if result != 3 {
        t.Errorf("%d want %d", result, 3)
    }
}

プライベートメソッドでも、同一パッケージであれば、ファイルが分かれていても呼び出すことができるみたい。

実行

go test -v ./...

-v はテストの詳細を表示、./... でサブディレクトリ配下の全てのテストを実行する

その他

調べていて、テストは標準のパッケージのみで十分という記事をいくつかみかけた。

外部ライブラリはしばらく使わないでおこうと思う。