zoukankan      html  css  js  c++  java
  • testng之DataProvider参数化

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

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

    例如:当我们测试用户登录,我们测试场景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
  • 相关阅读:
    在Dockerfile CMD一次执行多个命令
    文本中字符串替换
    centos登录密码正确但一直报login incorrect错误(错误赋予权限)
    kafka使用时的问题
    elasticsearch使用问题
    Redis常见问题
    tomcat常见问题
    JavaScript的BOM对象
    JavaScript的DOM操作
    JavaScript常用对象介绍
  • 原文地址:https://www.cnblogs.com/jesse-zhao/p/14824088.html
Copyright © 2011-2022 走看看