第三节 TestNG测试框架

TestNG介绍

一、测试人员使用的原因
1、比Junit涵盖功能更全面的测试框架
2、Junit更适合隔离性比较强的单元测试
3、TestNG更适合复杂的集成测试

二、TestNG基本注解与执行顺序


执行顺序为:
beforesuite->beforetest->beforeclass->beforemethod->aftermethod->afterclass->aftertest->aftersuite
举个栗子

package package1;

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 NewTest {
  @Test
  public void test2() {
      System.out.println("test2");
  }
  @Test
  public void test1() {
      System.out.println("test1");
  }
  @BeforeMethod
  public void beforeMethod() {
      System.out.println("beforeMethod");
  }

  @AfterMethod
  public void afterMethod() {
      System.out.println("afterMethod");
  }

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

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

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

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

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

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

}

输出的结果

beforeTest
beforeClass
beforeMethod
test1
afterMethod
beforeMethod
test2
afterMethod
afterClass
afterTest

如上代码中有2个test,查看输入,并非是按照顺序先执行test2再执行test1。原因是test执行顺序是按照a-z字母顺序执行,当存在相同字母时按照数字顺序执行。

未完。。。。。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。