TestNg dataProvider数据提供的两种方法实现

上一篇 / 下一篇  2013-01-15 15:14:14 / 个人分类:TestNG

两种方法返回的都是Java User实体对象

dataProvider作为数据提供者只能返回Object[][]和Iterator<Object[]>类型的数据
直接看代码:

public  class UserInfo {

@DataProvider 
public Object[][]   getUserInfo1(){
List<Object> item=new ArrayList<Object>();;
User user=new User();
user.setName("1037350");
user.setPass("abc123");
item.add(user);
Object[][] result=new Object[item.size()][];
for(int i=0;i<item.size();i++){
result[i]=new Object[]{item.get(i)};
}
return  result;
}
@DataProvider 
public Iterator<Object[]> getUserInfo2(){
List<User> item=new ArrayList<User>();;
User user=new User();
user.setName("1037350");
user.setPass("abc123qeqwwe");
item.add(user);
List<Object[]> dataToBeReturned = new ArrayList<Object[]>();
 for (User userData : item)
       {
           dataToBeReturned.add(new Object[] { userData } );
       }
return  dataToBeReturned.iterator();
}

}

public class HelloTestNg extends UserInfo{

@Test(dataProvider="getUserInfo2",
public void printUser(User user ){
System.out.println(user.getName()+":"+
user.getPass());
}
}

TAG: dataProvider TestNG testNG testng

 

评分:0

我来说两句

Open Toolbar