2.7.2 元素定位:frame 内定位 driver.switch_to.frame()
Posted 风少
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.7.2 元素定位:frame 内定位 driver.switch_to.frame()相关的知识,希望对你有一定的参考价值。
来源: http://blog.csdn.net/anniejunyan/article/details/23257327 Selenium + Webdriver 学习(五) frame下元素定位
http://blog.csdn.net/huilan_same/article/details/52200586 selenium之 定位以及切换frame(iframe)
frame标签有frameset、frame、iframe三种,frameset跟其他普通标签没有区别,不会影响到正常的定位。而frame与iframe对selenium定位而言是一样的,内部的元素都会不能直接定位到。
driver.switch_to.frame(reference)
driver.switch_to.parent_frame() 从子frame切回到父frame
driver.switch_to.default_content() 切到frame中之后,我们便不能继续操作主文档的元素,这时如果想操作主文档内容,则需切回主文档。
frame 定位:
(1) 索引定位:driver.switch_to.frame(0)
定位第一个frame (index 下标从0开始)。通常采用id和name就能够解决绝大多数问题。但有时候frame并无这两项属性,则可以用index和WebElement来定位。
(2) WebElement对象定位: driver.switch_to.frame(driver.findElement(By.xpath("XXXXXX")))
即用find_element系列方法所取得的对象,我们可以用tag_name、xpath等来定位frame对象
以上是关于2.7.2 元素定位:frame 内定位 driver.switch_to.frame()的主要内容,如果未能解决你的问题,请参考以下文章
八年测试经验,吐血整理出Selenium无法定位元素的几种解决方案