1. 普通使用方法
import java.util.HashMap;
import java.util.Map;
public class TeamPro {
@DataProvider(name = "loginData")
public static Object[][] loginData(){
return new Object[][]{
{"正确的用户名和密码-管理员", "test@test.com","12345678",1,"200"},
{"用户名错误,密码正确-管理员", "test1111@test.com","12345678",1,"200"},
{"用户名正确,密码错误-管理员", "test@test.com","12345678999",1,"200"},
{"用户名和密码正确,账号类型错误-管理员", "test@test.com","12345678999",2,"200"}
};
}
@Test(groups = {"p0"},dataProvider = "loginData")
public void testLogin(String msg,String email,String pwd,int accoutType,String code){
Map<String, Object> paramMap = new HashMap<>();
paramMap.put("type",accoutType);
paramMap.put("email",email);
paramMap.put("pwd",pwd);
String result = HttpUtils.doPost("http://111.111.1111.111:111/test/login",paramMap);
Assert.assertTrue(result.contains("\"code\":\"200\",\"msg\":\"ok\""),msg);
}
}
2. 带有method,根据调用方法的不同,返回不同的参数
public class TestData {
@DataProvider
public Object[][] dataProvider(Method method){
DataSource data = new DataSource();
Object[][] obj = data.dataSource().get(method.getName());
return obj;
}
@Test(dataProvider="dataProvider")
public void fromXml(int a, int b){
int sum = a + b;
System.out.println(a+" + "+b+" = "+sum);
}
@Test(dataProvider="dataProvider")
public void fromExcel(int a, int b){
int sum = a + b;
System.out.println(a+" + "+b+" = "+sum);
}
}