[Go] go test -run で特定のテストだけ実行する

作成日: 2026年09月19日

go test で特定のテストだけを実行するには、-run オプションにテスト名と一致する正規表現を指定します。

例えば、次の2つのテストがあるとします。

package calc

import "testing"

func TestAdd(t *testing.T) {
    t.Log("TestAdd")
}

func TestSubtract(t *testing.T) {
    t.Log("TestSubtract")
}

TestAdd だけを実行する場合は、次のようにします。-v は実行されたテスト名を確認するために指定しています。

go test -v -run '^TestAdd$'

実行結果では TestAdd だけが実行され、TestSubtract は実行されません。

=== RUN   TestAdd
    calc_test.go:6: TestAdd
--- PASS: TestAdd (0.00s)
PASS

-run の値は正規表現として扱われるため、^TestAdd$ のように指定するとテスト名を完全一致で絞り込めます。

参考

Go