Python Selenium自动化(一)点击页面链接测试
作者:网络转载 发布时间:[ 2014/6/17 13:59:21 ] 推荐标签:Selenium 自动化测试工具
但是这样的实现在运行时会抛出异常:
selenium.common.exceptions.StaleElementReferenceException: Message: u'Element not found in the cache - perhaps the page has changed since it was looked up'
异常的说明已经很明显了:在cache中找不到元素,在元素被找到之后页面变换了。 这说明,当当前页面发生跳转之后,存在cache中的关于这个页面的元素也被清空了。
因此,我们需要在每次回到原始页面之后对我们感兴趣的a标签元素重新搜索,同时我们又必须接着上次的点击到的元素继续点击。因此我们使用第一种遍历的方法来实现这个for loop:
|
length = len(driver.find_elements_by_tag_name("a")
for i in range(0,length):
links = driver.find_elements_by_tag_name("a")
link = links[i]
if not ("_blank" in link.get_attribute("target") or "http" in link.get_attribute("href")):
link.click()
driver.back()
|
这样,在每次返回页面之后会重新搜索一遍页面上的a元素,然后使用cache中的i继续点击下一个跳转链接。
本文内容不用于商业目的,如涉及知识产权问题,请权利人联系SPASVO小编(021-61079698-8054),我们将立即处理,马上删除。
相关推荐
两种自动化测试工具AutoRunner与Selenium的对比关于Selenium自动化测试框架的较佳设计模式关于Selenium自动化测试框架那些你不知道的事哪种场景下,需要维护Selenium自动化测试过程?如何对Selenium自动化测试框架进行维护?Selenium自动化测试框架在自动化测试中发挥哪些作用?如何使用自动化测试框架ATF执行Selenium脚本?自动化测试脚本怎么写?如何使用Selenium录制浏览器的脚本?Selenium自动化测试框架软件好用吗?Selenium自动化测试框架ATF是如何根据数据生成用例的?多功能Selenium自动化测试框架软件ATFJava版本的Selenium异常记录第一个UI脚本-Python+Selenium实例:用Selenium和用Webdriver构建出来的测试工程如何放慢Selenium的运行速度Selenium FF WebDriver运行时开启firebug的2种方式

sales@spasvo.com