码迷,mamicode.com
首页 > 其他好文 > 详细

testng之DataProvider参数化

时间:2021-06-02 15:07:53      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:ide   通过   void   使用   provider   name   用户   运行   冗余   

背景:当我们同一条用例需要传入不同的参数进行测试时,我们可以每组数据写一个用例,但是这样代码冗余太多。

所以我们可以想着:同一个用例传入不同的参数。

例如:当我们测试用户登录,我们测试场景1:用户A,密码正确; 场景2:用户B,密码不正确

我们只是编写一个登录测试用例,而传入的参数是两组不同的数据。

 

方法:

@Test(dataProvider=‘参数化名称‘)

@DataProvider(name=‘参数化名称‘)

 

代码演示:

 

public class DataProviderTest {

    @Test(dataProvider = "stuData")  //这个名称需要和@DataProvider(name=‘xx‘)是一样的才能找到
    public void studentTest(String name,int age){
        System.out.println("name="+name+","+"age="+age);

    }

    /**
     * 通过一个方法获取到参数数,并且return。使用@DataProvider()进行注释
     * @return
     */
    @DataProvider(name="stuData")
    public Object[][] dataProvider(){
        Object[][] o =new Object[][]{   //注意我们这个类型必须是Object
                {"zhangsan",20},
                {"lisi",30},
                {"wangwu",40}
        };
        return o;
    }
}

//运行结果

name=zhangsan,age=20

name=lisi,age=30

name=wangwu,age=40

 

testng之DataProvider参数化

标签:ide   通过   void   使用   provider   name   用户   运行   冗余   

原文地址:https://www.cnblogs.com/jesse-zhao/p/14824088.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!