Использование родительско-дочерних отношений Xpath в Selenium Webdriver

#selenium-webdriver #xpath #parent-child

#selenium-webdriver #xpath #родитель-потомок

Вопрос:

Я очень новичок в автоматизации. Я пытаюсь заставить Selenium WebDriver щелкнуть пункт назначения рейса на этом веб-сайте путешествий (www.spicejet.com ) для меня, но он этого не делает. Вопрос: правильно ли я использовал родительско-дочерние отношения в этом коде?Спасибо!

 import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class Trial {
public static void main(String[] args) {

System.setProperty("webdriver.chrome.driver", "C:\Work\chromedriver.exe");
WebDriver driver=new ChromeDriver();
driver.get("https://www.spicejet.com/");//URL in the browser

driver.findElement(By.id("ctl00_mainContent_ddl_originStation1_CTXT")).click();
    driver.findElement(By.cssSelector("a[value='BLR']")).click();
 driver.findElement(By.xpath("//div[@id='ctl00_mainContent_ddl_destinationStation1_CTNR']//a[@value='MAA']")).click();
    }

}
 

Комментарии:

1. Вы уверены a[value='BLR'] , что это сработает?

2. Да, я на курсе, который я прохожу, инструктор объяснил, что это один из приемлемых синтаксисов для Xpath

3. По моему скромному мнению, вам следует перейти ctl00_mainContent_ddl_originStation1_CTXT на ctl00_mainContent_ddl_originStation1_CTXTaction . Кстати, нет элемента <a> с value атрибутом со BLR значением, может быть, вам стоит попробовать это #dropdownGroup1 > div > ul:nth-child(1) > li:nth-child(8) > a вместо этого.