无法在Google的高级搜索页面上选择下拉列表项

时间:2017-10-07 09:24:03

标签: selenium selenium-webdriver automated-tests selenium-rc browser-automation

问题: 无法从下拉列表中选择语言。

请帮助!!

测试步骤:

  1. 转到https://www.google.co.in/
  2. 点击右下角的“设置”。
  3. 现在点击“高级搜索”
  4. 将打开高级搜索页面。
  5. 点击名称为“任何语言”的下拉列表。
  6. 将打开语言下拉列表。
  7. 从下拉列表中选择任何语言,例如印地语。
  8. 代码如下:

    <?php
    $data = ["8:10:12", "13:7:14", "13:25:6"];
    
    array_walk($data, function(&$time) {
        preg_match('|^(\d+):(\d+):(\d+)$|', $time, $token);
        $time = (new DateTime())->setTime($token[1], $token[2], $token[3])->format("H:i:s");
    });
    
    
    print_r($data);
    

2 个答案:

答案 0 :(得分:1)

您的代码在Chrome中运行良好,请尝试使用此代码,它可以在Firefox和Chrome中使用

在Firefox和Chrome中试用此代码:

        System.setProperty("webdriver.chrome.driver","E:/software and tools/chromedriver_win32/chromedriver.exe");
    WebDriver driver=new ChromeDriver();
      driver.manage().window().maximize();
      driver.get("https://www.google.co.in/");

      driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
        driver.findElement(By.xpath(".//*[@id='fsettl']")).click();
        driver.findElement(By.xpath(".//*[@id='advsl']/a[text()='Advanced search']")).click();
        driver.findElement(By.cssSelector("#lr_button")).click();               
        WebElement dropDown=driver.findElement(By.id("lr_menu"));
        List<WebElement> options=dropDown.findElements(By.tagName("li"));
        System.out.println(options.size());
        for(int i=0;i<options.size();i++){

            String langName=options.get(i).getText();
            if(langName.contains("Hindi"))
            {
                options.get(i).click();
                break;
            }

        }    

答案 1 :(得分:1)

System.setProperty("webdriver.chrome.driver", "./drivers/chromedriver.exe");
  WebDriver driver= new ChromeDriver();
  driver.get("https://www.google.co.in/");
  driver.manage().window().maximize();
  driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
  driver.findElement(By.xpath("//a[@id='fsettl']")).click();
  Thread.sleep(3000);
  driver.findElement(By.xpath("//span[@id='advsl']//a")).click();
  Thread.sleep(10000);
  driver.findElement(By.xpath("//div[@id='lr_button']")).click();
  driver.manage().timeouts().implicitlyWait(2000, TimeUnit.SECONDS);
  driver.findElement(By.xpath("//ul[@id='lr_menu']//li[23]")).click();


}
相关问题