1

我正在尝试创建一个混合框架,我将从 Excel 表中传递对象名称和相应的值。这是我想做的

FieldName   Type   Value1   Value2  Value3  
FName       Edit   John     Smith   Carla    
LName       Edit   Fellow   Carson  Black    
Submit      Link   Click    Click   Click    
  • 字段名称:包含用于标识对象的 Xpath 或 ID
  • 类型:包含类型,如文本框或列表框等,以便我可以使用 IF 循环相应地处理对象的每个 TYPE。
  • 值 1..3..:我想要运行测试(对象)的不同值。

我该如何使用数据提供程序来执行此操作,因为理想情况下,当我使用不同的数据值时,前 2 列需要保持不变。此外,数据提供者似乎正在逐行读取数组。抱歉,如果这是一个基本问题,我是 testNG 的新手,听说过一些很棒的事情,想去看看。

4

1 回答 1

0

数据提供者返回对您有用的任何数据,因此您只需考虑如何将此电子表格转换为您的测试方法将接受的对象。例如,如果您希望测试每列采用一个参数:

@Test(dataProvider = "dp")
public void f(String fieldName, String type, String value1, String value2, String value3) {
  // test
}

@DataProvider
public Object[][] dp() {
  // read the spreadsheet
  return new Object[][] {
    new Object[] { fieldName, type, value1, value2, value3 },  // row 1
    new Object[] { fieldName, type, value1, value2, value3 },  // row 2
  }
}
于 2012-06-14T17:17:10.120 回答