如何对findElement代码使用increment方法

时间:2017-06-07 07:15:17

标签: java selenium selenium-webdriver selenium-chromedriver

我坚持如何将增量隐含在查找元素代码中

这是代码

driver.findElement(By.xpath("(//a[@class='_8mlbc _vbtk2 _t5r8b'])[13]")).click();

我需要将13改为13 + 1和14 + 1,等等每次循环发生。

2 个答案:

答案 0 :(得分:1)

使用变量

for (int i = 13 ; i < limit ; ++i) {
    driver.findElement(By.xpath("(//a[@class='_8mlbc _vbtk2 _t5r8b'])[" + i + "]")).click();
}

答案 1 :(得分:0)

我会选择这样的东西:

int ord = 13;
String xpath = "(//a[@class='_8mlbc _vbtk2 _t5r8b'])[%s]";
// some sort of loop starts, e.g. while, for, etc
    driver.findElement(By.xpath(String.format(xpath, ord))).click();
    ord++;
// the loop ends

说明:String.format()允许您使用类似printf的字符串模板。在您的情况下,模板的可变部分是序数ord。只要有必要,您可以使用ord++递增它。