Golang 関数のテスト カバレッジを向上するにはどうすればよいですか?カバレッジの測定: go test -cover コマンドを使用します。テスト ケース例外の追加: 未実行のコード パスに対するテスト ケース例外を追加します。カバレッジ プロファイルの使用: go test -coverprofile=cover.out を使用してカバレッジ プロファイルを作成します。カバー ツールを使用する: 詳細なカバレッジ レポートを表示するには、go ツール cover -html=cover.out を使用します。
Golang 関数のテスト カバレッジを改善する方法
はじめに
テストカバレッジ率は、テスト中にアプリケーションのどの部分が実行されたかを測定します。カバレッジが高いということは、アプリケーション内のコード パスの大部分がテスト中に実行されたことを示しており、そのためソフトウェアの信頼性が高まります。この記事では、Golang 関数のテスト カバレッジを改善する方法について説明します。
カバレッジの測定
カバレッジを測定するには、go test -cover
コマンドを使用できます。このコマンドは、テストの実行後にカバレッジ レポートを出力します。
go test -cover
実際的なケース
次の Golang 関数について考えてみましょう:
func Sum(a, b int) int { return a + b }
最初のテスト カバレッジ レポートは次のとおりです:
coverage: 50.0% of statements
カバレッジは、テスト内のコードの 50% のみが実行されることを示します。カバレッジを向上させるには、実行されないコード パスを実行するためのテスト ケース例外を追加する必要があります。
テスト ケース例外要因の追加
Sum
関数の場合、次のテスト ケース例外要因を追加して、未実行のコード パスをカバーできます。
func TestSumNegative(t *testing.T) { result := Sum(-1, -2) if result != -3 { t.Errorf("Expected -3, got %d", result) } }
このテストでは、例外を使用して、関数が負の入力を処理するかどうかをテストします。このテスト ケース例外を追加すると、カバレッジ レポートは次のようになります。
coverage: 100.0% of statements
カバレッジ プロファイルの使用
カバレッジ関連の変更を追跡しやすくするには、次のコマンドを使用します。カバレッジプロファイル。カバレッジ プロファイルには、異なるテスト実行間の比較に使用できるカバレッジ データが含まれています。カバレッジ プロファイルを作成するには、go test -coverprofile=cover.out
コマンドを使用します。
go test -coverprofile=cover.out
cover
ツールの使用
cover
ツールは、コード カバレッジ情報を参照できる対話型ツールです。 cover
ツールを使用するには、次のコマンドを実行します。
go tool cover -html=cover.out
これにより、デフォルトのブラウザーで HTML レポートが開き、各関数とメソッドの詳細なカバレッジ データが表示されます。
概要
テスト ケースの例外を追加し、カバレッジ プロファイルを使用することで、Golang 関数のテスト カバレッジを改善できます。カバレッジが高いと、ソフトウェアの信頼性が高まり、コード内のテストされていない領域を特定するのに役立ちます。
以上がgolang 関数のテストとカバレッジを改善するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。