2010-12-30 4 views
21

करने का विरोध किया मैं VS2008 साथ NUnit का उपयोग किया है, और अब VS2010 पर MSTest के अनुरूप ढलने कर रहा हूँ। मैं) हर बार एक परीक्षा पद्धति NUnit में चलाया गया था, मुझे हर परीक्षा पद्धति में कोड की प्रतिलिपि करने से रोकने के लिए बनाया वस्तु TestSetup (में एक वस्तु बना सकते हैं और TestCleanup() से नष्ट, और करने में सक्षम हुआ करता था।का उपयोग एमएस टेस्ट ClassInitialize() और TestInitialize() VS2010 में के रूप में NUnit

MSTest के साथ संभव नहीं है? उदाहरण मैं ClassInitialize और ClassCleanup और TestInitialize का उपयोग कर लग रहा है और TestCleanup विशेषताओं का केवल कंसोल के लिए लिखने के लिए कैसे दिखा। कोई भी इन विशेषताओं का कोई और विस्तृत उपयोग नहीं दिखाता है।

उत्तर

34

यहाँ TestInitialize और TestCleanup का उपयोग कर एक सरल उदाहरण है।

[TestClass] 
public class UnitTest1 
{ 
    private NorthwindEntities context; 

    [TestInitialize] 
    public void TestInitialize() 
    { 
     this.context = new NorthwindEntities(); 
    } 

    [TestMethod] 
    public void TestMethod1() 
    { 
     Assert.AreEqual(92, this.context.Customers.Count()); 
    } 

    [TestCleanup] 
    public void TestCleanup() 
    { 
     this.context.Dispose(); 
    } 
} 
+0

धन्यवाद, टॉम। क्या मैं यह मानने में सही हूं कि नॉर्थविंडएन्टिटीज टेस्ट प्रोजेक्ट में एक संदर्भित असेंबली है? –

+0

हां, यह एक संदर्भित असेंबली में था। –

+3

ध्यान दें कि परीक्षण आरंभ करें और TestCleanup विधियों को दिखाए गए अनुसार ** सार्वजनिक ** के रूप में चिह्नित किया जाना चाहिए। – mungflesh

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