C++ 如何运行UnitTest++;在Windows上使用命令行

C++ 如何运行UnitTest++;在Windows上使用命令行,c++,unit-testing,command-line,unittest++,C++,Unit Testing,Command Line,Unittest++,我是UnitTest++的新手,在windows上使用命令行时遇到了一些问题(我需要它只使用命令行) 我已经构建了解决方案,并且有了库(UnitTest++.vsnet2005),但是当我尝试构建它时,它会说“UnitTest++.h:没有这样的文件或目录” 这是我正在使用的命令: g++-o TestRowMajor TestRowMajor.cpp-L“C:\Users\myUser\Documents\Proyects\Tools Tests\UnitTest++\Tests\unit“-

我是UnitTest++的新手,在windows上使用命令行时遇到了一些问题(我需要它只使用命令行)

我已经构建了解决方案,并且有了库(UnitTest++.vsnet2005),但是当我尝试构建它时,它会说“UnitTest++.h:没有这样的文件或目录”

这是我正在使用的命令: g++-o TestRowMajor TestRowMajor.cpp-L“C:\Users\myUser\Documents\Proyects\Tools Tests\UnitTest++\Tests\unit“-lUnitTest++

这是我试图测试的简单代码,是他们的

//test.cpp
#包括
测试(惊人地失败)
{
检查(假);
}
int main()
{
返回UnitTest::RunAllTests();
}
非常感谢您的帮助,非常感谢您的帮助。

编译器找不到UnitTest++.h。因此,您需要做的第一件事是确保您可以自己找到该文件


命令行具有
-I
选项,将UnitTest++添加到include路径。根据命令行,该目录与源文件TestRowMajor.cpp位于同一文件夹中。这是真的吗?在我看来,更可能是您在其他地方安装了UnitTest++,因此您需要在
-I
选项中指定绝对路径,而不是相对路径。

感谢您的回答,我不知道如何安装UnitTest++,不确定是否可以安装,我的理解是,必须生成库,然后将其包含在.cpp文件中,如果我错了,请纠正我。为了方便起见,我将.cpp文件放在与我使用visual studio生成的库tht相同的目录中。这比其他任何东西都要无知,但我已经读过了,找不到方法。对于大多数库来说,安装包括在某个地方解压存档,可能还需要编译一些东西。您已经完成了这两个步骤,因此已经安装了它。问题是在哪里。查找UnitTest++.h。如果您找不到它,那么您也不能期望编译器找到它。如果我将.cpp文件放在UnitTest++所在的同一目录中,它不会给出前面的错误,现在我得到以下结果:“在UnitTest++.h:6、TestRowMajor.cpp:4:Config.h:17中包含的文件中:ExecuteTest.h:5、TestMacros.h:5、UnitTest++.h:12、TestRowMajor.cpp:4:MemoryOutStream.h:8:ssStream中包含的文件中的表达式中的标记无效:没有此类文件或目录。”“我不知道我是否应该做一些其他或不同的事情,因为我想我不应该触摸或更改现有代码。首先,停止移动源文件。这听起来像是你在黑暗中摸索,尝试一些事情直到某件事情成功,而不管你改变了什么或者为什么成功,这不是学习的意义。我要求您查找文件UnitTest++.h。找到该文件后,将该文件所在的目录放入
-I
选项中。接下来,如果编译器找不到名为sstream的头文件,那么整个编译环境都会被过滤掉。这是一个基本的系统头,g++应该很容易找到它。不过,解决方案的第一步与之前相同:在系统上查找文件,以便知道它在哪里。下一步是让编译器识别相同的位置。但只要一步一步地做。
  // test.cpp
 #include <UnitTest++.h>

  TEST(FailSpectacularly)
  {
    CHECK(false);
  }

  int main()
  {
    return UnitTest::RunAllTests();
  }