第三节 TestNG测试框架

2019-07-21  本文已影响0人  我吃小虾米

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字母顺序执行,当存在相同字母时按照数字顺序执行。

未完。。。。。

上一篇下一篇

猜你喜欢

热点阅读