QtプロジェクトでGoogleTestを使用する[ターン]
- 参照元のテキスト:「QtプロジェクトでのGoogleテストユニットテストモジュールの統合と使用」 https://blog.csdn.net/qing666888/article/details/103062533
- googletest
ダウンロードリンク:https://github.com/google/googletest
- QtCreatorを介してgoogletestpriファイルを自動的に生成します
- プロジェクトを構成し、googletestディレクトリを選択します。
- プロジェクトが生成された後、のPRIファイルgtest_dependency.pr私はプロジェクトディレクトリに生成されます。
- このファイルをgoogletest-masterディレクトリにコピーします。このファイルは自動的に生成されたgoogletestの依存ファイルであり、他のプロジェクトはこのファイルを統合することでgoogletestを使用できます。ただし、使用する前に少し変更する必要があります。
- 次のディレクトリにコピーします。
- 同時に、ファイルを開いて次の変更を加える必要があります。
- その他のプロジェクトエンジニアリングリファレンス:他のプロジェクトの.proファイルにgtest_dependency.priファイルを導入するだけで済みます。インクルードパスに注意し、独自のパスに従って変更してください。
include(./googletest-master/gtest_dependency.pri)
- 次に、ヘッダーファイルをmain.cppにインクルードして、単体テストにgoogletestを使用します。
#include "mainwindow.h" #include <QApplication> #include <gtest/gtest.h> #include <gmock/gmock-matchers.h> using namespace testing; int Factorial(int n) { int result = 1; for (int i = 1; i <= n; i++) { result *= i; } return result; } TEST(Factorial, Empty) { EXPECT_EQ(1, Factorial(1)); } int main(int argc, char *argv[]) { QHxApplication a(argc, argv); ::testing::InitGoogleTest(&argc, argv); //googleTest框架 MainWindow w; w.show(); RUN_ALL_TESTS();//googleTest框架 return a.exec(); }
- QtCreatorの下のテスト結果インターフェースを介して単体テスト結果を実行および表示できます。