【问题标题】:How to select the location from a field which fetches result from google map api using selenium webdriver(Java)如何从使用 selenium webdriver(Java)从谷歌地图 api 获取结果的字段中选择位置
【发布时间】:2016-12-28 02:11:39
【问题描述】:

我尝试使用 selenium 输入完整的字段值,但这不起作用。它需要从显示的建议中进行选择。任何人都知道如何从建议节目中进行选择。

注意:我使用的是混合框架。

【问题讨论】:

  • 不清楚。向我们展示您目前拥有的代码。
  • 欢迎来到 Stack Overflow!能否在您努力解决问题的同时,在内容中提供更好的标题和更详细的信息?

标签: java selenium selenium-webdriver automated-tests


【解决方案1】:

类似下面的?如果是,请将 Thread.sleep 替换为显式等待。

        WebDriver driver = new ChromeDriver();
        driver.manage().window().maximize();
        driver.get("https://www.google.co.in/maps?source=tldso");
        Thread.sleep(3000);
        driver.findElement(By.id("searchboxinput")).sendKeys("Kora");
        Thread.sleep(3000);
        List<WebElement> autoSuggestions=driver.findElement(By.className("sbsb_b")).findElements(By.tagName("li"));
        for (WebElement suggestions : autoSuggestions) {
            if (suggestions.getText().contains("Koramangala Police Station")) {
                suggestions.click();
                Thread.sleep(3000);
                break;
            }
        }
        driver.quit();

【讨论】:

  • 但是,如果您的内容是任何较大文本的子内容,您可以使用 .equals 而不是 .contains。就像如果您正在寻找“Koramangala”,那么 .contains 可以为“Koramangala Police Station”返回 true。
  • 感谢您的建议!
猜你喜欢
  • 1970-01-01
  • 2016-07-17
  • 2012-05-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多