【发布时间】:2017-12-16 19:20:38
【问题描述】:
我试图自动化一个场景,条件是我必须从下拉菜单中选择一个选项,然后旁边有另一个下拉菜单,我必须从下一个下拉菜单中单击一个选项才能启用按钮。我尝试使用代码,但它只单击第一个选项,并且显示错误为过时的元素引用:元素未附加到页面文档。请帮忙。如果不是很清楚,请告诉我。
【问题讨论】:
-
给我们任何代码。你如何选择选项?另外,我不明白您对按钮及其旁边的列表的看法。什么启用什么?
-
当您选择
Self时,只有您获得General选项,这实质上意味着HTML DOM 被更改,从而导致StaleElementException -
代码在哪里?
-
我猜,在选择第一个下拉列表之前,您会找到第二个下拉列表的元素。您必须执行以下操作,首先选择第一个下拉列表,然后在第二个下拉列表中找到要选择的元素并单击
-
//选择频道 Select oSelectChannel = new Select(driver.findElement(By.id("client"))); oSelectChannel.selectByVisibleText("保险测试客户端"); driver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS); 'code' //选择类别选择 oSelectCategory = new Select(driver.findElement(By.xpath("//*[@id='category']"))); oSelectCategory.selectByVisibleText("产品保险");
标签: java selenium selenium-webdriver webdriverwait staleelementreferenceexception