Webdriver测试不会从下拉列表中选择选项

时间:2014-03-17 11:06:47

标签: java

我有结帐的注册表格,我必须从下拉列表中选择一个州,我已经写了一个脚本:

WebElement wb = driver.findElement(By.name("user_data[s_state]")) ;

Select selwb = new Select(wb) ;

selwb.selectByValue("KR");

driver.findElement(By.name("dispatch[checkout.update_steps]")).click() ;

但是在执行此脚本后,它没有从dropdown中选择给定值。因此我无法继续下一步。 Plz帮帮我....

3 个答案:

答案 0 :(得分:0)

我可以给你一个建议,因为我已经使用Selenium webdriver一段时间了。 webdriver执行得非常快。 Selenium驱动程序并不关心页面是否加载。所以我建议你在点击/选择事件之前添加代码,以确保完全加载页面。存在waitForPageLoad()或checkifComponent等选项,以确保在触发事件之前正确加载页面。希望这会对你有所帮助。

答案 1 :(得分:0)

如果有任何等待没有帮助 - 就像之前建议的那样 - 尝试选择例如。按索引或文字。
我有过这样的有线案例,其中ByValue / ByText / ByIndex方法之一没有工作,尽管其他方法确实有特定的下拉列表。

答案 2 :(得分:0)

如果您要选择下拉列表,请使用以下内容:

  1. 首先让webdriver等待
  2. 然后尝试在帮助下选择元素 driver.findElement(By.xpath(“值的xpath”)。选择
  3. OR

    您可以使用如下内容:

    new WebDriverWait(driver,30).until(ExpectedConditions.visibilityOfElementLocated(By.xpath(“值的xpath”)))。click();