【开发环境&工具】
selenium-server-standalone-2.52.0.jar, JDK1.8, eclipse, Firefox45.2.0
【需求背景】
将鼠标移动到“相册”图表之上,点击图表上出现的删除按钮。
【遇到的问题】
1)将鼠标移动到相册图标上,页面出现删除按钮;
2)右击删除按钮,使用FirePath查看页面元素,如下图:
3)定位并点击元素代码:
// 定位到删除按钮并点击
driver.findElement(By.xpath("//div[@class='item'][1]//a[@title='删除']")).click();
结果运行时提示定位不到页面元素。
【分析】
重新分析并检查页面元素,发现鼠标移动到相册上时,上一级的div class name变(如下图),而且,必须是查看HTML的时候,才会动态显示出来,使用firepath查看的时候,页面不是动态显示的,所以看不出来鼠标悬停时,页面元素参数的变化(请对比上图一起看),如下:
改代码,更新新的div class name 如下:
// 定位到删除按钮并点击
driver.findElement(By.xpath("//div[@class='item