TestNG - निष्पादन प्रक्रिया

यह अध्याय TestNG में विधियों के निष्पादन की प्रक्रिया के बारे में बताता है। यह बताई गई विधियों का क्रम बताता है। यहां उदाहरण के साथ TestNG परीक्षण एपीआई विधियों की निष्पादन प्रक्रिया है।

एक जावा वर्ग फ़ाइल नाम बनाएँ TestngAnnotation.java में C:\>TestNG_WORKSPACE एनोटेशन का परीक्षण करने के लिए।

import org.testng.annotations.Test;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.AfterSuite;

public class TestngAnnotation {
   // test case 1
   @Test
   public void testCase1() {
      System.out.println("in test case 1");
   }

   // test case 2
   @Test
   public void testCase2() {
      System.out.println("in test case 2");
   }

   @BeforeMethod
   public void beforeMethod() {
      System.out.println("in beforeMethod");
   }

   @AfterMethod
   public void afterMethod() {
      System.out.println("in afterMethod");
   }

   @BeforeClass
   public void beforeClass() {
      System.out.println("in beforeClass");
   }

   @AfterClass
   public void afterClass() {
      System.out.println("in afterClass");
   }

   @BeforeTest
   public void beforeTest() {
      System.out.println("in beforeTest");
   }

   @AfterTest
   public void afterTest() {
      System.out.println("in afterTest");
   }

   @BeforeSuite
   public void beforeSuite() {
      System.out.println("in beforeSuite");
   }

   @AfterSuite
   public void afterSuite() {
      System.out.println("in afterSuite");
   }

}

इसके बाद, फाइल बनाते हैं testng.xml में C:\>TestNG_WORKSPACE एनोटेशन निष्पादित करने के लिए।

<?xml version = "1.0" encoding = "UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name = "Suite1">
   <test name = "test1">
      <classes>
         <class name = "TestngAnnotation"/>
      </classes>
   </test>
</suite>

Javac का उपयोग करके टेस्ट केस क्लास को संकलित करें।

C:\TestNG_WORKSPACE>javac TestngAnnotation.java

अब, testng.xml चलाएं, जो प्रदान किए गए टेस्ट केस क्लास में परिभाषित टेस्ट केस को चलाएगा।

C:\TestNG_WORKSPACE>java org.testng.TestNG testng.xml

आउटपुट सत्यापित करें।

in beforeSuite
in beforeTest
in beforeClass
in beforeMethod
in test case 1
in afterMethod
in beforeMethod
in test case 2
in afterMethod
in afterClass
in afterTest
in afterSuite

===============================================
Suite
Total tests run: 2, Failures: 0, Skips: 0
===============================================

उपरोक्त आउटपुट के आधार पर, निष्पादन प्रक्रिया निम्नानुसार है -

  • सबसे पहले, पहले (पहले) विधि को केवल एक बार निष्पादित किया जाता है।

  • अंत में, afterSuite () विधि केवल एक बार निष्पादित होती है।

  • यहां तक ​​कि पहले तरीके (), पहलेक्लास (), afterClass (), और afterTest () तरीके केवल एक बार निष्पादित किए जाते हैं।

  • मेथोड () विधि प्रत्येक परीक्षण मामले के लिए निष्पादित होती है लेकिन परीक्षण मामले को निष्पादित करने से पहले।

  • afterMethod () विधि प्रत्येक परीक्षण मामले के लिए निष्पादित होती है लेकिन परीक्षण मामले को निष्पादित करने के बाद।

  • मेथेथोड () और आफ्टरमेथोड () से पहले, प्रत्येक परीक्षण केस निष्पादित होता है।