您可以使用 setUp 和 tearDown 函数执行测试用例设置和清理操作。在每个测试用例之前和之后分别调用 setUp 和 tearDown。

要为整个测试套件(在每个测试套件之前和之后调用)执行设置或清除操作,请定义自定义 setup/cleanup 函数,并使用以下宏进行注册:

 CPPTEST_TEST_SUITE_SETUP(setup_function_name)  
 CPPTEST_TEST_SUITE_TEARDOWN(cleanup_function_name)

应在测试套件声明部分中添加注册(在第一次测试用例注册之前)。示例:

class MyTestSuite : public CppTest_TestSuite 
{
  public:
	CPPTEST_TEST_SUITE(MyTestSuite);
	CPPTEST_TEST_SUITE_SETUP(myTestSuiteSetUp);
	CPPTEST_TEST_SUITE_TEARDOWN(myTestSuiteTearDown); 
	CPPTEST_TEST(test1);
	CPPTEST_TEST(test2);
	CPPTEST_TEST_SUITE_END();
 
	void setUp(); 
	void tearDown();
 
	static void myTestSuiteSetUp(); 
	static void myTestSuiteTearDown();
 
	void test1(); 
	void test2();
};
 
void MyTestSuite::myTestSuiteSetUp()
{
  // Test suite setup
}
 
void MyTestSuite::myTestSuiteTearDown()
{
  // Test suite cleanup
}

注意

  • 测试套件的 setup/cleanup 函数不带任何参数。
  • 我们建议对 C++ 测试套件 setup/cleanup 函数使用静态存储类说明符。
  • 我们不建议将构造函数/析构函数添加到测试套件中并向其附加 setup/teardown 代码,因为可以多次实例化该测试套件以每次运行一部分测试用例—甚至每个测试套件实例可以运行一个。假设在执行任何测试套件测试之前仅调用构造函数一次,或者仅在所有测试完成后才相应调用析构函数是不正确的。
  • No labels