【发布时间】:2015-11-19 09:12:03
【问题描述】:
我目前有一套测试,它们是测试夹具的一部分。 我也想用不同的测试夹具运行同一组测试。
如何在不实际复制粘贴测试和“手动”更改测试夹具名称的情况下执行此操作(如下所示)?
class Trivial_Test : public ::testing::Test
{
void SetUp()
{
ASSERT_TRUE(SUCCESS == init_logger());
initial_condition = 0;
}
void TearDown()
{
shutdown_logger();
}
protected:
int initial_condition;
};
class Trivial_Test_01 : public ::testing::Test
{
void SetUp()
{
ASSERT_TRUE(SUCCESS == init_logger());
initial_condition = 1;
}
void TearDown()
{
shutdown_logger();
}
protected:
int initial_condition;
};
TEST_F(Trivial_Test, valid_input_1)
{
EXPECT_TRUE(random_num()+initial_condition < 255);
}
TEST_F(Trivial_Test_01, valid_input_1)
{
EXPECT_TRUE(random_num()+initial_condition < 255);
}
有没有更简洁的方式将valid_input_1 与Trivial_Test 和Trivial_Test_01 关联起来?
附: - 上面显示的测试用例是一个简单的测试,名义上代表我的实际情况,但与我实际处理的测试用例或测试装置的复杂性相去甚远。
【问题讨论】:
标签: c++ unit-testing googletest