• 软件测试 08功能自动化 08 基于Python语言的Selenium基础


    安装Python和Selenium
    导入相关的包
    在这里插入图片描述

    from selenium import webdriver
    from selenium.webdriver.support.select import Select
    from time import sleep
    
    #打开Edge浏览器
    driver = webdriver.Edge()
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    打开url 设置等待时间

    from selenium import webdriver
    from selenium.webdriver.support.select import Select
    from time import sleep
    
    #打开Edge浏览器
    driver = webdriver.Edge()
    #打开GitHub
    driver.get("https://github.com/")
    #设置等待时间3s
    sleep(3)
    #设置隐性等待时间3s
    #driver.implicitly_wait(3)
    
    #关闭浏览器以及浏览器驱动程序
    driver.quit()
    
    #关闭浏览器
    #driver.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    切换框架识别和操作页面元素
    在这里插入图片描述
    切换框架、窗口

    #使用switch_to包
    #定位到当前聚焦的元素上
    driver.switch_to.active_element
    #切换到alert弹窗
    driver.switch_to.alert
    #切换到主界面
    driver.switch_to.default_content()
    #切换到某个frame
    driver.switch_to.frame(编号或name)
    #切换到指定的window_name页签
    driver.switch_to.window(window_name="123")
    #切换到上一层的frame
    driver.switch_to.parent_frame()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    定位页面元素
    在这里插入图片描述
    在这里插入图片描述
    定位页面元素
     driver.find_element_by_  name(“login”)
     id
     xpath
     tag_name
     link_text
     partial_link_text
     class_name
     driver.find_elements_by_  name(“控件 name 名”)[下标]
     Select(driver.find_elements_by_?)
     用于识别下拉列表元素
     需要导入包
     from selenium.webdriver.support.select import Select
    7 页面元素的属性和方法
     driver.title()
     获得网页标题
     对象.text
     获得页面元素的文本值
     属于属性
     对象.get_attribute(“属性名”)
     获得指定属性的值
     Select(对象).select_by_value
     需要导入包
     from selenium.webdriver.support.select import Select
     select_by_index
     select_by_visible_text
     deselect_all()
     取消所有选项
     deselect_by_index()
     取消对应 index 选项
     deselect_by_value()
     取消对应 value 选项
     deselect_by_visible_text()
     取消对应文本选项
     first_selected_option()
     返回第一个选项
     all_selected_options()
     返回所有的选项
     页面元素.send_keys(“数据”)
     用于键盘输入数据
     页面元素.click()
     支持单选按钮、复选框、命令按钮

    from selenium import webdriver
    from selenium.webdriver.support.select import Select
    from time import sleep
    
    #打开Edge浏览器
    driver = webdriver.Edge()
    #打开GitHub
    driver.get("https://github.com/")
    #设置等待时间3s
    sleep(3)
    driver.switch_to_default_content()
    driver.switch_to_frame("body")
    driver.switch_to_default_content(“navibar”)
    driver.find_element_by_name(“username”).sendkeys("zhangsan")
    #关闭浏览器以及浏览器驱动程序
    driver.find_element_by_link_text("sign up now").click()
    driver.quit()
    
    #关闭浏览器
    #driver.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    编写测试脚本

  • 相关阅读:
    第3章业务功能开发(修改市场活动备注)
    算法 | 算法是什么?深入精讲
    科幻走进现实,酷似人脑的GPT有身体了
    java 代码块
    window 服务器 短文件名漏洞处理
    PFA晶圆夹在半导体芯片制造中的应用
    用向量数据库Milvus Cloud搭建GPT大模型+私有知识库的定制商业文案助手
    react的组件
    回归算法详解
    chrome安装vue devtools
  • 原文地址:https://blog.csdn.net/qq_37975179/article/details/127415232