Java Selenium-Web驱动程序等待
以下是我通常编写的查找name=“email”元素的方法 如果有如下所示的元素模态体呢Java Selenium-Web驱动程序等待,java,selenium,Java,Selenium,以下是我通常编写的查找name=“email”元素的方法 如果有如下所示的元素模态体呢 WebElement modalBody = enrollForm.findElement(By .className("modal-body")); 现在,如果我要在另一个WebElement中找到一个特定的WebElement,比如 WebElement a = driver.findElement(By.id("KeepSmiling"); WebElement b = a.findE
WebElement modalBody = enrollForm.findElement(By
.className("modal-body"));
现在,如果我要在另一个WebElement中找到一个特定的WebElement,比如
WebElement a = driver.findElement(By.id("KeepSmiling");
WebElement b = a.findElement(By.className("ChocolatesMakeMeSizzle");
这里b
是a
中的一个元素。因为还有很多其他div使用className->chocolatesmakesizzle
我也希望这样做,但是使用WebDriverWait
。我使用Thread.sleep(xx)
来避免这个问题,但这是一个非常糟糕的方法
以下是我尝试过的(但我意识到我试图减慢一个毫无意义的Web元素的速度)
如何做到这一点有什么建议吗
坦白:老实说,我是在避免这种方法,而是使用Thread.sleep(xx)
我能够使用xpath并找到方法,但我希望我的问题能得到答案!:)
如果DOM中存在该元素,则模态应该没有问题。
我正在测试一个大系统,所有的形式都是模态的,我们在使用预期条件查找元素时没有任何问题
另外,为了查找,可以使用XPATH
下面是一个例子:
//input[包含(@class,'name')]/following::input[@type='Button']
如果DOM中存在该元素,则模态应该没有问题。
我正在测试一个大系统,所有的形式都是模态的,我们在使用预期条件查找元素时没有任何问题
另外,为了查找,可以使用XPATH
下面是一个例子:
//input[包含(@class,'name')]/following::input[@type='Button']
如果DOM中存在该元素,则模态应该没有问题。
我正在测试一个大系统,所有的形式都是模态的,我们在使用预期条件查找元素时没有任何问题
另外,为了查找,可以使用XPATH
下面是一个例子:
//input[包含(@class,'name')]/following::input[@type='Button']
如果DOM中存在该元素,则模态应该没有问题。
我正在测试一个大系统,所有的形式都是模态的,我们在使用预期条件查找元素时没有任何问题
另外,为了查找,可以使用XPATH
下面是一个例子:
//input[contains(@class='name')]/following::input[@type='Button']谢谢。如果ID不起作用,我可能会使用xpath。老实说,我不太擅长XPath。我最终肯定能找到它,但我希望使用modalBody…不知何故…id和类名让我感觉像是在一个安全的泡泡中。你能发布该modal的HTML吗?在xpath中,您可以使用一些函数,如contains、text(),以及导航函数,如/following等。这很有帮助!:)不用再担心了,我坐下来想了想尽管如此,我真的希望我能用我想要的方式使用它:(谢谢。如果id不起作用,我可能会使用xpath。老实说,我不太擅长w/xpath。我最终肯定能找到它,但我希望使用modalBody…不知何故…id和类名让我感到安全。你能发布该模式的HTML吗?在xpath中,你可以使用一些函数,如contains、text(),以及导航功能,如/以下功能等。这很有帮助!:)不用担心,我坐下来想了想!:尽管如此,我真的希望我能以我想要的方式使用它:(谢谢。如果id不起作用,我可能会使用xpath。老实说,我不太擅长w/xpath。我最终肯定能找到它,但我希望使用modalBody…不知何故…id和类名让我感到安全。你能发布该模式的HTML吗?在xpath中,你可以使用一些函数,如contains、text(),以及导航功能,如/以下功能等。这很有帮助!:)不用担心,我坐下来想了想!:尽管如此,我真的希望我能以我想要的方式使用它:(谢谢。如果id不起作用,我可能会使用xpath。老实说,我不太擅长w/xpath。我最终肯定能找到它,但我希望使用modalBody…不知何故…id和类名让我感到安全。你能发布该模式的HTML吗?在xpath中,你可以使用一些函数,如contains、text(),以及导航功能,如/以下功能等。这很有帮助!:)不用担心,我坐下来想了想!:尽管如此,我真的希望我能以我想要的方式使用它:(我们可以用你的问题中的一些html来帮助xpath。我们可以用你的问题中的一些html来帮助xpath。我们可以用你的问题中的一些html来帮助xpath。我们可以用你的问题中的一些html来帮助xpath。
WebElement a = driver.findElement(By.id("KeepSmiling");
WebElement b = a.findElement(By.className("ChocolatesMakeMeSizzle");
WebElement emailInput = (new WebDriverWait(modalBody, 10))
.until(ExpectedConditions.presenceOfElementLocated(By
.name("email")));
WebElement emailInput = (new WebDriverWait(driver, 10))
.until(ExpectedConditions.elementToBeClickable(By
.xpath("some_complex_xpath")));