2013-08-28 4 views
10

मैं सेलेनियम ui स्वचालन के लिए एक न्युनेट परियोजना बनाना चाहता हूं। मैं सभी परीक्षणों (उन सभी को चलाने) से पहले साइट पर साइन इन करना चाहता हूं और सभी परीक्षणों (उन सभी को चलाने के बाद) को बंद करना चाहता हूं।असेंबली में सभी परीक्षणों से पहले और बाद में एक विधि निष्पादित करना संभव है?

मैं सेटअप का उपयोग नहीं कर सकता क्योंकि यह जुड़नार से संबंधित है और मैं इसे सबकुछ से पहले और बाद में करना चाहता हूं।

क्या आप जानते हैं कि इसे किसने निष्पादित किया है?


मैं सेटअप और टीयरडाउन विशेषता से परिचित हूं। मुझे इसे दोबारा समझाएं।

मुझे सभी फिक्स्चर शुरू होने से सभी परीक्षणों (एकेए - पूरे असेंबली में पहला परीक्षण) से पहले कुछ तर्कों को निष्पादित करने की आवश्यकता है और सभी फिक्स्चर समाप्त होने वाले सभी परीक्षणों के बाद कुछ तर्क निष्पादित किए जाने चाहिए (AKA - पूरे में अंतिम परीक्षण सभा)।

उत्तर

7

निश्चित रूप से। [TestSetUp] और [TearDown] विशेषताएँ यही हैं। उन्हें [TestFixtureSetUp] और [TestFixtureTearDown] के साथ भ्रमित न करें, जिन्हें पहले परीक्षण से पहले और अंतिम के बाद निष्पादित किया जाता है।

1

nunit में सबसे नज़दीकी चीज SetupFixture विशेषता है, जो आपको नामस्थान में सभी परीक्षण फिक्स्चर के लिए सेटअप/टियरडाउन करने के लिए कक्षा को टैग करने की अनुमति देती है;

SetUpFixture में सेटअप विधि को इसके नामस्थान में मौजूद किसी भी फिक्स्चर से पहले निष्पादित किया जाता है। सभी फिक्स्चर निष्पादन पूरा होने के बाद एक बार टायरडाउन विधि निष्पादित की जाती है।

14

अपने सभी परीक्षण जुड़नार एक ही नाम स्थान के अंदर हैं तो आप वैश्विक सेटअप और टियरडाउन के रूप में एक वर्ग को चिह्नित करने के [SetUpFixture] विशेषता का उपयोग कर सकते हैं। फिर आप वहां अपनी सभी लॉगिन/लॉगआउट कार्यक्षमता डाल सकते हैं।

NUnit 2.x

namespace MyNamespace.Tests 
{ 
    using System; 
    using NUnit.Framework; 

    [SetUpFixture] 
    public class TestsSetupClass 
    { 
     [SetUp] 
     GlobalSetup() 
     { 
      // Do login here. 
     } 

     [TearDown] 
     GlobalTeardown() 
     { 
      // Do logout here 
     } 
    } 
} 

देखें: http://www.nunit.org/index.php?p=setupFixture&r=2.4

NUnit 3.x

namespace MyNamespace.Tests 
{ 
    using System; 
    using NUnit.Framework; 

    [SetUpFixture] 
    public class TestsSetupClass 
    { 
     [OneTimeSetUp] 
     GlobalSetup() 
     { 
      // Do login here. 
     } 

     [OneTimeTearDown] 
     GlobalTeardown() 
     { 
      // Do logout here 
     } 
    } 
} 

देखें: https://github.com/nunit/docs/wiki/SetUpFixture-Attribute

+5

NUnit में 3.x [OneTimeSetUp] 'और' [OneTimeTearDown] ' – Sousuke

2

प्रत्येक परीक्षण मामलों को क्रियान्वित करने से पहले [SetUp] अनुभाग मार डाला जाएगा

प्रत्येक परीक्षण मामलों [TearDown] अनुभाग मार डाला जाएगा के निष्पादन पूरा होने के बाद।

अगर हम चर को प्रारंभ करना चाहते हैं हम अक्सर अपने अब `[SetUp] खंड एक निर्माता की तरह में लिखने

अगर हम किसी भी वस्तु हम अक्सर [TearDown] खंड में लिखने निपटान के लिए चाहते हैं

[SetUp] 
    protected void SetUp() 
    { 
      //initialize objects 
    } 

    [TearDown] 
    public void TearDown() 
    { 
     //dispose objects 
    } 
+0

@boger: आपकी समस्या हल हो गई है? – Sumeshk

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