C/C++ツール:cpptestの最も簡単な使用説明

2352 ワード

1.インストール
  • ダウンロードcpptest- .tar.gz
  • 解凍tar -zxvf cpptest- .tar.gz
  • はディレクトリcpptest-
  • に入る.
  • 配置./configure
  • コンパイルmake
  • 取付sudo make install
  • 共有ライブラリディレクトリ/usr/local/libを共有ライブラリプロファイル
    sudo echo /usr/local/lib >> /etc/ld.so.conf  
    sudo ldconfig
    
  • に追加する.
    2.使用
  • 試験ヘッダファイル#include "cpptest.h"
  • を導入する.
  • 継承Test::Suite作成キットクラス
  • スイートクラスにテストメンバー関数
  • を追加
  • マクロ定義TEST_ADDを使用してテストメンバー関数
  • を登録する.
  • コンパイル実行
  • 3.例
  • test.cpp
  • #include "cpptest.h"
    
    class MyTest:public Test::Suite{
    public:
          MyTest(){
                TEST_ADD(MyTest::test_case1);
                TEST_ADD(MyTest::test_case2);
          }
    private:
          void test_case1(){
                TEST_FAIL ("This always fails!
    "); } void test_case2(){ TEST_FAIL ("This always fails!
    "); } }; int main ( ) { MyTest test; Test::HtmlOutput output; test.run(output,true); output.generate(std::cout, true, "MyTest"); return 0; }
  • コンパイル
  • g++ -o test test.cpp -lcpptest
    

    構成時に--prefix /usr/local/cpptestを指定すると、コンパイルコマンドはg++ -o test test.cpp -I/usr/local/cpptest/include -L/usr/local/cpptest/lib -lcpptestになります.
  • 実行
  • ./test > test.html
    

    4.説明
    4.1試験出力フォーマット
    書式設定
    意味Test::TextOutput
    表示モードは、詳細または簡潔であってもよい.Test::CompilerOutput
    コンパイラはログを構築するのと同じように出力を生成します.Test::HtmlOutput
    HTML出力を生成します.
    4.2一般的なテストマクロ
    マクロのテスト
    意味TEST_FAIL (message)
    無条件に失敗が発生し、実行を停止します.TEST_ASSERT (expression)
    式の結果がfalseの場合、エラーが印刷されます.TEST_ASSERT_MSG (expression, message) TEST_ASSERT (expression)と似ていますが、エラー印刷情報だけですTEST_THROWS (expression, exception)
    例外がスナップされていない場合は、アサーションがトリガーされます.TEST_THROWS_MSG (expression, exception, message) TEST_THROWS (expression, exception)と似ていますが、エラー印刷情報だけです
    Exceptionは例外タイプであり、例外オブジェクトではありません.
    5.参考
  • オープンソースC/C++ユニットテストツール、第3部:CppTest
  • について