📜  TestNG @AfterTest注释

📅  最后修改于: 2021-01-11 12:01:19             🧑  作者: Mango

TestNG @AfterTest批注

@AfterTest: @AfterTest注释方法下的测试方法在执行所有可用类的测试方法后执行,这些可用类保留在套件中testng.xml文件中的标签。

让我们通过一个例子来理解。

第一种情况: @AfterTest注释的方法末尾存在。

步骤1:打开Eclipse。

步骤2:我们创建两个Java项目。假设我们创建了一个存款项目,其中包含两个模块定期存款和定期存款。

Fixed_Deposit.java

package com.javatpoint;

import org.testng.annotations.Test;

public class Fixed_deposit 
{
 @Test
    public void fixed_deposit()
 {
     System.out.println("Fixed Deposit");
 }
@Test
 public void roi()
 {
     System.out.println("Rate of Interest");
 }
}

Recurring_Deposit.java

package com.javatpoint;
import org.testng.annotations.AfterTest;
import org.testng.annotations.Test;
public class Recurring_deposit 
{
@Test 
public void recurring_deposit()
  {
      System.out.println("Recurring Deposit");
  }
@AfterTest
public void after_test()
{
    System.out.println("After test execution..");}}

在上述情况下,我们在Recurring_Deposit中使用@AfterTest批注,这意味着仅在执行Recurring_Deposit类的所有测试方法时,才会执行测试注释方法,即after_test()。

testng.xml






 
 
  
  
  
  
  
   
   

输出量

第二种情况:当@AfterTest注释方法存在于类文件的开头。

Recurring_deposit.java

package com.javatpoint;
mport org.testng.annotations.AfterTest;
import org.testng.annotations.Test;
public class Recurring_deposit 
{
    
@AfterTest
public void after_test()
{
    System.out.println("After test execution..");
}
@Test 
public void recurring_deposit()
  {
      System.out.println("Recurring Deposit");
  }
}

在上面的代码中,我们将@AfterTest带注释的方法放在开头。

输出量

我们得到与第一种情况相同的输出,因此得出结论,可以将@AfterTest注释方法放置在类文件中的任何位置。 @AfterTest注释方法在执行类中存在的所有测试方法之后运行,这些方法保留在夹。在上述情况下, @AfterTest注释方法在Recurring_deposit类中可用,因此TestNG将查看testng.xml文件并确定哪个测试文件夹包含Recurring_deposit类。在这种情况下,Recurring_deposit类在定期存款中定义文件夹,因此定期存款中的所有可用类文件夹首先完成,然后执行@AfterTest带注释的方法。

注意:执行完成后,需要删除cookie,删除进程或关闭连接,因此使用@AfterTest注释方法用于此目的。