-1

私は gtest に慣れようとしているので、次のような単一の関数をテストしたいと思います:

int fun(int x=6){
return x;
}

次のようなコードを書いています。

#include "gtest/gtest.h"

#include "iostream"

int fun(int x=6){
return x;
}

TEST(FunTest, defaultTest) {
   EXPECT_EQ(6, fun());
}

int main(int argc, char **argv) {
   ::testing::InitGoogleTest(&argc, argv);
   return RUN_ALL_TESTS();
}

しかし、約100万のエラーが発生します。これについて私を助けてもらえますか?

4

1 に答える 1

1

少なくとも、

#include "iostream"

する必要があります

#include <iostream>

Google テストを実行するときは、gtest ライブラリが正しくリンクされていることを確認する必要があります。Google テスト ドキュメントからの引用

新しいテスト プロジェクトのセットアップ

Google Test を使用してテスト プログラムを作成するには、Google Test をライブラリにコンパイルし、テストをリンクする必要があります。Visual Studio の msvc/、Mac Xcode の xcode/、GNU make の make/、Borland C++ Builder の codegear/、および CMake の autotools スクリプト (非推奨) と CMakeLists.txt (推奨) Google Test のルート ディレクトリにあります。ビルド システムがこのリストにない場合は、make/Makefile を見て、Google Test のコンパイル方法を確認できます (基本的には、ヘッダー検索で GTEST_ROOT および GTEST_ROOT/include を指定して src/gtest-all.cc をコンパイルします)。 GTEST_ROOT は Google Test のルート ディレクトリです)。

Google Test ライブラリをコンパイルできるようになったら、テスト プログラムのプロジェクトまたはビルド ターゲットを作成する必要があります。テストをコンパイルするときにコンパイラが "gtest/gtest.h" を見つけられるように、ヘッダー検索パスに GTEST_ROOT/include があることを確認してください。テスト プロジェクトをセットアップして、Google Test ライブラリにリンクします (たとえば、Visual Studio では、gtest.vcproj に依存関係を追加することでこれを行います)。

于 2013-04-24T19:43:38.727 に答える