TestNG实战自动化测试框架——TestNG介绍、单元测试、忽略测试、套件测试

本文详细介绍了测试框架TestNG的特点及应用,对比JUnit强调其在复杂集成测试中的优势。通过实例展示了如何使用注解来组织测试用例,包括测试方法、前后置条件设置等,并通过XML配置文件实现对测试套件的控制。

测试框架TestNG:

适合测试人员使用的原因:

  • 比JUnit涵盖功能更全面的测试框架
  • JUnit更适合隔离性比较强的单元测试
  • TestNG更适合复杂的集成测试

单元测试

使用注解:
@Test:运行单个测试方法
@BeforeMethod @AfterMethod :在每个测试方法前(后)都运行的方法
@BeforeClass @AfterClass:在每个测试类前(后)运行的方法
@BeforeSuite @AfterSuite:在每个测试套件(一个套件包含多个类)前(后)运行的方法

忽略测试:暂时不执行的方法

@Test(enable=false)
public void method(){}

套件测试:使用套件控制多个类方法的执行顺序。

xml配置文件suite.xml控制登录、支付顺序

<?xml version="1.0" encoding="UTF-8"?>
<suite name="test">

<test name="login">
	<classes>
		<class name="com.course.testng.SuiteConfig" />
		<class name="com.course.testng.LoginTest" />
	</classes>
</test>

<test name="pay">
	<classes>
		<class name="com.course.testng.SuiteConfig" />
		<class name="com.course.testng.PayTest"/>
	</classes>
</test>

</suite>

类SuiteConfig:控制在套件前、后运行的方法

import org.testng.annotations.*; 

public class SuiteConfig {
	
	@BeforeSuite
	public void BeforeSuite() {
		System.out.println("BeforeSuite运行了");
	}
	
	
	
	@AfterSuite
	public void AfterSuite() {
		System.out.println("AfterSuite运行了");
	}
}

类LoginTest控制登录方法

import org.testng.annotations.Test;

public class LoginTest {
	
	@Test
	public void loginTB() {
		System.out.println("淘宝登录成功");
	}
}

类PayTest;控制支付方法

import org.testng.annotations.Test;

public class PayTest {

	@Test
	public void payTest() {
		System.out.println("支付成功");
	}
}

执行结果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值