java TestNG数据驱动 dataprovider


java写自动化的时,使用dataprovider参数化。

dataprovider使用的是二维数组,所以从Excel读取数据后需保存为二维数组。

这里不讲读取Excel,直接写一个二维数组

 首先要声明某个方法为数据提供者,

@DataProvider(name = "ddt")
然后在调用的时候在方法上面加上
@Test(dataProvider = "ddt")
通过name这个名字来查找数据
 
public class TestDataProvider {

    @DataProvider(name = "ddt")
    public Object[][] data(){
        Object[][] data = new Object[2][3];
        data[0][0] = "aaa";
        data[0][1] = "bbb";
        data[0][2] = "fff";
        data[1][0] = "ccc";
        data[1][1] = "ddd";
        data[1][2] = "ggg";

        return data;
    }

    @Test(dataProvider = "ddt")
    public void test(String one, String two, String three){
        System.out.println(one);
        System.out.println(two);
        System.out.println(three);

    }

输出:

aaa
bbb
fff

ccc
ddd
ggg
 

注意:

new Object[2][3]; 长度必须与跳用方法的参数个数相等,否则会报错

org.testng.internal.reflect.MethodMatcherException:
Data provider mismatch


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM