我遇到了一种情况,选择组合框值文本框值的变化。我需要等到文本框更改为特定值。我试过wait.Until,请帮我解决这个问题。
答案 0 :(得分:0)
如果您已经知道了值,那么在组合框更改后将在文本框中反映出来。然后你可以创建一个类似的xPath。
// * [含有(文本(), 'Expectedvalue']
然后创建一个方法来检查xPath是否可用。
public boolean isElementPresent(String xPath)`
{
try
{
this.driver.findElement(By.xpath(xPath);
return true;
}
catch()
{
return false;
}
}
然后你可以使用while循环检查
`//Do the code for changing combo box value
while(isElementPresent("//*[contains(text(),'Expectedvalue']")
{//do the necessary actions}`
答案 1 :(得分:0)
//假设编辑了组合框,文本框也可见
while(! driver.findElement(By.xpath("textboxXpath")).getText().equalsIgnoreCase("expected value"))
{
System.out.println("waiting for text to be loaded");
}
此循环结束时,必须使用预期值加载文本框 的注意:强> 这可能会导致您无限执行。实施有限制。
答案 2 :(得分:0)
while(! driver.findElement(By.id("id_of_combo_box")).getAttribute("value").equals("Expected Value"))
{/*Loops till value is written*/}
这里我们循环直到组合框的值等于期望值。