📅  最后修改于: 2023-12-03 15:05:34.557000             🧑  作者: Mango
TestNG是Java中一款常用的测试框架,通过注释的方式来对测试方法进行管理。其中,@AfterMethod注释用于在每个测试方法执行后执行特定的任务。本文将介绍@TestNG @AfterMethod注释的使用方法和示例。
在测试类中,使用@TestNG @AfterMethod注释来标记一个方法,该方法将在每个测试方法执行后自动执行。@AfterMethod方法可以用于各种特定的任务,比如回滚数据库操作、关闭资源、清除测试数据等等。
@AfterMethod
public void tearDown() throws Exception {
//TODO: 程序员可根据需要编写相关的资源清理、数据恢复等代码
}
以下是一个简单的例子,用于演示@TestNG @AfterMethod注释的使用方式和效果。
在这个例子中,我们将使用@BeforeMethod和@AfterMethod注释来查找和释放资源。这个测试类用于显示文件系统上的某个目录中所有文件的名称。
import java.io.File;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import org.testng.Assert;
public class TestNGTest{
File folder;
@BeforeMethod
public void setUp() {
//创建测试目录
folder = new File("c:/temp");
if(!folder.exists()){
folder.mkdir();
}
System.out.println("@BeforeMethod - 创建目录");
}
@AfterMethod
public void tearDown() {
//删除测试目录
folder.delete();
System.out.println("@AfterMethod - 删除目录");
}
@Test
public void testPrintFiles() {
Assert.assertTrue(folder.exists());
File[] listFiles = folder.listFiles();
for (File file : listFiles) {
System.out.println(file.getName());
}
}
}
在这个例子中,我们在@BeforeMethod和@AfterMethod方法中创建和删除了一个名为"c:/temp"的目录。在@Test方法中,我们列出了该目录中所有文件的名称。
@TestNG @AfterMethod注释是一个非常强大的功能,可以用于各种特殊的任务。在编写复杂的测试用例时,使用@TestNG @AfterMethod注释可以使测试代码更加健壮和可靠。