ホームページ  >  記事  >  バックエンド開発  >  golangテストツールの使い方を詳しく解説した記事

golangテストツールの使い方を詳しく解説した記事

PHPz
PHPzオリジナル
2023-03-30 13:34:541098ブラウズ

ソフトウェア開発プロセスの継続的な発展に伴い、自動テストは徐々にソフトウェア テストの主要な形式の 1 つになってきました。ただし、テスト ツールの選択と、それらを学習して使用するプロセスは、多くの場合、混乱し、困難になる可能性があります。この記事では、高品質のテスト ケースを作成し、実際のアプリケーションでコードが完全に実行されることを確認するのに役立つ、シンプルかつ強力なテスト フレームワークである golang テスト ツールの使用法について説明します。

golang テストとは何ですか?

golang test は、Go プログラミング言語に付属する公式のテスト フレームワークです。go test コマンド ライン ツールを使用すると、開発者はテスト ケースを簡単に作成して実行できるほか、テスト カバレッジ レポートを生成できます。コードリポジトリ。そのシンプルさと柔軟性により、多くの Go 開発者にとってテスト フレームワークとして選ばれています。

golang テストの使用法

golang テストは、単体テスト、パフォーマンス テスト、サンプル テストの 3 つのテスト タイプをサポートしています。

単体テスト

Go で単体テストを記述するのは非常に簡単です。以下に示すように、_test で終わる新しい Go ファイルを作成し、Test で始まり *testing.T パラメーターを受け入れる 1 つ以上の関数を作成します。 :

package mypackage_test

import (
    "testing"
)

func TestAdd(t *testing.T) {
    if Add(1, 2) != 3 {
        t.Errorf("Expected 3 but got %d", Add(1, 2))
    }
}

この例では、渡された 2 つの数値の合計を返す Add という関数をテストします。テストを実行すると、アサーションが失敗したため、--- FAIL: TestAdd (0.00s) のような出力が表示されます。テストが成功すると、PASS が出力されます。

パフォーマンス テスト

Go では、パフォーマンス テストも同様に簡単です。次のように、Benchmark という関数を使用してパフォーマンス テストを作成するだけです。この関数は、*testing.B パラメータを受け取ります。

func BenchmarkAdd(b *testing.B) {
    for i := 0; i < b.N; i++ {
        Add(1, 2)
    }
}

例 のパフォーマンスをテストしました。 2 つの数値を加算する Add 関数。テストでは、Add 関数 b.N を回呼び出し、テストの合計時間を測定します。 Golang テストは、各テストの平均時間と各反復の合計時間を含む結果テーブルを出力します。

サンプル テスト

サンプル テストの作成は、Golang テストのもう 1 つのモードです。このモードでは、コードがどのように機能するかを示すために、いくつかの簡単な使用例を作成します。 Golang テストは、テスト実行時に実際のテスト コードを生成し、サンプルを実行します。サンプル テストは、サンプル関数を含む examples_test.go というファイルを作成することで定義できます。

func ExampleAdd() {
    fmt.Println(Add(1, 2))
    // Output: 3
}

この例では、Add 関数の例を作成し、それを呼び出し、出力が正しいかどうかをテストしました。 go test を実行すると、サンプル テストの出力が表示されます。

テスト カバレッジ

golang テストでは、go test -cover コマンドを使用したコード カバレッジに関する情報の生成もサポートされています。カバレッジ テストは、作成したテストがコード内のすべての状況をカバーしているかどうかを判断するのに役立ちます。通常、カバレッジ レポートは次のようになります。

PASS
coverage: 80.8% of statements
ok      mypackage   0.062s

この例では、テスト カバレッジは 80.8% です。

結論

この記事では、Golang テストの使用法について説明しました。これは、コードが実際のアプリケーションで完璧に実行されることを保証する高品質のテスト ケースを作成するのに役立つ、シンプルかつ強力なテスト フレームワークです。単体テスト、パフォーマンス テスト、サンプル テストの使用法と、テスト カバレッジに関するレポートの生成方法について説明しました。これで、golang テストを使用して強力なテスト スイートを構築し、さまざまな状況下でコードが正しく動作することを確認できるようになりました。

以上がgolangテストツールの使い方を詳しく解説した記事の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。