在 TEST 宏 googletest 中的任何地方抛出异常时测试失败
Tests fail when throw exception anywhere in TEST macro googletest
我在使用 google 测试框架时遇到一些问题
所以,当我运行下面的代码时:
void f(){
throw runtime_error("");
}
TEST(test, test1){
EXPECT_THROW(f(), std::runtime_error);
}
所以,我得到了这样的错误:
make[2]: *** [test/CMakeFiles/gTest.dir/build.make:101: test/gTest] Segmentation fault (core dumped)
make[2]: *** Deleting file 'test/gTest'
make[1]: *** [CMakeFiles/Makefile2:173: test/CMakeFiles/gTest.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
但是当 f() 没有抛出任何东西时,所以测试没有通过。即使我使用 try catch 它仍然显示相同的错误
你能帮忙解决这个问题吗?谢谢
问题出在异常类型上,谢谢。提供的代码有效
我在使用 google 测试框架时遇到一些问题
所以,当我运行下面的代码时:
void f(){
throw runtime_error("");
}
TEST(test, test1){
EXPECT_THROW(f(), std::runtime_error);
}
所以,我得到了这样的错误:
make[2]: *** [test/CMakeFiles/gTest.dir/build.make:101: test/gTest] Segmentation fault (core dumped)
make[2]: *** Deleting file 'test/gTest'
make[1]: *** [CMakeFiles/Makefile2:173: test/CMakeFiles/gTest.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
但是当 f() 没有抛出任何东西时,所以测试没有通过。即使我使用 try catch 它仍然显示相同的错误
你能帮忙解决这个问题吗?谢谢
问题出在异常类型上,谢谢。提供的代码有效