作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我必须在几个测试用例中检查某些条件(例如初始状态)。我无法在函数中使用 CHECK
,如果可能,我想替换当前的宏。
#include "catch.hpp"
#define CHECK_INITIAL_STATE() \
CHECK(first_condition); \
CHECK(second_condition);
TEST_CASE("first_test") {
CHECK_INITIAL_STATE();
// do something
// restore state
CHECK_INITIAL_STATE();
}
最佳答案
Catch2 以一种非常优雅的方式内置了这个功能:
TEST_CASE("first_test") {
CHECK(first_condition);
CHECK(second_condition);
SECTION("do something 1") {
// this test is executed after the code outside of the section
}
SECTION("do something 2") {
// this test is executed after the code outside of the section
// but without executing the previous section
}
}
关于c++ - 如何在多个 Catch2 测试用例中检查相同的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52199773/
我是一名优秀的程序员,十分优秀!