Go Blue Logo

Go 言語 testing: 単体テストの書き方

Go` 言語で単体テストってどうやって書くの?」と思ったことはありませんか? `Go` 言語では、標準パッケージで提供される `testing` を使用して、簡単に単体テストを書くことができます。この記事では、 `Go 言語での単体テストの書き方について解説します。

単体テストとは?

単体テストは、ソフトウェアの個々の機能やユニットが期待どおりに動作するかどうかを確認するテストです。これにより、コードの品質を維持し、不具合を早期に発見することができます。

testing パッケージの基本的な使い方

Go` 言語では、 `testing パッケージを使用して単体テストを書きます。以下は、基本的な単体テストの書き方です。

package main

import (
    "testing"
)

// テストする関数
func Add(a, b int) int {
    return a + b
}

// テスト用の関数
func TestAdd(t *testing.T) {
    // テストケース1: 正常な値
    result := Add(2, 3)
    if result != 5 {
        t.Errorf("Add(2, 3) = %d; want 5", result)
    }

    // テストケース2: 負の値
    result = Add(-1, -1)
    if result != -2 {
        t.Errorf("Add(-1, -1) = %d; want -2", result)
    }
}

上記のコードでは、 Add` 関数に対する単体テストを書いています。 `TestAdd` 関数では、異なるケースを想定して `Add 関数を呼び出し、期待する結果が返ってくるかどうかを確認しています。

テストの実行

単体テストは、以下のコマンドで実行できます。

go test

このコマンドを実行すると、 _test.go で終わるファイル内のテスト関数が自動的に実行され、結果が表示されます。

カバレッジの測定

テストカバレッジを測定するには、 -cover フラグを使用します。

go test -cover

このコマンドを実行すると、テストがどの程度コードをカバーしているかが表示されます。

最後に

以上で、 Go 言語での単体テストの書き方についての基本的な解説が完了しました。是非、自分のプロジェクトで実践してみてください!

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です