【发布时间】:2018-05-30 14:16:09
【问题描述】:
在我的代码中,在 2 个不同的页面上有 2 个下拉菜单,它们都有相同的 id “birth-nation”。我可以使用此 id 执行操作,但是当它进入第二个时,它会给我一个错误,即元素不可见。
这是我的代码:
Select dropdown1111111 = new Select(driver.findElement(By.id("birth-nation")));
dropdown1111111.selectByVisibleText("UNITED STATES");
Select dropdown1111111 = new Select(driver.findElement(By.id("birth-nation")));
dropdown1111111.selectByVisibleText("UNITED STATES");
两者的 id 相同,我无法对 2 个下拉菜单执行操作。
HTML 文件如下。 对于 1 个元素:
<select required="" name="birthNation" id="birth-nation" class="formcontrol input-sm sync valid" data-sync-to-element="#personal-info-view-birth_nation-243202808" aria-invalid="false">
对于 2 个元素:
<select required="" name="birthNation" id="birth-nation" class="form-control input-sm sync" data-sync-to-element="#personal-info-view-birth_nation-243202809">
【问题讨论】:
-
用相关的html更新问题
-
如果您查看浏览器的开发者工具(chrome 中的 f12),您是否会在元素选项卡中看到该元素两次?您可以尝试使用相应的 xPath 选择它
-
@SE God 我认为他的意思是相同的下拉菜单出现在两个不同的页面上。
-
是的,它们都出现在 2 个不同的页面上
-
对于 1 个元素:
标签: java selenium testing automation