Kil*_*zor 36 c++ unit-testing googletest assertions
我正在使用Google测试框架编写一些单元测试.但我想检查一些断言是否放置得很好并且有用.有没有办法在Google测试中捕获断言?
测试中的示例代码:
int factorial(int n){
assert(n >= 0);
//....
}
Run Code Online (Sandbox Code Playgroud)
然后测试:
#include <gtest/gtest.h>
TEST(FactorialTest,assertNegative){
EXPECT_ANY_THROW({
factorial(-1);
});
}
Run Code Online (Sandbox Code Playgroud)
但是EXPECT_ANY_THROW
没有抓住断言但只有例外.我正在寻找一个捕获断言的解决方案.
Ste*_*sop 29
谷歌测试提供ASSERT_DEATH
,EXPECT_DEATH
以及其他相关的宏.
这个问题和什么是Google Test,Death Tests是彼此的答案.这会使它们重复吗?;-)