frame中的元素必须先跳转到frame,frameID是动态的该怎么办?

yinshuilan 2017-02-27 07:15:43
1. 元素在frame中的,需要先切换到这个frame中,在driver.fineElement(By.id("xxx"))前面加一句driver.switch_to_frame('frame_ID')
Frame中的元素不可以直接用xpath、id、name等定位到,要在前面加一句driver.switch_to_frame('frameID')
2. 如何找到动态的frameID?
...全文
946 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yinshuilan 2017-08-15
  • 打赏
  • 举报
回复
我的问题是如何找到正确的frame,因为有多个frame,而且都没有id, name,可能还有隐藏的frame。 后来发现只能用下面的方法来找了: 1. 先确定是不是嵌套的iframe,不是的话找出页面已存在的iframe总数, 然后用下标跳:driver.switch_to.frame(0) 试着找对象是否存在:driver.find_element_by_id("xxxx").click() 如果不报错,则找到这个frame了。 2. 否则继续下面步骤重复找 然后再用driver.switch_to.default_content() driver.switch_to.frame(1).... 一个一个地试 如果是多个frame嵌套就要用同样的方法一层一层的找了
繁华陌路 2017-04-10
  • 打赏
  • 举报
回复
WebElement iframe = driver.findElement(By.xpath("xxx")); driver.switch_to_frame(iframe);

5,177

社区成员

发帖
与我相关
我的任务
社区描述
软件工程/管理 质量管理/软件测试
功能测试压力测试安全性测试 个人社区 湖南省·长沙市
社区管理员
  • 软件测试
  • 虫无涯
  • 小博测试成长之路
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

欢迎大家加入到软件测试的社区,在这里,希望大家勇于发表自己的看法,欢迎大家分享自己在软件测试工作过程中遇到的问题以及工作经验分享。

1.想转行的小伙伴,遇到问题没有及时回复的,可以私聊小博进行反馈

2.大家对社区有好的建议,都可以在社区发帖进行反馈

推荐大家学习的软件测试入门笔记:软件测试入门学习笔记

试试用AI创作助手写篇文章吧