TestNG - Ausführungsverfahren

In diesem Kapitel wird die Ausführungsprozedur von Methoden in TestNG erläutert. Es erklärt die Reihenfolge der aufgerufenen Methoden. Hier ist die Ausführungsprozedur der TestNG-Test-API-Methoden anhand eines Beispiels.

Erstellen Sie einen Java-Klassendateinamen TestngAnnotation.java im C:\>TestNG_WORKSPACE Anmerkungen testen.

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");
   }

}

Als nächstes erstellen wir die Datei testng.xml im C:\>TestNG_WORKSPACE Anmerkungen ausführen.

<?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>

Kompilieren Sie die Testfallklasse mit javac.

C:\TestNG_WORKSPACE>javac TestngAnnotation.java

Führen Sie nun die Datei testng.xml aus, mit der der in der bereitgestellten Testfallklasse definierte Testfall ausgeführt wird.

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

Überprüfen Sie die Ausgabe.

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
===============================================

Basierend auf der obigen Ausgabe ist die Ausführungsprozedur wie folgt:

  • Zunächst wird die beforeSuite () -Methode nur einmal ausgeführt.

  • Schließlich wird die afterSuite () -Methode nur einmal ausgeführt.

  • Selbst die Methoden beforeTest (), beforeClass (), afterClass () und afterTest () werden nur einmal ausgeführt.

  • Die beforeMethod () -Methode wird für jeden Testfall ausgeführt, jedoch vor dem Ausführen des Testfalls.

  • Die Methode afterMethod () wird für jeden Testfall ausgeführt, jedoch nach Ausführung des Testfalls.

  • Zwischen beforeMethod () und afterMethod () wird jeder Testfall ausgeführt.