zoukankan      html  css  js  c++  java
  • web自动化测试-selenium多表单切换

    一、概述

      1、在web应用中会经常遇到frame/iframe表单嵌套页面的应用

      2、WebDriver只能在一个页面上对元素进行识别与定位

      3、对于frame/iframe表单内嵌的页面上元素无法识别与定位

      4、此时就需要切换到frame/iframe表单中

      5、通过switch_to.frame()方法进行切换

      6、方法说明

        switch_to.parent_content() 跳出当前表单,回到上一级表单

        switch_to.default_content() 跳到最外层的页面

        可以通过frame_name、索引、webelement对象,建议采用webelement对象   

    1 driver.switch_to.frame('frame_name')
    2 driver.switch_to.frame(1) 
    3 driver.switch_to.frame(driver.find_element_by_tag_name("iframe"))

    二、代码实现

     1 from selenium import webdriver
     2 
     3 dr = webdriver.Chrome()
     4 dr.implicitly_wait(10)
     5 dr.get('http://xxxxxxxxxxx')
     6 
     7 #定位到frame元素
     8 frame=dr.find_element_by_xpath('xxxxx')
     9 dr.switch_to.frame('webelement对象')
    10 
    11 #回到最外层页面
    12 dr.switch_to.default_content()
    13 
    14 #返回上一层的frame
    15 dr.switch_to.parent_frame('webelement对象')
    16 
    17 dr.quit()
  • 相关阅读:
    多校第四场
    codechef 两题
    Topcoder 多校T-shirt场
    状态压缩DP
    LUCAS 定理
    HDU 1104 Remainder
    HDU4542 小明系列故事——未知剩余系
    Codeforces Round #256 (Div. 2)
    Codeforces Round #FF (Div. 2)
    2016年川师大软件工程学生博客打分
  • 原文地址:https://www.cnblogs.com/puti306/p/11877469.html
Copyright © 2011-2022 走看看