无法在 jsp 页面上找到元素(java selenium)

无法在 jsp 页面上找到元素(java selenium)

我在 jsp 页面中使用 selenium 时找不到任何元素。我尝试打印出页面源代码,但似乎没有任何标题或正文。当我通过浏览器手动检查页面源代码时,我能够看到这些元素。有人能告诉我为什么 selenium 看到的页面源代码与手动操作时不同吗?有解决方法吗?

答案1

我理解你的痛苦。我正在为 ExtJS 网站构建测试,ID、名称和其他常用选择器都是通用的,几乎每次页面加载时都会发生变化。

有两种好方法可以解决这个问题。

不稳定的解决方案(也是我开始使用的解决方案):使用By.xpath("//*[contains(.,'TEXT ON CONTROL')]")type 语句来查找控件。这种做法不稳定的原因是,有时 findelement 会看到多个控件,即使页面上的控件完全相同。

更好的解决方案(当测试失败时,我会要求开发人员协助解决):让您的开发人员data-test = 'CONTROL NAME'向控件添加一个属性。这将允许您使用大多数 JSP 编译器忽略并置之不理的特定标识符。

相关内容