selenium中加载的所有页面的java getPageSource
我正在尝试使用selenium检查我的自动登录是否成功。由于我的应用程序支持多种登录类型,我依靠常用的id元素(注销和注销)和关键字(注销/注销)来确定登录是否成功
在大多数情况下,逻辑是可行的,但在某些情况下,应用程序在加载索引上有两个不同的页面。包含注销按钮和实际页面源代码的html(例如dashboard.html)
当我使用selenium驱动程序获取PageSource时,我得到了dashboard的源代码,因此我的测试用例失败了,因为源代码不包含logout关键字
加载URL时,获取所有页面的html源代码的最佳方法是什么
# 1 楼答案
通常分析页面的源代码来定义当前的应用程序状态是错误的方法:可能有JS、Ajax脚本、CSS/其他可以修改应用程序行为的代码;浏览器页面的呈现
这就是为什么WebDriver团队旨在测试用户看到的实际页面UI。所以,WebDriver测试应该测试浏览器中出现的元素,并依赖不同元素的定位技术
我建议使用元素id、xpath来定位注销/登录按钮,在您的案例中使用explicit waits。不要使用页面源代码-使用页面上的元素