zoukankan      html  css  js  c++  java
  • Python3 Selenium自动化web测试 ==> 第二节 页面元素的定位方法 -- iframe专题 <下>

    学习目的:

      掌握iframe矿建的定位,因为前端的iframe框架页面元素信息,大多时候都会带有动态ID,无法重复定位。

    场景:

    1. iframe切换

    • 查看iframe
    • 切换iframe
    • 多个iframe的问题

    2.多窗口iframe

    • 获取句柄
    • 切换句柄

    正式步骤:

    step1: 如果iframe中含有动态ID的情况规避方法

    问题截图

    规避代码:

    # -*-  coding:utf-8 -*-
    """
    模拟登陆126邮箱
    """
    from selenium import webdriver
    import time
    
    url = "https://mail.126.com/"
    driver = webdriver.Chrome()
    
    driver.get(url)
    iframe = driver.find_elements_by_tag_name("iframe")[0]
    driver.switch_to.frame(iframe)
    driver.find_element_by_name("email").send_keys("wzm_323")
    time.sleep(3)
    driver.quit()

    step2: 多层iframe定位

    #多层iframe
    driver.get(url)
    driver.switch_to.frame(frame1)
    driver.switch_to.frame(frame2)
    driver.find_element_by_
    driver.switch_to_default_content()

    step3: 通过iframe的索引定位

    # -*-  coding:utf-8 -*-
    """
    模拟登陆126邮箱
    """
    from selenium import webdriver
    import time
    
    url = "https://mail.126.com/"
    driver = webdriver.Chrome()
    
    driver.get(url)
    time.sleep(3)
    driver.switch_to.frame(0)
    driver.find_element_by_name("email").send_keys("wzm_323")
    time.sleep(3)
    driver.quit()
  • 相关阅读:
    (网页)中的简单的遮罩层
    (后端)shiro:Wildcard string cannot be null or empty. Make sure permission strings are properly formatted.
    (网页)jQuery的时间datetime控件在AngularJs中使用实例
    Maven Myeclipse 搭建项目
    MyBatis 环境搭建 (一)
    java 常用方法
    XML 基础
    JS BOM
    js 事件
    js 的使用原则
  • 原文地址:https://www.cnblogs.com/wuzhiming/p/10202410.html
Copyright © 2011-2022 走看看