如何在 gtest 中禁用完整的测试用例? (一个测试用例中的所有测试,而不仅仅是单个测试)
gtest 文档中建议的格式是按以下方式组织测试:
class1test.cpp:
Test(Class1Test, TestA)
{
...
}
Test(Class1Test, TestB)
{
...
}
...
class2test.cpp:
Test(Class2Test, TestA)
{
...
}
Test(Class2Test, TestB)
{
...
}
....
class3test.cpp
等等…
我知道在测试中添加前缀 DISABLED_
会阻止它运行(例如: Test(Class1Test, DISABLED_TestB)
)
但是如果我想禁用测试用例 Class1Test 中的所有测试呢?
这篇文章 GoogleTest:如何跳过测试? 建议使用 gtest 过滤器,但这似乎是我想做的一个复杂的解决方案。它 gtest 过滤器确实是唯一的解决方案,我应该在哪里编写一个禁用测试用例的过滤器?
原文由 Basile Perrenoud 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用
--gtest_filter=-Class1Test.*
运行测试应该跳过Class1Test
测试用例中的所有测试。这似乎并不复杂。