Я могу проверить gtest_filter из не-gtest теста?
У меня есть тестовый набор, написанный на QTestLib
, Это наследие. QTest
тесты вызываются из main
метод инициализирован как обычный набор gtest.
На CI-сервере мы запускаем регулярные тесты с фильтром "чувствительного ко времени исключения", например
> testsuite.exe --gtest_filter=-*TimeSensitive*
Теперь я хотел бы попробовать отключить некоторые из этих чувствительных ко времени тестов, "слушая" gtest_filter
, Итак, вопрос: могу ли я использовать что-то эквивалентное этому?
MyTest::test_TimeSensitiveTestMethod() {
if (!::testing::gtest_filter("MyTest_TimeSensitiveTestMethod")) return;
EXPECT_EQ(1, 2);
...
}
1 ответ
На самом деле решил проблему, просто превратив тесты в гесты:
TEST(MyGtestWrapper, theQtest_TimeSensitive) {
MyTest test;
ASSERT_NE(QTEST_FAILED, QTest::exec(&test, 0, 0));
}
Тест main
должен создать экземпляр QApplication
а также exec
это, конечно.