Как мне правильно выбрать пункты в выпадающем меню? - PullRequest
0 голосов
/ 03 ноября 2019

Я новичок в области автоматизации тестирования и сейчас пытаюсь выбрать значения в раскрывающемся меню. Как я понимаю, в моем примере есть 2 выпадающих списка, но недостаток опыта не позволяет понять, как решить эту проблему. Сейчас я работаю над https://www.spicejet.com/, и после этого я выбираю пассажиров, нажимаю на взрослых и устанавливаю, сколько взрослых должно быть.

Я смотрел несколько видео, как выбратьВ выпадающих списках мало кто предлагает использовать простой драйвер и использовать другие щелчки, чтобы создать объект Select и использовать его. Не написано много кода из-за ошибок. Кроме того, чувствуя себя потерянным с помощью «Выбрать», как я понимаю, я создаю новый объект «s», передавая ему объект драйвера и делая что-то?

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.Select;

public class dropdown {

    public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver", "C:\\Program Files\\chromedriver.exe");

        WebDriver driver = new ChromeDriver();

        driver.get("https://www.spicejet.com/"); // URL in the browser

        driver.manage().window().maximize(); // Maximize the browser

        Select s = new Select(driver.findElement(By.id("ctl00_mainContent_ddl_originStation1")));
        s.selectByValue("2");
    }
}

Этот работает ->

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.Select;

public class dropdown {

    public static void main(String[] args) {
        System.setProperty("webdriver.chrome.driver", "C:\\Program Files\\chromedriver.exe");

        WebDriver driver = new ChromeDriver();

        driver.get("https://www.spicejet.com/"); // URL in the browser

        driver.manage().window().maximize(); // Maximize the browser

        // Get specific area to save it as variable and check it later if we are in right web page
        String verifyPage = driver.findElement(By.xpath("//span[contains(text(),'Flights')]")).getText();

        // Check it with IF
        if (verifyPage.contentEquals("Flights")) {
            System.out.println("[1] You are IN the right page.");
        } else {
            System.out.println("[2] You are NOT in the right page.");
        }

        driver.findElement(By.xpath("//div[@id='divpaxinfo']")).click();
        Select dropdown = new Select(driver.findElement(By.xpath("//select[@id='ctl00_mainContent_ddl_Adult']")));
        dropdown.selectByIndex(1);
    }
}

1 Ответ

0 голосов
/ 04 ноября 2019

s.selectByValue("AMD");

Выбирает / отменяет выбор опции, атрибут «значение» которой соответствует указанному параметру. Исправил ваш код. Надеюсь, что это help.если нет, пожалуйста, вставьте сообщение об ошибке

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...