2013-12-17 3 views
10

क्या यह जांचने का कोई तरीका है कि सेटअप कोड वास्तव में जीटीएस्ट फिक्स्चर में ठीक से काम करता है, ताकि पूरे फिक्स्चर या टेस्ट-एप्लिकेशन को अजीब परीक्षण परिणामों के बजाय असफल के रूप में चिह्नित किया जा सके और/या प्रत्येक टेस्ट में इसे स्पष्ट रूप से जांचना होगा ?क्या आप Google टेस्ट में सेटअप सफलता/विफलता का परीक्षण कर सकते हैं?

उत्तर

8

आप एक SetUp विधि में अपने दृढ़ सेटअप कोड डाल दिया, और यह विफल रहता है और एक घातक विफलता (ASSERT_XXX या FAIL मैक्रो) जारी करता है, तो गूगल टेस्ट अपने परीक्षण शरीर नहीं चलेंगे। तो तुम सब लिखने की

class MyTestCase : public testing::Test { 
protected: 
    bool InitMyTestData() { ... } 

    virtual void SetUp() { 
    ASSERT_TRUE(InitMyTestData()); 
    } 
}; 

TEST_F(MyTestCase, Foo) { ... } 

फिर MyTestCase.Foo पर अमल नहीं होगा अगर InitMyTestData() रिटर्न गलत है। यदि आपके पास पहले से ही आपके सेटअप कोड (यानी EXPECT_XXX या ADD_FAILURE) में गैर-घातक दावे हैं, तो आप ASSERT_FALSE(HasFailure()); लिखकर उनके द्वारा घातक दावा उत्पन्न कर सकते हैं। आप Google टेस्ट Advanced Guide विकी पृष्ठ में विफलता का पता लगाने के बारे में अधिक जानकारी प्राप्त कर सकते हैं।

+0

यह अभी भी मेरे लिए पारित सभी परीक्षण दिखाता है। – marsh

संबंधित मुद्दे