如图所示,用户登陆之后会在 Home 这个 tab,然后点击 Lessons 或者 Loops,就会跳转到相应页面。
之前用于定位 Lessons 和 Loops 的方式是 用 name
@FindBy(how = How.XPATH, using = "lessons")
private WebElement lessons;
@FindBy(how = How.NAME, using = "loops")
private WebElement loops;
点击操作为 lessons.click() loops.click()
脚本运行一直良好。
今天调试,突然跑不过,跑来跑去跑不过。 然后 把点击操作改成强制鼠标移动到那个位置点击,依然无效。
然后,只能改用 xpath 去定位。 第一次改为
@FindBy(how = How.XPATH, using = "//div[@class = 'menuElem lessons']")
private WebElement lessons;
调试依然不通过。
必须改为
@FindBy(how = How.XPATH, using = "//div[@class = 'menuElem lessons']/a")
private WebElement lessons;
才能点击到。
这是否意味着 以后 xpath 无法写的过于笼统,必须精确到最后一层?
疑问是,之前用 name 一点问题都没有,最近为什么就不行了呢?