【问题标题】:Java Selenium-link missing field error warning to the fieldJava Selenium-link缺少字段错误警告到字段
【发布时间】:2019-05-13 17:26:05
【问题描述】:

如果您访问网站https://www.cleartrip.com 并且未填写字段,请单击搜索航班按钮,您将收到错误消息。我可以使用以下方法捕获错误:

//small[contains(text(),'You missed this')]  

但是我不确定如何将其链接到实际字段。我可以这样做//input[@id='From']/child::small吗?

【问题讨论】:

  • 您必须检查动态 div 以在 html 页面中显示错误。

标签: java selenium webdriverwait


【解决方案1】:

要在cleartrip.com 上获得将错误显示为You miss this 的字段,您需要为visibilityOfAllElementsLocatedBy() 诱导WebDriverWait,然后创建一个列表 使用 Java stream()map() 如下:

  • 代码块:

    import org.openqa.selenium.WebDriver;
    import org.openqa.selenium.chrome.ChromeDriver;
    import org.openqa.selenium.chrome.ChromeOptions;
    import org.openqa.selenium.support.ui.ExpectedConditions;
    import org.openqa.selenium.support.ui.WebDriverWait;
    
    public class clearTrip_warning {
    
        public static void main(String[] args) {
    
        System.setProperty("webdriver.chrome.driver", "C:\\SeleniumUtilities\\BrowserDrivers\\chromedriver.exe");
        ChromeOptions options = new ChromeOptions();
        options.addArguments("start-maximized");
        options.addArguments("--disable-extensions");
        options.addArguments("disable-infobars");
        WebDriver driver = new ChromeDriver(options);
        driver.get("https://www.cleartrip.com/");
        new WebDriverWait(driver, 10).until(ExpectedConditions.elementToBeClickable(By.cssSelector("input#SearchBtn"))).click();
        List<String> myFields = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.xpath("//small[contains(text(),'You missed this')]//preceding::input[2]"))).stream().map(element->element.getAttribute("id")).collect(Collectors.toList());
        System.out.println(myFields);
        }
    }
    
  • 控制台输出:

    [FromTag, ToTag, DepartDate]
    

【讨论】:

  • 如果这个/任何答案对您有帮助/对您未来的读者有帮助,请投票赞成。
猜你喜欢
  • 2018-06-08
  • 2014-10-18
  • 1970-01-01
  • 2022-07-29
  • 1970-01-01
  • 2012-03-04
  • 2022-10-15
  • 1970-01-01
  • 2017-04-10
相关资源
最近更新 更多