为了账号安全,请及时绑定邮箱和手机立即绑定

无法使用 selenium webdriver 从应用程序中第二个字段的自动填充值中选择值

无法使用 selenium webdriver 从应用程序中第二个字段的自动填充值中选择值

千巷猫影 2022-05-12 15:17:49
下面的代码适用于应用程序中的第一个字段,而相同的代码不适用于第二个字段。如果我们只执行能够看到预期输出的第二个字段步骤。尝试了所有类型的等待。但无法解决。有人可以查看下面的代码并建议我做错了什么。package com.qa.base;import java.util.List;import java.util.concurrent.TimeUnit;import org.openqa.selenium.By;import org.openqa.selenium.Keys;import org.openqa.selenium.NoSuchElementException;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.support.ui.ExpectedConditions;import org.openqa.selenium.support.ui.WebDriverWait;public class Sample {    public static WebDriver driver;    public static void main(String[] args) throws InterruptedException {        System.setProperty("webdriver.chrome.driver",                "C:\\Users\\Avanthi\\Downloads\\chromedriver_win32\\chromedriver.exe");        driver = new ChromeDriver();        driver.manage().deleteAllCookies();        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);        driver.manage().timeouts().pageLoadTimeout(20, TimeUnit.SECONDS);        driver.manage().window().maximize();        driver.get("https://www.abhibus.com/");        // driver.findElement(By.id("source")).sendKeys("adi");        driver.findElement(By.id("source")).sendKeys("Bang");        WebDriverWait wait = new WebDriverWait(driver, 30);        wait.until(ExpectedConditions                .visibilityOfAllElementsLocatedBy(By.xpath("//li[@class='ui-menu-item']//parent::li")));        List<WebElement> list = driver.findElements(By.xpath("//li[@class='ui-menu-item']//parent::li"));        System.out.println("Auto Suggest List ::" + list.size());        for (int i = 0; i < list.size(); i++) {            System.out.println(list.get(i).getText());            if (list.get(i).getText().equalsIgnoreCase("Bangalore Kempegowda Intl Airport")) {                System.out.println(list.get(i).getText());                list.get(i).click();                break;            }
查看完整描述

1 回答

?
蛊毒传说

TA贡献1895条经验 获得超3个赞

package com.qa.base;


import java.util.List;

import java.util.concurrent.TimeUnit;

import org.openqa.selenium.By;

import org.openqa.selenium.Keys;

import org.openqa.selenium.NoSuchElementException;

import org.openqa.selenium.WebDriver;

import org.openqa.selenium.WebElement;

import org.openqa.selenium.chrome.ChromeDriver;

import org.openqa.selenium.support.ui.ExpectedConditions;

import org.openqa.selenium.support.ui.WebDriverWait;


public class Sample {


    public static WebDriver driver;


    public static void main(String[] args) throws InterruptedException {


        System.setProperty("webdriver.chrome.driver",

                "C:\\Users\\Avanthi\\Downloads\\chromedriver_win32\\chromedriver.exe");

        driver = new ChromeDriver();

        driver.manage().deleteAllCookies();

        driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

        driver.manage().timeouts().pageLoadTimeout(20, TimeUnit.SECONDS);

        driver.manage().window().maximize();

        driver.get("https://www.abhibus.com/");



        driver.findElement(By.id("source")).sendKeys("Bang");


        WebDriverWait wait = new WebDriverWait(driver, 30);


        wait.until(ExpectedConditions

                .visibilityOfAllElementsLocatedBy(By.xpath("//li[@class='ui-menu-item']//parent::li")));


        List<WebElement> list = driver.findElements(By.xpath("//li[@class='ui-menu-item']//parent::li"));


        System.out.println("Auto Suggest List ::" + list.size());


        for (int i = 0; i < list.size(); i++) {

            System.out.println(list.get(i).getText());


            if (list.get(i).getText().equalsIgnoreCase("Bangalore Kempegowda Intl Airport")) {

                System.out.println(list.get(i).getText());

                list.get(i).click();

                break;

            }

        }


        try {

            driver.findElement(By.id("destination")).sendKeys("Chen");

            WebDriverWait wait1 = new WebDriverWait(driver, 60);

            wait1.until(ExpectedConditions

                    .visibilityOfAllElementsLocatedBy(By.xpath("//li[@class='ui-menu-item']//parent::ul//following::ul//li")));

            List<WebElement> goingtolist = driver.findElements(By.xpath("//li[@class='ui-menu-item']//parent::ul//following::ul//li"));

            System.out.println("Auto Suggest List ::" + goingtolist.size());


            for (int i = 0; i < goingtolist.size(); i++) {

                System.out.println(goingtolist.get(i).getText());


                if (goingtolist.get(i).getText().equalsIgnoreCase("Chengannur Railway Station")) {

                    System.out.println(goingtolist.get(i).getText());

                    goingtolist.get(i).sendKeys(Keys.TAB);

                    break;

                }

            }

        } catch (NoSuchElementException e) {

            System.out.println(e.getStackTrace());

            System.out.println(e.getMessage());

        } catch (Exception e) {

            System.out.println(e.getStackTrace());

            System.out.println(e.getMessage());

        }


    }

}


查看完整回答
反对 回复 2022-05-12
  • 1 回答
  • 0 关注
  • 107 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号