2.3 TestNG之参数化DataProvider

package com.testng.base;

import org.testng.Assert;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;

public class NoNG {
	@Test
	public void test_001() {
		System.out.println("NoNG测试类--- 用例test001--- Test!");
		Assert.assertEquals(true, true);
	}
	
	@Test
	public void test_002() {
		System.out.println("NoNG测试类--- 用例test002--- Test!");
		Assert.assertEquals(true, true);
	}
	
	@Test
	@Parameters("name")
	public void test_parameter1(String name) {
    // 单参数时,	@Parameters("变量名")
    // 函数定义时,参数名可以与parameter中变量名不一样,只要位置&数量相符即可
		System.out.println("用例test_parameter--- 接收参数name=" +name);
		Assert.assertEquals(true, true);
	}
	
	@Test
	@Parameters({"name","age"})
	public void test_parameter2(String name,String age) {
		// 多参数时,	@Parameters({"变量名1","变量名2"})	
		System.out.println("用例test_parameter--- 接收参数name=" +name+",age="+age);
		Assert.assertEquals(true, true);
	}

}

TestNG是一个基于Java的测试框架,它支持测试驱动开发(TDD)和行为驱动开发(BDD)的测试方法。TestNG提供了丰富的功能,例如测试套件、测试用例、测试方法、测试参数、测试依赖、测试分组、断言、数据提供者等。使用TestNG可以轻松地编写和运行接口自动化测试。 以下是使用TestNG进行接口自动化测试的步骤: 1. 安装TestNG插件:在Eclipse或IntelliJ IDEA中安装TestNG插件,以便创建和执行测试。 2. 创建测试类:创建一个Java类,并用@Test注解来标记测试方法。例如: ``` import org.testng.annotations.Test; public class MyTest { @Test public void testGet() { // 编写测试代码 } } ``` 3. 运行测试:使用TestNG插件在Eclipse或IntelliJ IDEA中运行测试。 4. 添加断言:在测试方法中添加断言,验证测试结果是否符合预期。例如: ``` import org.testng.Assert; import org.testng.annotations.Test; public class MyTest { @Test public void testGet() { // 编写测试代码 String response = api.get(url); Assert.assertEquals(response, expectedResponse); } } ``` 5. 添加数据提供者:使用@DataProvider注解来提供测试数据,让测试方法可以使用不同的数据进行测试。例如: ``` import org.testng.annotations.DataProvider; import org.testng.annotations.Test; public class MyTest { @DataProvider(name = "testData") public Object[][] testData() { return new Object[][] { {"param1", "expected1"}, {"param2", "expected2"} }; } @Test(dataProvider = "testData") public void testGet(String param, String expected) { // 编写测试代码,使用param和expected进行测试 String response = api.get(url + param); Assert.assertEquals(response, expected); } } ``` 6. 添加测试依赖:使用@DependsOnMethods注解来指定测试方法之间的依赖关系,使得测试方法按照特定的顺序执行。例如: ``` import org.testng.annotations.Test; public class MyTest { @Test public void testLogin() { // 编写测试代码,登录系统 } @Test(dependsOnMethods = "testLogin") public void testGetUserInfo() { // 编写测试代码,获取用户信息 } } ``` 7. 运行测试套件:使用testng.xml文件来配置和运行测试套件,包括指定测试类、测试方法、测试参数、测试报告等。例如: ``` <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > <suite name="My Test Suite"> <test name="My Test"> <classes> <class name="com.example.MyTest"/> </classes> </test> </suite> ``` 以上是使用TestNG进行接口自动化测试的基本步骤,具体的测试场景和测试代码需要根据具体的项目需求进行编写。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值