TestNG - Prosedur Eksekusi
Bab ini menjelaskan prosedur eksekusi metode di TestNG. Ini menjelaskan urutan metode yang dipanggil. Berikut adalah prosedur eksekusi metode API pengujian TestNG dengan sebuah contoh.
Buat nama file kelas java TestngAnnotation.java di C:\>TestNG_WORKSPACE untuk menguji anotasi.
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");
}
}
Selanjutnya, mari buat file testng.xml di C:\>TestNG_WORKSPACE untuk menjalankan anotasi.
<?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>
Kompilasi kelas Test case menggunakan javac.
C:\TestNG_WORKSPACE>javac TestngAnnotation.java
Sekarang, jalankan testng.xml, yang akan menjalankan kasus uji yang ditentukan di kelas Kasus Uji yang disediakan.
C:\TestNG_WORKSPACE>java org.testng.TestNG testng.xml
Verifikasi hasilnya.
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
===============================================
Berdasarkan output di atas, prosedur eksekusinya adalah sebagai berikut -
Pertama-tama, metode beforeSuite () dijalankan hanya sekali.
Terakhir, metode afterSuite () hanya dijalankan satu kali.
Bahkan metode beforeTest (), beforeClass (), afterClass (), dan afterTest () hanya dijalankan sekali.
Metode beforeMethod () dijalankan untuk setiap kasus pengujian tetapi sebelum menjalankan kasus pengujian.
metode afterMethod () dijalankan untuk setiap kasus pengujian tetapi setelah menjalankan kasus pengujian.
Di antara beforeMethod () dan afterMethod (), setiap kasus pengujian akan dijalankan.