[解決済み】コードカバレッジとその測定方法について教えてください。
質問
コード・カバレッジとは何ですか、また、どのように測定するのですか?
コードカバレッジの自動化テストについて、こんな質問を受けました。自動化されたツール以外では、それは科学というより芸術であるようです。コードカバレッジをどのように使うか、実際の例はありますか?
どのように解決するのですか?
コードカバレッジとは、自動テストが実行されている間に、あなたのコードの何行/ブロック/円弧が実行されたかを測定するものです。
コードカバレッジは、専用のツールを使ってバイナリにインスツルメンテーションを行い、トレースコールを追加し、インスツルメンテーションされた製品に対してフルセットの自動テストを実行することで収集されます。優れたツールは、実行されたコードの割合だけでなく、データを掘り下げて、特定のテスト中に実行されたコード行を正確に確認することができます。
私たちのチームでは マゼラン - は、社内で開発したコードカバレッジツールのセットです。.NETショップであれば、Visual Studioにコードカバレッジを収集するためのツールが統合されています。また、以下のようなカスタム・ツールも用意されています。 この記事 を記述しています。
C++ショップであれば、インテルはいくつかの ツール 私は使ったことがないのですが、WindowsとLinuxで動作するものです。また、GCC用のgcovツールがあると聞いたことがありますが、私は何も知らないのでリンクは張れません。
コードカバレッジは、各マイルストーンの終了基準の1つです。ユニットテスト(開発チームによる)、シナリオテスト(テストチームによる)、そして複合カバレッジです。
ところで、コードカバレッジは、どれだけテストをしているかを示す良い指標ですが、必ずしも製品のテストがうまくいっているかを示す良い指標ではありません。品質を確保するためには、コードカバレッジと一緒に使うべき他の指標もあります。
関連
-
[解決済み] QAサーバーは何の略ですか?
-
[解決済み] カスタム属性を使用しているHTML要素からテキストを取得するには?
-
[解決済み] Amazon EC2インスタンスでVirtualBoxを実行できますか?
-
[解決済み] リンクテスト
-
[解決済み] 再試験の強制、またはテストキャッシュの無効化
-
[解決済み] NP、NP-Complete、NP-Hardの違いは何ですか?
-
[解決済み] 静的型付け言語と動的型付け言語の違いは何ですか?
-
[解決済み】Gradle:テスト結果をコンソールにリアルタイムで表示する方法とは?
-
[解決済み] 受入テストと機能テストの違いは?
-
[解決済み] PylonsでNoseを使って単体テストを実行する方法
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】IntelliJでプロジェクト全体に「コマンドラインを短くする」方法を設定する方法
-
[解決済み] IntelliJでプロジェクト全体に「コマンドラインを短くする」メソッドを設定する方法
-
[解決済み] QAサーバーは何の略ですか?
-
[解決済み] デュレーションテストとは何ですか?
-
[解決済み] レッドボックステスト、イエローボックステスト、グリーンボックステストとは何ですか?
-
[解決済み] 再試験の強制、またはテストキャッシュの無効化
-
[解決済み】コードカバレッジとその測定方法について教えてください。
-
[解決済み】Gradle:テスト結果をコンソールにリアルタイムで表示する方法とは?
-
[解決済み】プロジェクト内のすべてのテストを「go test」する方法は?
-
[解決済み] Macにjmeterをインストールするにはどうしたらいいですか?