@test注解_testNG--常用注解

v2-8b69b2afd9374771165af2a1f5ae4ad0_1440w.jpg?source=172ae18b

一、常见测试用例组织结构如下:

  • Test Suite由一个或多个Test组成。
  • Test 由一个或者多个测试Class组成。
  • 一个测试class由一个或者多个测试方法组成。

在testing.xml中的配置如下。

<suite>
    <test>
        <classes>
            <method>
            
            </method>
        </classes>
    </test>
</suite>

二、常用注解如下

  • @BeforeSuite:表示此注解的方法会在当前测试集合(Suite)中的任一测试用例开始之前执行。
  • @AfterSuite:表示此注解的方法会在当前测试集合(Suite)中的所有测试程序运行结束之后执行。
  • @BeforTest:表示此注解方法会在Test中任一测试用例开始运行前执行。
  • @AfterTest:表示此注解方法会在Test中所有测试用例运行结束后执行。
  • @BeforGroups:表示此注解的方法会在分组测试用例的任一测试用例开始前执行。
  • @AfterGroups:表示此注解的方法会在分组测试用例的所有测试用例运行结束后执行。
  • @BeforeClass:表示此注解的方法会在当前测试类的任一测试用例开始前执行。
  • @AfterClass:表示此注解的方法会在当前测试类的所有测试测试用例运行结束后执行。
  • @BeforeMethod:表示此注解的方法会在每个测试方法开始运行前执行。
  • @AfterMethod:表示此注解的方法会在每个测试方法运行结束后执行。
  • @Test:表示此注解的方法会被认为是一个测试方法,即一个测试用例。
public class TestNG {
	@Test
	public void testCase1(){
		System.out.println("测试用例1被执行!");
	}
	
	@Test
	public void testCase2(){
		System.out.println("测试用例2被执行!");
	}
	
	@BeforeMethod
	public void beforeMethod(){
		System.out.println("在每个测试方法开始运行前执行!");
	}
	
	@AfterMethod
	public void afterMethod(){
		System.out.println("在每个测试方法运行结束后执行!");
	}
	
	@BeforeClass
	public void beforeClass(){
		System.out.println("在每个测试类的第一个测试方法开始调用前执行!");
	}
	@AfterClass
	public void afterClass(){
		System.out.println("当前测试类的最后一个测试方法结束运行后执行!");
	}
	
	@BeforeTest
	public void beforeTest(){
		System.out.println("在测试类中的Test开始运行前执行!");
	}
	@AfterTest
	public void afterTest(){
		System.out.println("在测试类中的Test运行结束后执行!");
	}
	
	@BeforeSuite
	public void beforeSuite(){
		System.out.println("在当前测试集合Suite中的所有测试程序开始之前执行!");
	}
	@AfterSuite
	public void afterSuite(){
		System.out.println("在当前测试集合Suite中的所有测试程序运行结束后执行!");
	}
	

}
//testng.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
  <test thread-count="5" name="Test">
    <classes>
      <!-- 可添加多个class形成测试集合 -->
      <class name="com.testng.test.AnnotationTest"/>
    </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->

//输出结果:
在当前测试集合Suite中的所有测试程序开始之前执行!
在测试类中的Test开始运行前执行!
在每个测试类的第一个测试方法开始调用前执行!
在每个测试方法开始运行前执行!
测试用例1被执行!
在每个测试方法运行结束后执行!
在每个测试方法开始运行前执行!
测试用例2被执行!
在每个测试方法运行结束后执行!
当前测试类的最后一个测试方法结束运行后执行!
在测试类中的Test运行结束后执行!
PASSED: testCase1
PASSED: testCase2

===============================================
    Default test
    Tests run: 2, Failures: 0, Skips: 0
===============================================

在当前测试集合Suite中的所有测试程序运行结束后执行!

===============================================
Default suite
Total tests run: 2, Failures: 0, Skips: 0
===============================================
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值