Table of Contents

  • Setup on Ubuntu
  • Build and Execute
  • Build and Execute, then Coverage


Setup on Ubuntu


CppUnitのセットアップ ~GUIからの方法

  1. CppUnitのインストール
    1. [Applications]->[Ubuntu Software Center]を選択
    2. Serch "CppUnit"
    3. 一覧から"Unit Testing LIbrary for C"で[Install]を選択
  2. Build環境設定
    1. Header Fileをgccのincludeパスが通っているフォルダへコピー
      $ sudo cp -r headers /usr/local/include/CUnit

Note: CUnitのライブラリ: /usr/lib/libcunit.so.1


Build and Execute


ソースコードのコンパイル

  1. コンパイル
    $ gcc <source_code> <test_code> /usr/lib/libcunit.so.1
  2. CUnit実行
    $ ./a.out

Note: CUnitの実行例
     CUnit - A Unit testing framework for C - Version 2.1-0
     http://cunit.sourceforge.net/


Suite: Suite_1
  Test: suite1-test1 ... passed
  Test: suite1-test2 ... passed
Suite: Suite_2
  Test: suite2-test1 ... passed

--Run Summary: Type      Total     Ran  Passed  Failed
               suites        2       2     n/a       0
               tests         3       3       3       0
               asserts       8       8       8       0


Build and Execute, then Coverage


ソースコードのコンパイル ~オプションを付けることでgcovによるcoverageがとれる

  1. コンパイル
    $ gcc -ftest-coverage -fprofile-arcs <source_code> <test_code> /usr/lib/libcunit.so.1
  2. CUnit実行
    $ ./a.out
  3. Coverageを取得
    $ gcov <source_code>

Note: add.cファイルが<source_code>の場合の実行例
$ gcov add.c
File 'add.c'
Lines executed:100.00% of 2
add.c:creating 'add.c.gcov'


gcovの結果をhtmlで集計する場合

Note: カレントフォルダ配下のファイルのcoverageをとる場合の実行例
$ lcov -c -d . -o lcov-out-tmp.txt
$ lcov -r lcov-out-tmp.txt *.h -o lcov-out.txt
$ genhtml -o html lcov-out.txt






最終更新:2012年04月11日 00:18