2012-01-19 24 views
11

क्या एमएसटीएस्ट [क्लासक्लेनअप] & [कक्षा आरंभ] के लिए गैर स्थैतिक समकक्ष हैं?क्या एमएसटीएस्ट [क्लासक्लेनअप] और [क्लासइंस्टॉलिज़] के लिए गैर स्थैतिक समकक्ष हैं?

मैं कुछ सिस्टम/एकीकरण स्तर परीक्षणों के लिए एमएसटीएस्ट का उपयोग कर रहा हूं, और मैं परीक्षण में कनेक्शन शुरू करने के & की सफाई के बारे में चिंता नहीं करना चाहता हूं।

उदाहरण कोड:

[TestClass] 
public class DefectCreatorTest 
{ 
    private long _cookie; 
    private soapcgi _soap; 

    [ClassInitialize] 
    public void Initialize() 
    { 
     _soap = new soapcgi {Url = "http://localhost:80/scripts/soapcgi.exe"}; 
     _cookie = Transaction.Login(_soap); 
    } 

    [ClassCleanup] 
    public void TearDown() 
    { 
     Transaction.Logout(_cookie, _soap); 
    } 

    [TestMethod] 
    public void CreateDefectTest() 
    { 
     var result = _soap.Foo(); 
     Assert.AreEqual("bar", result); 
    } 
} 
+0

गैर-स्थैतिक द्वारा आपका क्या मतलब है? आपके उदाहरण कोड में क्या गलत है? – seldary

+0

उदाहरण कोड संकलित करता है, लेकिन नहीं चलाएगा। ClassInitialize के साथ सजाए गए विधि को एक स्थिर विधि होना चाहिए। –

+0

परीक्षण नहीं चलाया जाएगा क्योंकि टेस्टकॉन्टेक्स्ट सेटअप विधि में पास होने के लिए प्रारंभिक विधि आवश्यक है, भले ही इसका उपयोग न हो। –

उत्तर

6

अपने प्रश्न, जहाँ तक मुझे पता के रूप में उत्तर देना - नहीं, वहाँ नहीं है MSTest में एक गैर स्थिर बराबर

लेकिन:

  1. अपने कोड को देखते हुए, वहाँ कोई कारण नहीं क्यों _cookie और _soap स्थिर नहीं किया जाना चाहिए, Initialize और TearDown के साथ है। ऐसा करने से आपको परीक्षण लेखन के दौरान विन्यास चिंता मत भूलना ...
  2. आप "जहाज कूद" के लिए तैयार हैं, तो दूँगी, के लिए [ClassCleanup] & [ClassInitialize] NUnit समकक्ष स्थिर & उदाहरण के तरीकों के लिए लागू किया जा सकता है।