2012-07-02 18 views
8

का उपयोग कर टेस्ट क्लास में सभी परीक्षण चलाएं नोट: मैं इस परियोजना के लिए TestDriven.NET 3.0.2749 और NUnit 2.6.0.12051 का उपयोग कर रहा हूं।TestDriven.NET और NUnit

मैंने TestDriven.NET और NUnit दोनों को स्थापित किया है और टेस्ट क्लास.NET को राइट-क्लिक संदर्भ मेनू के माध्यम से टेस्ट क्लास में सभी परीक्षण चलाने के लिए प्रयास कर रहा हूं।

TestDriven.NET प्रलेखन से:

कोड संपादक विंडो चुना जाता है, परीक्षण (रों) निष्पादित करने के लिए कैरट की स्थिति से निर्धारित किया जाएगा; परीक्षण परीक्षण के अंदर कहीं भी राइट-क्लिक करके और चित्रा 2 में दिखाए गए अनुसार 'रन टेस्ट' का चयन करके व्यक्तिगत परीक्षण निष्पादित किए जाते हैं; एक परीक्षण स्थिरता में सभी परीक्षणों को कक्षा के अंदर राइट-क्लिक करके निष्पादित किया जाता है (लेकिन किसी भी विधि के बाहर) और 'रन टेस्ट' चुनें; किसी नामस्थान में सभी परीक्षणों को नामस्थान के अंदर राइट-क्लिक करके और 'रन टेस्ट' का चयन करके निष्पादित किया जाता है।

मैं सफलतापूर्वक राइट क्लिक करें संदर्भ मेनू और NUnit जीयूआई धावक का उपयोग कर सफलतापूर्वक किसी वर्ग के लिए सभी परीक्षण चलेंगे एक विशिष्ट परीक्षा पद्धति चला सकते हैं, लेकिन मैं त्वरित पहुँच TestDriven.NET लिए प्रदान करता है का उपयोग करना चाहेंगे जब मैं विकास कर रहा हूं यह कार्य।

मैं पालन त्रुटि प्राप्त जब मैं परीक्षा पद्धति के बाहर कैरट जगह:

लक्ष्य प्रकार एक ज्ञात परीक्षण ढांचे या 'मुख्य' विधि से परीक्षण शामिल नहीं है।

अपडेटेड 1: जोड़ा गया उदाहरण कोड। परीक्षण करने के लिए

उदाहरण कोड:

namespace TDDN.Framework 
{ 
    public class ExampleClass 
    { 
     public ExampleClass() { } 

     public Int32 Add(Int32 x, Int32 y) 
     { 
      return x + y; 
     } 

     public Int32 Subtract(Int32 x, Int32 y) 
     { 
      return x - y; 
     } 
    } 
} 

ईकाई परीक्षण:

using NUnit.Framework; 
using TDDN.Framework; 

namespace TDDN.UnitTests 
{ 
    [TestFixture] // Cursor caret placed here results in error above. 
    public class ExampleClassTests 
    { 
     [Test] // Cursor caret placed here works. 
     public void Add_SumTwoIntegers_SumReturned() 
     { 
      ExampleClass exampleClass = new ExampleClass(); 

      Assert.AreEqual(10, exampleClass.Add(5, 5)); 
     } 

     [Test] // Cursor caret placed here works also. 
     public void Subtract_SubtractTwoIntegers_DifferenceReturned() 
     { 
      ExampleClass exampleClass = new ExampleClass(); 

      Assert.AreEqual(5, exampleClass.Subtract(10, 5)); 
     } 
    } 
} 
+0

कृपया अपना कोड पोस्ट करें, क्योंकि यह काम करना चाहिए ... शायद आपके उपयोग किए गए विशेषताओं में कुछ गड़बड़ है। – seldary

उत्तर

16

जब TestDriven.NET और NUnit (3.0.2749 और 2.6 का एक ही संस्करण का उपयोग मैं सिर्फ इस सटीक समस्या का सामना करना पड़ा .0.12051)।

समस्या यह है कि TestDriven.NET 3.0 NUnit 2.6 का समर्थन नहीं करता है, इसलिए यह NUnit [टेस्ट] और [टेस्टफिक्चर] विशेषताओं को पहचान नहीं पाएगा। इस प्रकार, TestDriven.NET अभी भी आपके व्यक्तिगत परीक्षण कार्यों को चलाएगा, लेकिन विज्ञापन हॉक के रूप में (जैसा कि उत्तीर्ण होने पर पास/विफल/छोड़ें संदेश के अंत में प्रदर्शित होता है)।

मैं TestDriven.NET (3.3 बीटा 2) का एक नया संस्करण स्थापित करके इस मुद्दे को हल करने में सक्षम था, जो पूरी तरह से NUnit 2.6 का समर्थन करता है (देखें: https://groups.google.com/d/msg/nunit-discuss/pTCDx2_L8jU/TlpULzE36wEJ) अब आप सभी परीक्षणों को स्थिरता में चलाने में सक्षम होना चाहिए एक बार और देखें (NUnit 2.6.0) परीक्षण आउटपुट के अंत में प्रदर्शित होता है।

+0

मैं पुष्टि कर सकता हूं कि आपके प्रस्तावित समाधान भी मेरे लिए काम करता है। मैंने TestDriven.NET 3.4.2784 बीटा स्थापित किया और कर्सर कैरेट को अपेक्षित रूप से '[टेस्टफिक्शन]' लाइन पर रखा गया था जब सभी परीक्षण चलाने में सक्षम था। धन्यवाद, क्रिस्टियन। – Noren

0

मेरे पास कैरेट प्लेसमेंट पर बिल्कुल वही त्रुटि संदेश और समान व्यवहार था।

मेरे पास पहले से TestDriven.Net का नवीनतम संस्करण था।

मेरी समस्या यह थी कि मेरे नए टेस्ट क्लास में एक श्रेणी निर्दिष्ट नहीं थी और इसे फ़िल्टर किया गया था (टूल्स -> TestDriven.Net -> सामान्य -> ​​श्रेणियाँ -> श्रेणियों में परीक्षण शामिल करें)।

तो बस मेरी समस्या को ठीक करने वाली सही श्रेणी निर्दिष्ट करना।

यह वही त्रुटि संदेश था, लेकिन एक अलग समस्या और समाधान था।

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