1
5
您可能在main()中调用的TestRunner::run()方法实际上有可选参数:run(std::string testName=“”,bool doWait=false,bool doprintreult=true,bool doPrintProgress=true)。testName必须是测试的特定名称。如果需要,您可以按名称请求特定的测试。还可以对特定测试调用runTest(Test*),或者调用runTestByName(testName)。 但听起来你想变得更成熟。假设您使用CPPUNIT\u TEST\u SUITE\u REGISTRATION()宏注册了所有测试,静态TestFactoryRegistry::makeTest()方法将返回所有已注册测试的TestSuite。 TestSuite对象通过getTests()方法生成一个向量。您可以遍历它们,将它们的名称与regexp(或按索引号或您想要的方式)匹配,而不是像大多数人那样在整个套件上调用TestRunner::addTest(registry.makeTest()),只需添加您请求的特定测试。 您必须编写一些东西来迭代测试并进行匹配,但除此之外,它应该非常简单。可能有十几行代码,加上解析命令行参数。使用regex让你自己更简单。 |
2
1
如果您正在使用 GUI test runner 对于cppunit,您只需检查要运行的测试。 如果您不能使用GUI测试运行程序,请检查 this |
3
0
另一种方法:
|
user869525 · 利用现有项目进行CppUnit测试 12 年前 |