软件测试/测试开发丨Selenium Web自动化测试基本操作

点此获取更多相关资料

本文为霍格沃兹测试开发学社学员学习笔记分享

原文链接:https://ceshiren.com/t/topic/26901

一、浏览器控制

模拟功能测试中对浏览器的操作

1.1、打开网页

  • get方法打开浏览器
python 复制代码
def open_browser():
    driver = webdriver.Chrome()
    driver.get("https://www.baidu.com/")
    time.sleep(1)

1.2、刷新

  • refresh方法刷新页面
python 复制代码
# 刷新网页
    driver.refresh()

1.3、回退

  • 用back方法回退到上一个界面
python 复制代码
    driver.back()

1.4、最大化

  • maximize_window方法使窗口最大化

    复制代码
      driver.maximize_window()

1.5、最小化

  • minimize_window方法使窗口最小化
python 复制代码
    driver.minimize_window()

二、常见定位方法

2.1、HTML铺垫

  • 标签:<a>
  • 属性:href
  • 类属性: class

2.2、Selenium八大定位方式

Selenium提供了八种定位方式
Locator strategies | Selenium

序号 方式 描述
1 class name class 属性对应的值
2 css selector(重点) css 表达式
3 id(重点) id 属性对应的值
4 name(重点) name 属性对应的值
5 link text 查找其可见文本与搜索值匹配的锚元素
6 partial link text 查找其可见文本包含搜索值的锚元素。如果多个元素匹配,则只会选择第一个元素。
7 tag name 标签名称
8 xpath(重点) xpath表达式

2.3、常用定位方式练习

示例,两种方式作用一模一样

官方建议使用下面的方式

python 复制代码
driver.find_element_by_id("su")
driver.find_element(By.ID, "su")
python 复制代码
def web_locate():
    driver = webdriver.Chrome()
    driver.implicitly_wait(3)
    driver.get("https://vip.ceshiren.com/#/ui_study")
    driver.find_element(By.ID, "openWindows")
    driver.quit()

三、常见交互方法

3.1、元素操作

  • 点击:click()
  • 输入:send_keys()
  • 清空:clear()
python 复制代码
# 点击搜索框
driver.find_element(By.ID,"kw").click()
# 输入"霍格沃兹测试开发"
driver.find_element(By.ID,"kw").send_keys("霍格沃兹测试开发")
# 清空搜索框中信息
driver.find_element(By.ID,"kw").clear()

3.2、获取元素属性信息

  • 获取元素属性信息

  • 原因:

    • 定位到元素后,获取元素的文本信息,属性信息等
  • 目的:

    • 根据这些信息进行断言或者调试
  • 演练地址: 霍格沃兹测试开发

相关推荐
爱学堂IT分享32 分钟前
Cesium可视化系统实战课程-Cesium教程学习
前端
2601_962382431 小时前
python快乐编程网络爬虫课后答案
python·网络爬虫·学习工具·课后答案·刷题app
糖墨夕1 小时前
理解大语言模型:Agent 的“大脑”
前端·agent
chuntian_tester1 小时前
测试中的提示词工程
人工智能·测试工具·ai
Rain的Java大神之路1 小时前
JavaWeb开发如何解决跨域问题
java·前端·后端·nginx·web安全·面试·运维开发
鹏哥带你干乡墅1 小时前
优选乡墅赋能培训平台如何帮助提升乡村建设?
大数据·人工智能·python
cpolar技术支持1 小时前
浏览器也能跑本地 AI:用 Transformers.js + WebGPU 做一个最小推理 Demo,cpolar 给同事远程体验
前端·ai·cpolar·webgpu·transformers.js
veminhe2 小时前
python调用接口获取网络信息
python
Allen_LVyingbo3 小时前
医疗AI基础2026-构建可靠智能体的编程路径(上)
大数据·数据库·人工智能·python·自动化
计算机魔术师3 小时前
OpenAI 发布 GPT-6 Astra:多项基准刷新纪录, cybersecurity 能力达 Critical 阈值
前端