Catch2 は、次の方法で C++ 単体テストで使用できます: インストール: CMake を使用するか、Catch2 フォルダーをプロジェクトに直接追加します。テストの作成: TEST_CASE マクロを使用してテスト ケースを定義し、アサーションの REQUIRE マクロを使用します。テストのデバッグ: デバッガーに接続し、ブレークポイントを設定し、Catch2 によって提供されるアサーション情報を使用してデバッグします。実践例: Calculator クラスを作成し、その add メソッドをテストする単体テスト ケースを作成します。
C++ 単体テストで Catch2 を使用するにはどうすればよいですか?
Catch2 は、アサーションベースで非常に柔軟な C++ 単体テスト フレームワークです。他の C++ 単体テスト フレームワークと比較して、より使いやすく簡潔な構文を提供します。この記事では、Catch2 を使用して C++ 単体テストをデバッグする方法について説明します。
Catch2 をインストールする
CMake を通じて Catch2 をインストールすることも、Catch2 フォルダーをプロジェクトに直接追加することもできます:
# 使用 CMake find_package(Catch2 REQUIRED)
# 复制 Catch2 文件夹 将 Catch2 文件夹复制到项目中,并包含 `Catch2/catch.hpp` 头文件。
単体テストの作成
Catch2 を使用した単体テストの作成は非常に簡単です。次に例を示します:
#include <catch2/catch.hpp> TEST_CASE("检查数字是否为偶数") { REQUIRE(2 % 2 == 0); }
こちらTEST_CASE
マクロはテスト ケースを定義し、REQUIRE
マクロは関数の戻り結果が true であることをアサートするために使用されます。 TEST_CASE
宏定义了一个测试用例,REQUIRE
宏用于断言函数的返回结果为 true。
调试单元测试
Catch2 允许你使用断点和调试器来调试单元测试。使用你的调试器连接到测试程序,然后从断点调试测试用例。Catch2 提供了丰富的断言信息,可以在调试器中轻松查看。
实战案例
需求:编写一个名为 Calculator
的类,它包含一个计算两个数字和的 add
方法。
代码:
// Calculator.hpp class Calculator { public: int add(int a, int b) { return a + b; } }; // Calculator.cpp #include "Calculator.hpp" // 单元测试 #include <catch2/catch.hpp> TEST_CASE("Calculator 的加法功能") { Calculator calculator; REQUIRE(calculator.add(2, 3) == 5); }
运行单元测试
使用 Catch2 的命令行工具(catch2
) 运行单元测试:
catch2 Calculator.cpp
调试单元测试
Calculator.add
方法中设置断点。calculator.add(2, 3)
Catch2 を使用すると、ブレークポイントとデバッガーを使用して単体テストをデバッグできます。デバッガーを使用してテスト プログラムに接続し、ブレークポイントからテスト ケースをデバッグします。 Catch2 は、デバッガーで簡単に表示できる豊富なアサーション情報を提供します。
🎜🎜実際的なケース🎜🎜🎜🎜要件: 🎜2 つの数値の合計を計算するadd
メソッドを含む Calculator
という名前のクラスを作成します。 🎜🎜🎜コード: 🎜🎜rrreee🎜🎜単体テストを実行する🎜🎜🎜Catch2のコマンドラインツール(catch2
)を使用する 単体テストを実行する: 🎜rrreee🎜🎜単体テストをデバッグする🎜🎜Calculator.add
メソッドのブレークポイント。 🎜🎜ターミナルで単体テストを実行します。 🎜🎜 calculator.add(2, 3)
のブレークポイントに到達すると、デバッガーは実行を一時停止します。 🎜🎜デバッガーから、変数値を検査し、コードをステップ実行し、問題を診断できます。 🎜🎜🎜Catch2 のデバッグ機能を使用すると、単体テストのエラーを簡単に特定して修正できます。 🎜以上がCatch2 を使用して C++ 単体テストをデバッグするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。