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