0

我正在使用“delnames”对象数组来创建这些动物园项目,并且在另一种方法中我想删除它们。创建需要单独的方法,但删除不需要,只需单击删除即可。所以我想在同一个 dataprovider 对象数组上迭代它。
这就是我想要实现的目标;我正在使用 java 在 ubuntu 上编写我的脚本。

@DataProvider(name = "delnames")
    public Object[][] dnames() {
        return new Object[][] { { "zoo" }, { "owl" }, { "lion"}, 
                      { "Peacock" }, { "Chimp" }, { "Fish" }, {"Duck"} };
    }

@Test(dataProvider = "delnames")
public void delete(String name1){
for (lenth of dnames){ ================ >> HOW ?????
driver.findElement(By.linkText("delete"));
syso(name1+" is deleted");
}
}
4

3 回答 3

1

如果是 ArrayList 或 Vector:

for (int i = 0; i < dnames.size(); i++) {
    ...
}

如果是数组:

for (int i = 0; i < dnames.length; i++) {
    ...
}
于 2013-04-11T10:55:53.000 回答
0

我认为您可以使用选择一维数组,而不是二维数组。

Object dnames [] = new Object[]{"owl","zoo","Chimp","Fish","Duck"};

我们可以循环遍历一维数组,如下所示

for(Object item: dnames)
{
System.out.println(item); // do your stuff here with item  
}
于 2013-04-11T10:59:40.573 回答
0
@Test(dataProvider = "delnames")
public void delete(String name1){
  for (Object[] params : dnames()) {
    for (Object o : params) {
      ...
    }
  }
}

显然,您不想在您的测试方法中这样做,因为dnames()它是它的数据提供者,但我假设您只是将其作为示例显示。

于 2013-04-11T22:48:59.193 回答