TestNG-실행 절차

이 장에서는 TestNG의 메소드 실행 절차를 설명합니다. 호출 된 메서드의 순서를 설명합니다. 다음은 예제와 함께 TestNG 테스트 API 메서드의 실행 절차입니다.

Java 클래스 파일 이름 만들기 TestngAnnotation.javaC:\>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.xmlC:\>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
===============================================

위의 출력을 기반으로 실행 절차는 다음과 같습니다.

  • 우선 beforeSuite () 메서드는 한 번만 실행됩니다.

  • 마지막으로 afterSuite () 메서드는 한 번만 실행됩니다.

  • beforeTest (), beforeClass (), afterClass () 및 afterTest () 메서드도 한 번만 실행됩니다.

  • beforeMethod () 메서드는 각 테스트 케이스에 대해 실행되지만 테스트 케이스를 실행하기 전에 실행됩니다.

  • afterMethod () 메서드는 각 테스트 케이스에 대해 실행되지만 테스트 케이스를 실행 한 후에 실행됩니다.

  • beforeMethod ()와 afterMethod () 사이에 각 테스트 케이스가 실행됩니다.