Selenium:如何在for循环

时间:2017-10-29 17:39:52

标签: java selenium xpath

我试图获得随时间变化的weblement值。值为 - Pending, Approved, Received

当值更改为Received时,我必须停止循环。我尝试了下面的代码,但它成功运行了一个循环,然后在第二个循环中停止,错误为webelement not found with the given xpath

for(int i=0;i<=50;i++)
{
    String exactvalue=driver.findElement(By.xpath("//tr[2]/td")).getText();
        if (exactvalue.equals("Received"))
        {
            break;
        }
        else 
        {
        driver.navigate().refresh();
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            throw new RuntimeException("executing sleep interrupted");
        }

        }
    }

1 个答案:

答案 0 :(得分:1)

从代码中替换下面一行。

您的代码:

String exactvalue=driver.findElement(By.xpath("//tr[2]/td")).getText();

替换为:

String exactvalue=driver.findElement(By.xpath("//tr["+i+"]/td")).getText();