【发布时间】:2016-03-19 06:43:14
【问题描述】:
我有一个由 3 个 java 类组成的 Testng 套件,用于自动化移动应用程序的 3 个不同页面:
Class 1(这是关于注册&将数据从excelsheet导入String数组,然后在应用程序的第1页输入数据。AndroidDriver也在这个类中初始化。)
Class 2 扩展了 Class 1(这是关于付款的)
第 3 类(关于审核的最后一页。有一个按钮可以返回第 1 页注册以开始新订单)
现在我要做的是根据 excelsheet 中填充的行数继续运行套件。
执行顺序应该是:
- 从 XLS 导入第 1 行 => 1 类 -> 2 类 -> 3 类(如果另一个 行存在)
- 从 XLS 导入第 2 行 => 1 类 -> 2 类 -> 第 3 类(如果存在另一行)
- 从 XLS => 类导入第 3 行 1 -> Class 2 -> Class 3(结束测试,因为没有更多的行)
我怎样才能做到这一点?我一直在阅读有关 DataProvider 和工厂的信息,但我从未使用过它们,所有其他帖子似乎都表明这个问题只能通过使用它们来解决。我正在使用由 2 类和 3 类继承的单个驱动程序实例。我在测试中合并了 Apache POI 库,以便从 XLSX 文件中读取数据,并将其成功存储在数组中。
更新 这段代码正确吗?
public class WebTestFactory {
@Factory
public Object[] createInstances() {
Object[] result = new Object[number of rows];
for (int m = 0; m < number of rows; m++) {
result[m] = m;
}
return result;
}
}
【问题讨论】:
标签: java excel testng test-suite