TestNg的基础知识一

基本注解:

 在日常的自动化测试过程中,经常有打开浏览器、访问数据库或者其他共性的前置操作,在使用TestNg的测试框架中,可以使用以下方法进行操作
  • @BeforeSuite - 对于套件测试,在此套件中的所有测试运行之前运行。@AfterSuite - 对于套件测试,在此套件中的所有测试运行之后运行。
  • @BeforeTest - 对于套件测试,在运行属于标签内的类的任何测试方法之前运行。
  • @AfterTest - 对于套件测试,在运行属于标签内的类的所有测试方法都已运行之后运行。
  • @BeforeGroups:在调用属于该组的第一个测试方法之前运行。
  • @AfterGroups:在调用属于组的最后一个测试方法之后运行。
  • @BeforeClass- 在当前类的第一个测试方法之前运行。
  • @AfterClass - 运行当前类中的所有测试方法之后都运行。
  • @BeforeMethod - 在每个测试方法之前运行。
  • @AfterMethod - 在每个测试方法之后运行。

代码示例

import org.testng.annotations.*;

public class TestNgDemo1 {
@BeforeSuite
public void beforeSuite(){
    System.out.println("beforeSuite");
}

@BeforeClass
public void beforeClass(){
    System.out.println("beforeClass");
}

@BeforeMethod
public void beforeMethod(){
    System.out.println("beforeMethod 每个测试类执行一次");
}

@BeforeTest
public void beforeTest(){
    System.out.println("beforeTest");
}

@AfterGroups
public void beforeGroups(){
    System.out.println("beforeGroups");
}

@Test
public void test_001(){
    System.out.println("test 测试类开始执行");
}

@Test
public void test_002(){
    System.out.println("test 第二个测试类");
}

@AfterSuite
public void afterSuite(){
    System.out.println("afterSuite");
}

@AfterClass
public void afterClass(){
    System.out.println("afterClass");
}

@AfterMethod
public void AfterMethod(){
    System.out.println("afterMethod 每个测试类执行一次");
}

@AfterTest
public void AfterTest(){
    System.out.println("afterTest");
}

@AfterGroups
public void afterGroups(){
    System.out.println("afterGroups");
}
}

执行结果:
beforeSuite
beforeTest
beforeClass
beforeMethod 每个测试类执行一次
test 测试类开始执行
afterMethod 每个测试类执行一次
beforeMethod 每个测试类执行一次
test 第二个测试类
afterMethod 每个测试类执行一次
afterClass
afterTest
afterSuite
原文地址:https://www.cnblogs.com/qixc/p/13046424.html