TestNG - Procedura di esecuzione
Questo capitolo spiega la procedura di esecuzione dei metodi in TestNG. Spiega l'ordine dei metodi chiamati. Ecco la procedura di esecuzione dei metodi API di test TestNG con un esempio.
Crea un nome file di classe java TestngAnnotation.java in C:\>TestNG_WORKSPACE per testare le annotazioni.
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");
}
}
Quindi, creiamo il file testng.xml in C:\>TestNG_WORKSPACE per eseguire annotazioni.
<?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>
Compilare la classe Test case utilizzando javac.
C:\TestNG_WORKSPACE>javac TestngAnnotation.java
Ora, esegui testng.xml, che eseguirà il test case definito nella classe Test Case fornita.
C:\TestNG_WORKSPACE>java org.testng.TestNG testng.xml
Verifica l'output.
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
===============================================
Sulla base dell'output di cui sopra, la procedura di esecuzione è la seguente:
Prima di tutto, il metodo beforeSuite () viene eseguito una sola volta.
Infine, il metodo afterSuite () viene eseguito solo una volta.
Anche i metodi beforeTest (), beforeClass (), afterClass () e afterTest () vengono eseguiti una sola volta.
Il metodo beforeMethod () viene eseguito per ogni test case ma prima di eseguire il test case.
Il metodo afterMethod () viene eseguito per ogni test case ma dopo aver eseguito il test case.
Tra beforeMethod () e afterMethod (), viene eseguito ogni test case.