LinuxプラットフォームコードカバレッジテストツールGCOVのフロントエンドツールLCOVの概要

コンテンツ

1. Lcovとですか?

2. LinuxプラットフォームにLcovインストールするにはどうすればよいですか?

3.使用する方法Lcovを

(1)lcovを使用してカバレッジデータ収集し、ファイルに書き込みます

(2)使用してするGENHTML生成HTML-基づいて出力を

(3)例のグラフィック表示

4.コンパイルlcovの自身の例

5 その他のツール

(1)gcov-dump

(2)ggcov

 

 

1. Lcovとですか?

  • これは、GCOV用のグラフィカルフロントエンドツールです
  • これはLinuxテストプロジェクトによって維持されているオープンソースツールであり、元々Linuxカーネルカバレッジの測定をサポートするように設計されています。
  • Html出力に基づいて、完全なHTMLツリーを生成します
  • 出力には、概要、カバレッジパーセンテージ、グラフが含まれ、カバレッジデータをすばやく参照できます
  • 大規模プロジェクトのサポート。ディレクトリビュー、ファイルビュー、ソースコードビューの3つのレベルのビューを提供します。

lcovを使用してカバレッジデータを収集し、genhtmlを使用してHTMLページを作成します。カバレッジデータは、現在実行中のLinuxカーネルまたはユーザースペースアプリケーションから収集できます。これを行うには、次の準備手順を完了する必要があります。

 

Linuxカーネルカバレッジの場合:

  gcov-kernelインフラストラクチャのセットアップ手順に従います。

http://ltp.sourceforge.net/coverage/gcov.php

 

ユーザースペースアプリケーションカバレッジの場合:

  オプション「-fprofile-arcs」および「-ftest-coverage」を使用して、GCCでアプリケーションをコンパイルします。

 

2. LinuxプラットフォームにLcovインストールするにはどうすればよいですか?

#wget http://downloads.sourceforge.net/ltp/lcov-1.9.tar.gz

#tar -zxvf lcov-1.9.tar.gz

#cd lcov-1.9

#ls

bin contrib description.tests lcovrc man rpm

変更コピーの例MakefileREADME

#インストールする

コンパイルする必要はありません。直接インストールするだけで、lcov、gendesc、genhtml、geninfo、genpng/ usr / binディレクトリにインストールされます。

 

3.使用する方法Lcovを

 

LinuxプラットフォームのコードカバレッジテストツールGCOVの紹介の例を見てみましょう

 

(1)lcovを使用してカバレッジデータ収集し、ファイルに書き込みます 

#lcov --capture--directory --output-file test.info --test-name test

からカバレッジデータをキャプチャします。

見つかったgcovバージョン:4.1.2

スキャン。.gcdaファイルの場合..。

で1つのデータファイルが見つかりました。

test.gcdaを処理しています

.infoファイルの作成が完了しました

現在のディレクトリを表しカバレッジデータ、つまりファイル内の.gcda情報を収集し、test.infoファイルを書き込み、Testという名前を付けますその他のオプションについては、lcovマニュアルページを参照しください

 

test.infoファイル内容は以下のとおりです。

TN:テスト

SF:/home/zubo/gcc/2011-04-10.sample/test.c

FN:4、メイン

FNDA:1、メイン

FNF:1

FNH:1

丘:9,2,0,10

丘:9,2,1,1

丘:12,0,0,0

丘:12,0,1,1

BRF:4

BRH:3

DA:4.1

DA:7.1

DA:9.11

DA:10.10

DA:12.1

DA:13.0

DA:15.1

DA:16.1

LF:8

LH:7

end_of_record

(2)使用してするGENHTML生成HTML-基づいて出力を

#genhtml test.info --output-directory output --title "a simple test" --show-details --legend

データファイルtest.infoの読み取り

1つのエントリが見つかりました。

共通のファイル名プレフィックス「/ home / zubo」が見つかりました

.cssおよび.pngファイルの書き込み。

出力を生成しています。

ファイルgcc / 2011-04-10.sample /test.cを処理しています

ディレクトリビューページの作成。

全体的なカバレッジ率:

  行......:87.5%(8行中7行)

  関数..:100.0%(1/1関数)

  ブランチ...:75.0%(4ブランチのうち3ブランチ)

オプションの説明については、genhtmlマニュアルページを参照しくださいCDへの出力ディレクトリには、次のように関連するファイルの多くは、生成されていることがわかります。

#cd出力

#ls

amber.png gcov.css index-sort-b.html ruby​​.png

emerald.png glass.png index-sort-f.html snow.png

gcc index.html index-sort-l.html updown.png

(3)例のグラフィック表示

 

(3.1)トップレベルビュー




(3.2)ファイルまたは関数の表示


4.コンパイルlcovの自身の例

 

#cd /usr/src/lcov-1.9/example

#作る

 

結果をコンパイル、実行、および表示することは、ツールをすばやく学習するための最良の方法です。メイクファイルとコンパイル済みの出力には、概念と使用コマンドを学ぶことができます。HTML形式の出力をすることが可能で見る/usr/src/lcov-1.9/example/output/index.html読者は自分で実験することができます。

 

5.その他の関連ツール

 

(1)gcov-dump

 

おそらく、我々はまた、使用することができますgcovのダンプ出力にコマンドをgcovの関連データが、gccがコンパイルされないことでgcovのダンプをデフォルトので、それを使用するには、再コンパイルする必要があるかもしれませんgccの

 

(2)ggcov

 

Ggcovは、gcovテストカバレッジデータを表示するためのグラフィカルツールです。詳細については、http://ggcov.sourceforge.netを参照してください

 

 

参照

lcovマニュアルページ

genhtmlマニュアルページ

geninfoマニュアルページ

lcovのreadmeファイル紙/ USR / SRC / lcov-1.9 / README

ここでメイクファイルドキュメントのlcov/ usr / src / lcov-1.9 / Makefileです。

 

おすすめ

転載: blog.csdn.net/panpanloveruth/article/details/7622704