首页 > 编程知识 正文

数据驱动测试又称,数据驱动测试

时间:2023-05-05 15:31:39 阅读:204560 作者:38

适用场景

测试搜索功能, 基于数据类型需要测多种不同的数据, 比如最大值, 小数, 负数, 字符串, 特异符号等等.

 

如果直接写代码, 每一种数据类型都需要写一遍代码, 冗长且不方便调试.

如果采用数据驱动框架, 只需要写一遍代码, 把所有的测试数据通过dataProvider传入, 即可完成所有的测试.

 

代码

package com.thanos.ebony2;import static com.thanos.ebony2.bean.AntFormBrowser.BROWSER;import java.io.IOException;import java.util.LinkedHashMap;import java.util.Map;import org.testng.annotations.DataProvider;import org.testng.annotations.Test;import com.thanos.ebony2.bean.AntForm;import com.thanos.ebony2.bean.AntProp;public class search { @DataProvider(name = "testData") public Object[][] dataProvider(){ return new Object[][] {{"3", "3"},{"9", "9"},{"abc", "def"},{"!", "!"}}; //这里传了两个数据, 是希望一个是搜索时输入的搜索值,另一个作为搜索结果来验证搜索功能. 因为这里主要是为了试用数据驱动,所以下面的代码仅包含输入搜索值搜索部分. } @Test(dataProvider = "testData") public void test(String a, String b) throws IOException { BROWSER.open(AntProp.getProp("URL")); BROWSER.pause(1); AntForm form = new AntForm("//*[@id="abc"]"); Map<String, Object> param = new LinkedHashMap<>();// param.put("ABC", new String[] {"greater_than","1"}); //这里是封装了一套方法, 把输入行为变成找到label, 然后在相应的输入框内输入(输入框包含两部分: 比较符号 <equals, greater_than, less_than>+ 输入值).// param.put("ABC", new String[] {"less_than","88"}); param.put("ABC", new String[] {"equals", a}); form.fill(param); BROWSER.capture("input"); form.clickButton("Filter"); BROWSER.pause(1); BROWSER.capture("test");

 

TestNG返回执行结果

 

转载于:https://www.cnblogs.com/cheese320/p/9234832.html

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。