No Such Element分析
在自动化测试用例编写过程中,经常会遇到No Such Element的异常,
那么,是什么原因导致该异常的产生?我们又该如何进行分析呢?
其实,该异常的产生是有迹可循的,主要有以下几个方面:
- 页面未加载完成(增加显式、隐式等待或延时)
- 元素的定位表达式错误(编写自动化测试用例时,应在浏览器开发者工具栏中验证定位表达式的正确性)
- 窗口未切换(注意,如果要操作的元素在新建的窗口中时,应该先切换窗口)
- 页面中存在iframe(webdriver操作的对象只能是当前HTML文档中的元素,而iframe中的则是另外一个HTML文档,如果需要操作iframe中的元素,需要先切换到该iframe中)