Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用selenium验证下拉列表中的动态web内容?_Selenium_Xpath_Testng - Fatal编程技术网

如何使用selenium验证下拉列表中的动态web内容?

如何使用selenium验证下拉列表中的动态web内容?,selenium,xpath,testng,Selenium,Xpath,Testng,出于好奇,我正在测试一个应用程序并尝试将其自动化。我在测试Momondo.in,我想验证列表中显示的输出,但内容的格式很奇怪,我该如何处理此类元素。举个例子,你可以去网站,在“From”选项中键入“b”,我们现在以列表的形式得到6个选项,我想用JAVA将它们全部保存在一个ArrayList中,然后检查第一个元素是“b”还是包含“-b”,以进行验证,提前感谢您的帮助。driver.get(“https://www.momondo.in/"); driver.get("https://www.mom

出于好奇,我正在测试一个应用程序并尝试将其自动化。我在测试Momondo.in,我想验证列表中显示的输出,但内容的格式很奇怪,我该如何处理此类元素。举个例子,你可以去网站,在“From”选项中键入“b”,我们现在以列表的形式得到6个选项,我想用JAVA将它们全部保存在一个ArrayList中,然后检查第一个元素是“b”还是包含“-b”,以进行验证,提前感谢您的帮助。

driver.get(“https://www.momondo.in/");
driver.get("https://www.momondo.in/");

driver.findElement(By.cssSelector(".searchFormWrapper  input[name='origin']"))
    .sendKeys("b");

Thread.sleep(2000);

List<WebElement> options = driver.findElements(
          By.cssSelector("div[id*='origin-smartbox-dropdown'] ul > li"));

for(WebElement opt:options) {

    String airPortCode = opt.getAttribute("data-apicode");

    String airPortShortName = opt.getAttribute("data-short-name");

    String airPortFullName = opt.getText();

    // It's up to you to determine to check which one of 
    // `airPortCode`, `airPortShortName`, `airPortFullName` includes `b`

}
driver.findElement(By.cssSelector(“.searchFormWrapper输入[name='origin'])) .sendKeys(“b”); 《睡眠》(2000年); 列表选项=driver.findElements( 通过.cssSelector(“div[id*='origin-smartbox-dropdown']ul>li”); for(WebElement选项:选项){ 字符串airPortCode=opt.getAttribute(“数据apicode”); 字符串airPortShortName=opt.getAttribute(“数据短名称”); 字符串airPortFullName=opt.getText(); //由您决定检查以下哪一项: //`airPortCode`、`airPortShortName`、`airPortFullName`包括`b` }
共享html代码和您迄今为止尝试过的内容。欢迎使用Stack Overflow!请参阅:SO的期望是,用户提问时不仅要进行研究以回答自己的问题,还要分享研究、代码尝试和结果。这表明你花了时间来帮助自己,它使我们避免重复显而易见的答案,最重要的是,它帮助你得到一个更具体和相关的答案!另请参见:您使用的是哪种硒语言装订艺术?Java/Python/C#/NodeJS?简单而完美的答案