2016-08-19 7 views
0

私はQTestLibで書かれたテストスイートを持っています。それは遺産です。 QTestテストは、正規のgtestスイートのように初期化されたmainメソッドから呼び出されます。 CIサーバでgtest_filterをgtest以外のテストの中から確認できますか?

我々は

> testsuite.exe --gtest_filter=-*TimeSensitive* 

のように「時間に敏感除外」フィルタで定期的gtestsを呼び出す今、私はgtest_filterに「聴く」によって、これらの時間に敏感なテストの一部を無効にしてみてくださいしたいと思います。だから質問:私はこれに相当するものを使うことができますか?

MyTest::test_TimeSensitiveTestMethod() { 
    if (!::testing::gtest_filter("MyTest_TimeSensitiveTestMethod")) return; 
    EXPECT_EQ(1, 2); 
    ... 
} 

答えて

0

は実際に単にgtestsにqtestsを巻き付けることによってこの問題を解決:

TEST(MyGtestWrapper, theQtest_TimeSensitive) { 
    MyTest test; 
    ASSERT_NE(QTEST_FAILED, QTest::exec(&test, 0, 0)); 
} 

を試験mainはもちろん、QApplicationexecそれをインスタンス化しなければなりません。

関連する問題