ハロの外部記憶インターフェイス

そろそろ覚える努力が必要かも…

Go Test

Goで作成したパッケージのテスト

Goは標準のテストパッケージが存在し、以下の様なファイルはテストコードとして認識する。

ファイル名が「_test.go」で終わるもの
関数名が「Test」で始まるもの

テストソースには標準テストパッケージをimports

packagename_test.go

package pacakgename

import (
    "testing"
)

func TestMethodName(t *testing.T) {
     expect := "result"
    actual := MethodName()

    if expect != actual {
        t.Errorf("%s != %s", expect, actual)
    }
}

テストの実行

$ go test ./packagename
$ go test -v ./packagename

「-v」で個別のテスト結果を表示する。

mainパッケージのテスト

パッケージテスト同様に_test.goを作成する

app_test.go

package main

import (
    "testing"
)

func TestAppName(t *testing.T) {
     expect := "result"
    actual := AppName()

    if expect != actual {
        t.Errorf("%s != %s", expect, actual)
    }
}

mainパッケージのテスト実行

$ go test -v