当 ASSERT_* 宏导致测试用例终止时,EXPECT_* 宏继续其评估。
我想知道决定是否使用其中之一的标准是什么。
Use ASSERT
当条件must保持 - 如果没有,测试就在那里停止。当测试的其余部分在不满足此条件的情况下不具有语义意义时,请使用此选项。
Use EXPECT
当条件should保持,但如果没有,我们仍然可以从继续测试中获得价值。 (不过,测试最终还是会失败。)
经验法则是:使用EXPECT
默认情况下,除非你require为其余测试保留的东西,在这种情况下你应该使用ASSERT
对于该特定条件。
这在内部得到了呼应primer https://google.github.io/googletest/primer.html:
Usually EXPECT_*
是首选,因为它们允许在测试中报告多个失败。但是,您应该使用ASSERT_*
如果当相关断言失败时继续没有意义。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)