C 関数ライブラリの単体テストに Google Test を使用すると、その信頼性を確保できます。 具体的な手順は次のとおりです。 Google Test をインストールして、関数ライブラリの単体テストを作成します。「.test.cpp」ファイルを作成し、インクルードします。 ::testing::Test のテスト ケース クラスから継承された Google Test ヘッダー定義は、TEST で始まるテスト メソッドを作成します。 単体テストを実行します。 gtest 実行可能ファイルを使用し、テスト ケース ファイルを渡します。 他のアサーション マクロを使用します。 ASSERT_EQ (abort)テスト)、ASSERT_TRUE/ASSERT_FALSE (条件をチェック)、ASSERT_THROW (スローされた例外をチェック)
#C 関数ライブラリで単体テストを実行する方法
はじめに単体テストは、関数ライブラリの信頼性を確保するために非常に重要です。 C で一般的に使用される単体テスト フレームワークの 1 つは Google Test です。これは、テスト プロセスを簡素化する一連のマクロと関数を提供します。この記事では、C ライブラリでの単体テストに Google Test を使用する方法を説明します。
Google Test のインストール次のコマンドを使用して、ソースから Google Test をインストールできます:
git clone https://github.com/google/googletest cd googletest mkdir build cd build cmake .. -Dgtest_build_samples=ON make
単体テストのセットアップ関数ライブラリの単体テストを作成するには、次の手順に従ってください。
Google Test ヘッダーが含まれます。
を継承するテスト ケース クラスを定義します。
で始まるテスト メソッドを作成します。
実践的なケース: 単純な関数のテスト指定された非負の整数の階乗を計算する
factorial という名前の関数を考えてみましょう。この関数をテストする単体テストを作成しましょう:
#include "factorial.h" #include "gtest/gtest.h" TEST(FactorialTest, BasicTest) { EXPECT_EQ(1, factorial(0)); EXPECT_EQ(1, factorial(1)); EXPECT_EQ(2, factorial(2)); EXPECT_EQ(6, factorial(3)); EXPECT_EQ(24, factorial(4)); }このテスト ケースでは:
は
という名前の関数を定義します。 BasicTest テストメソッド。
マクロは、期待される結果と実際の結果を比較するために使用されます。
単体テストの実行単体テストを実行するには、
gtest 実行可能ファイルを使用します。テスト ケース ファイルをパラメータとして渡します:
./gtest tests.test.cpp出力には、成功したテスト ケースと失敗したテスト ケースが表示されます。
その他のアサーション マクロGoogle Test では、
: や
EXPECT_EQ などの他のアサーション マクロを提供しています。 同様ですが、失敗した場合はテストを中止します。
および
ASSERT_FALSE: 条件がそれぞれ true または false であるかどうかを確認します。
: 呼び出し元の関数が指定された例外をスローするかどうかを確認します。
C ライブラリの単体テストは、Google Test を使用すると非常に簡単です。この記事で説明されている手順に従うことで、ライブラリが期待どおりに動作することを保証する、堅牢で信頼性の高い単体テストを作成できます。
以上がC++ 関数ライブラリの単体テストを行うにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。