如何使用selenium+TestNG做web数据驱动测试

如何使用selenium+TestNG做web数据驱动测试,第1张

1.用@DataProvider注解,定义一个方法来返回集合的参数,这些参数就是我们的测试数据,这些参数会自动传给我们的测试类

2.添加@Test(dataProvider="testData")到类里面,使用TestNg,通过测试数据方法的名(testData),我们可以执行我们希望测试的集合参数。加上此注解@Test(dataProvider=”methond name”),Testng会自动解析方法中测试数据并输入相应的参数中。

数据驱动是最常见的自动化测试框架模式之一,TestNG亦支持数据驱动,常用的有@Parameters和@DataProvider两种注解。这次主要是记录dataprovider的用法。

使用DataProvider提供数据有两种形式:

定义一个函数,函数名随意取,使用@DataProvider注解,注解中用name给这个provider起名字,该函数返回一个二维数组。

可以看到该测试方法运行了3次,每一次都把一个DataProvider提供的数组作为自己的参数输入然后执行了测试。

这种方式需通过dataProviderClass属性来指定@DataProvider类位置,并且@DataProvider注解的方法保持静态(static)。示例:

运行test后,结果:

除了上述的return Object[][],@DataProvider注解的方法也允许使用迭代器,区别是迭代器允许你延迟创建自己的测试数据,TestNG会调用迭代器,之后测试方法会一个接一个的调用由迭代器返回的值。在你需要传递很多参数组给测试方法的时候,无须提前创建一堆值。

如果希望DataProvider对不同的Test方法使用不同的dataprovider,那么在DataProvider中可以使用Method参数。

这里根据调用DataProvider的函数名,返回了不同的参数。

由于没有指定运行顺序,所以Test会按照字母顺序执行,先执行getFirst,然后getSecond..

参考文档:

1、 https://my.oschina.net/771328074/blog/832423

2、 https://www.cnblogs.com/lixiaowei395659729/p/8717992.html

3、 https://www.cnblogs.com/beifucangqiong/p/11246988.html


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9875011.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存