这些宏可用于测试用例和桩函数资源,以验证测试用例的执行。

定义
CPPTEST_FAIL(message)使用自定义报文无条件失败。
CPPTEST_ASSERT(condition)断言评估为 true 的条件。
CPPTEST_ASSERT_BITS(mask, expected, actual)等效于 CPPTEST_ASSERT_BITS_MESSAGE,但是使用常规的声明消息。
CPPTEST_ASSERT_BITS_MESSAGE(message, mask, expected, actual)断言期望值和实际值的掩码位(使用掩码)相等,并在失败时显示自定义消息(掩码,期望值和实际值是整数类型)。仅将掩码中的高位与预期值和实际值进行比较。
CPPTEST_ASSERT_BITS_HIGH(mask, actual)等效于 CPPTEST_ASSERT_BITS_HIGH 但是使用常规的断言报文。
CPPTEST_ASSERT_BITS_HIGH_MESSAGE(message, mask, actual)断言实际的掩码位(usingmask)为高,并在失败时打印自定义报文(掩码和实际为整数类型)。实际仅检查掩码中的高位。
CPPTEST_ASSERT_BITS_LOW(mask, actual)等效于 CPPTEST_ASSERT_BITS_LOW 但是使用常规的断言报文。
CPPTEST_ASSERT_BITS_LOW_MESSAGE(message, mask, actual)断言实际的掩码位(usingmask)为低,并在失败时打印自定义报文(掩码和实际为整数类型)。实际仅检查掩码中的高位。
CPPTEST_ASSERT_BIT_HIGH_MESSAGE(message, n, actual)断言 actual 的第 n 位为高,并在失败时输出自定义报文(n 和 real 是整数类型)。
CPPTEST_ASSERT_BIT_HIGH(n, actual)等效于 CPPTEST_ASSERT_BIT_HIGH 但是使用常规的断言报文。
CPPTEST_ASSERT_BIT_LOW_MESSAGE(message, n, actual)断言 actual 的第 n 位为低,并在失败时输出自定义报文(n 和 real 是整数类型)。
CPPTEST_ASSERT_BIT_LOW(n, actual)等效于 CPPTEST_ASSERT_BIT_LOW 但是使用常规的断言报文。
CPPTEST_ASSERT_MESSAGE(message, condition)断言评估为 true 的条件。提供有关失败的自定义报文。
CPPTEST_ASSERT_EQUAL(expected, actual)断言两个值相等。
CPPTEST_ASSERT_EQUAL_MESSAGE(message, expected, actual)断言两个值相等。提供有关失败的自定义报文。
CPPTEST_ASSERT_BOOL_EQUAL(expected, actual)断言两个布尔值相等。如果失败,则将报告实际值和预期值。可以通过 C++test 从【质量任务】视图中自动验证失败的断言。
CPPTEST_ASSERT_BOOL_EQUAL_MESSAGE(message, expected, actual)断言两个布尔值相等。提供有关失败的自定义报文。
CPPTEST_ASSERT_INTEGER_EQUAL(expected, actual)断言两个整数值相等。如果失败,则将报告实际值和预期值。可以通过 C++test 从【质量任务】视图中自动验证失败的断言。
CPPTEST_ASSERT_INTEGER_EQUAL_MESSAGE(message, expected, actual)断言两个整数值相等。提供有关失败的自定义报文。
CPPTEST_ASSERT_INTEGER_EQUAL_DELTA(expected, actual, delta)断言两个整数值相等(精度最高为'delta' )。
CPPTEST_ASSERT_INTEGER_EQUAL_DELTA_MESSAGE(message, expected, actual, delta)断言两个整数值相等(精度最高为'delta' )。提供有关失败的自定义报文。
CPPTEST_ASSERT_INTEGER_ARRAY_EQUAL(expected, actual, size)断言两个整数值数组相等。比较第一个 'size’数组元素,
CPPTEST_ASSERT_INTEGER_ARRAY_EQUAL_DELTA(expected, actual, size, delta)断言两个整数值数组相等(精度最高为'delta' )。比较第一个 'size’数组元素。
CPPTEST_ASSERT_UINTEGER_EQUAL(expect ed, actual)断言两个无符号整数值相等。如果失败,则将报告实际值和预期值。可以通过 C++test 从【质量任务】视图中自动验证失败的断言。
CPPTEST_ASSERT_UINTEGER_EQUAL_MESSAGE(message, expected, actual)断言两个无符号整数值相等。提供有关失败的自定义报文。
CPPTEST_ASSERT_UINTEGER_EQUAL_DELTA(expected, actual, delta)断言两个无符号整数值相等(精度最高为'delta' )。
CPPTEST_ASSERT_UINTEGER_EQUAL_DELTA_MESSAGE(message, expected, actual, delta)断言两个无符号整数值相等(精度最高为 'delta' )。提供有关失败的自定义报文。
CPPTEST_ASSERT_UINTEGER_ARRAY_EQUAL(expected, actual, size) 断言两个无符号整数值的数组相等。比较第一个 'size’数组元素。
CPPTEST_ASSERT_UINTEGER_ARRAY_EQUAL_DELTA(expected, actual, size, delta)断言两个无符号整数值的数组相等(精度最高为 'delta' )。比较第一个 'size’数组元素。
CPPTEST_ASSERT_FLOAT_EQUAL_DELTA(expected, actual, delta)断言两个浮点值相等(精度最高为 delta)。比较第一个 'size’数组元素。
CPPTEST_ASSERT_FLOAT_EQUAL_DELTA_MESSAGE(message, expected, actual, delta) 断言两个浮点值相等(精度最高为 delta)。提供有关失败的自定义报文。
CPPTEST_ASSERT_FLOAT_ARRAY_EQUAL_DELTA(expected, actual, size, delta) 断言两个浮点值数组相等(精度最高为 'delta)。
CPPTEST_ASSERT_CSTR_EQUAL(expected, actual)断言两个 C 样式的字符串相等。如果失败,则将报告实际值和预期值。   可以通过 C++test 从【质量任务】视图中自动验证失败的断言。
CPPTEST_ASSERT_CSTR_EQUAL_MESSAGE (message, expected, actual)断言两个 C 样式的字符串相等。提供有关失败的自定义报文。
CPPTEST_ASSERT_CSTR_ARRAY_EQUAL(expected, actual, size)断言两个 C 样式的字符串相等。比较第一个 'size’数组元素。
CPPTEST_ASSERT_CSTR_N_EQUAL(expected, actual, max_size)断言两个 C 风格的字符串相等(仅比较第一个 ’max_size’个字符)。如果失败,则同时报告实际值和预期值。可以通过 C++test 从【质量任务】视图中自动验证失败的断言。
CPPTEST_ASSERT_CSTR_N_EQUAL_MESSAGE(message, expected, actual, max_size)断言两个 C 风格的字符串相等(仅比较第一个 ’max_size’个字符)。提供有关失败的自定义报文。
CPPTEST_ASSERT_MEM_BUFFER_EQUAL(expected, actual, size)断言两个数据缓冲区相等(比较 ’size’字节数)。如果失败,则将报告实际值和预期值。可以通过 C++test 从【质量任务】视图中自动验证失败的断言。
CPPTEST_ASSERT_MEM_BUFFER_EQUAL_MESSAGE(message, expected, actual, size)断言两个数据缓冲区相等(比较 ’size’字节数)。提供有关失败的自定义报文。
CPPTEST_ASSERT_PTR_EQUAL(expected, actual)断言两个指针值相等。如果失败,则将报告实际值和预期值。可以通过 C++test 从【质量任务】视图中自动验证失败的断言。
CPPTEST_ASSERT_PTR_EQUAL_MESSAGE(message, expected, actual)断言两个指针值相等。提供有关失败的自定义报文。
CPPTEST_ASSERT_PTR_ARRAY_EQUAL(expected, actual, size)断言两个指针数组相等。比较第一个 'size’数组元素。
CPPTEST_ASSERT_WCSTR_EQUAL(expected, actual)断言两个 C 样式的宽字符串相等。如果失败,则将报告实际值和预期值。可以通过 C++test 从【质量任务】视图中自动验证失败的断言。
CPPTEST_ASSERT_WCSTR_EQUAL_MESSAGE(message, expected, actual)断言两个 C 样式的宽字符串相等。提供有关失败的自定义报文。

CPPTEST_ASSERT_ENUM_EQUAL(scoped_enum_name, expected, actual)

断言两个整数值相等。如果失败,则将实际值和预期值都报告为枚举数。如果整数值未映射到指定枚举中的枚举数标识符,则报告测试用例错误。有关详细信息,请参见处理枚举值

CPPTEST_ASSERT_ENUM_EQUAL_MESSAGE(scoped_enum_name, msg, expected, actual)

断言两个整数值相等,例如上述的 CPPTEST_ASSERT_ENUM_EQUAL 此外,它还会在失败时提供一条自定义报文。有关详细信息,请参见 处理枚举值
CPPTEST_ASSERT_THROW(expression, ExceptionType)断言给定表达式引发指定类型的异常。
CPPTEST_ASSERT_THROW_MESSAGE(message, expression, ExceptionType)断言给定表达式引发指定类型的异常。提供有关失败的自定义报文。
CPPTEST_ASSERT_NO_THROW(expression)断言给定表达式不引发任何异常。
CPPTEST_ASSERT_NO_THROW_MESSAGE(message, expression)断言给定表达式不引发任何异常。提供有关失败的自定义报文。
CPPTEST_ASSERT_EXTERNAL(program, param1, param2, param3)使用外部应用程序来验证值。第一个参数指定要运行的可执行文件。该程序接收三个参数(param1,param2,param3)。如果返回非零值,则断言失败,并且将程序标准输出用作失败报文。
CPPTEST_ASSERT_EXTERNAL_MESSAGE(message, program, param1, param2, param3)使用外部应用程序来验证值。第一个参数指定要运行的可执行文件。该程序接收三个参数(param1,param2,param3)。如果返回非零值,则断言失败,并且将自定义报文用作失败报文。
CPPTEST_ASSERT_MEMORY_LEAKS()

断言在此宏调用之前已释放当前测试用例执行期间分配的动态内存块。

注意:此宏要求在【测试配置】中启用【内存监视】功能(请参见运行时错误检测)。

CPPTEST_ASSERT_EQUAL_FMT(expected, actual, format)

断言两个值相等。以自定义格式报告具有预期/实际值的断言。

这些断言使用 C 标准的 snprintf() 函数使用自定义模式(<format> string)将期望/实际值转换为它们的字符串表示形式。

补充说明:

  • C 标准的 snprintf() 函数必须可用于 C++test 的 Test Harness。
  • 格式字符串 (<format>) 应符合 C 标准的 printf() 函数。
  • <expected>, <actual> 和 <delta> 值需要根据其实际类型指定,格式为 printf() 函数接受/期望的格式-例如当浮点值字符串的格式为 "%f”时,应指定有效的浮点值(例如 0.0,而不是 0)。
  • 有一个为结果值字符串定义的缓冲区大小。如果实际值字符串大小超过缓冲区大小,将报告执行错误。
  • 输出缓冲区的默认大小设置为 24 个字节。可以通过在 项目属性> C++ test > 构建设置 > 编译器选项 中添加以下选项来定制缓冲区的大小:-DCPPTEST_FMT_BUFFER_SIZE=<new buffer size in bytes>.
CPPTEST_ASSERT_EQUAL_DELTA_FMT(expected, actual, delta, format



  • No labels