Google Test Sample07:通过TestWithParam进行接口测试
一、环境信息
- Visual Studio 2019
- Windows 10
- 前导知识:Google Test自带示例六的学习总结
二、Google Test Sample07
1. 示例概述
1.1 示例7讲解了如何通过类testing::TestWithParm测试接口。待测试的接口还是PrimeTable.h(和示例6一样)
class PrimeTable
{
public:
virtual bool IsPrime(int n) const = 0;
virtual int GetNextPrime(int p) const = 0;
virtual ~PrimeTable() {
}
};
class OnTheFlyPrimeTable : public PrimeTable{
//接口的具体实现};
class PreCalculatedPrimeTable : public PrimeTable{
//接口的具体实现};
2. TestWithParm介绍
2.1 类testing::TestWithParm的基础使用如下例所示,共分为三步:
(1) 定义test fixture:test fixture 继承自 类testing::TestWithParam,继承时需要注明参数类型,示例中是整形
(2) 使用宏TEST_P编写具体的测试用例:TEST_P(TestFixtureName,TestCaseName)
(3) 使用INSTANTIATE_TEST_CASE_P(TestSuiteName,TestFixtureName,Values)明确待使用的参数
class Instance2 : public testing::TestWithParam<int> {
};
TEST_P(Instance2, basicTest)
{
int n;
n = GetParam();
EXPECT_TRUE(n);
}
INSTANTIATE_TEST_CASE_P(ParamBasicTest, Instance2, testing::Values(1, -1, -2, 2));

2.2 对于GetParam( )函数,它可以定义在test fixture中

本文介绍了如何使用GoogleTest的TestWithParam进行接口测试,包括环境信息、TestWithParam的使用步骤和示例。通过创建测试用例,使用Values()绑定参数,并通过INSTANTIATE_TEST_CASE_P()实例化测试。测试用例覆盖了接口的多种实现,如OnTheFlyPrimeTable和PreCalculatedPrimeTable,确保接口的正确性。
最低0.47元/天 解锁文章
3338

被折叠的 条评论
为什么被折叠?



