for (int i = 0; i < 50; ++i)
{
CPPUNIT_ASSERT(RtcTime_GetDayOfWeek(TimeC[i])==RtcTime_GetDayOfWeek(TimeC[i+1]));
}
此测试失败了。我怎样才能导出这个测试失败的'i'?
现在我的输出
1) test: testEq (F) line: 55 rtc_test.cxx
assertion failed
- Expression: RtcTime_GetDayOfWeek(TimeC[i])==RtcTime_GetDayOfWeek(TimeC[i+1])
我想要那样的东西
1) test: testEq (F) line: 55 rtc_test.cxx
assertion failed
- Expression: RtcTime_GetDayOfWeek(TimeC[i])==RtcTime_GetDayOfWeek(TimeC[i+1])
i=49
答案 0 :(得分:2)
你可以这样做,当CppUnit断言时会打印一条消息。
for (int i = 0; i < 50; ++i)
{
std::stringstream oss;
oss << "testing RtcTime_GetDayOfWeek(TimeC[i]) where i=" << i << std::endl;
CPPUNIT_ASSERT_MESSAGE(oss.str(),
RtcTime_GetDayOfWeek(TimeC[i])==RtcTime_GetDayOfWeek(TimeC[i+1]));
}