软件测试/测试开发丨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、获取元素属性信息

  • 获取元素属性信息

  • 原因:

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

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

相关推荐
love530love17 小时前
彻底解决 ComfyUI Mixlab 插件 Whisper.available False 的报错
人工智能·windows·python·whisper·win_comfyui
GISer_Jing17 小时前
AI驱动营销:业务技术栈实战(From AIGC,待总结)
前端·人工智能·aigc·reactjs
不解风水17 小时前
《深度学习入门:基于 Python 的理论与实现》(斋藤康毅)
人工智能·python·深度学习
偷星星的贼1117 小时前
数据分析与科学计算
jvm·数据库·python
Blossom.11818 小时前
AI Agent智能办公助手:从ChatGPT到真正“干活“的系统
人工智能·分布式·python·深度学习·神经网络·chatgpt·迁移学习
应用市场18 小时前
Adam优化器深度解析:从数学原理到PyTorch源码实
人工智能·pytorch·python
a努力。18 小时前
2026 AI 编程终极套装:Claude Code + Codex + Gemini CLI + Antigravity,四位一体实战指南!
java·开发语言·人工智能·分布式·python·面试
梦茹^_^18 小时前
flask框架(笔记一次性写完)
redis·python·flask·cookie·session
二川bro18 小时前
Java集合类框架的基本接口有哪些?
java·开发语言·python
抠头专注python环境配置18 小时前
解决“No module named ‘tensorflow‘”报错:从导入失败到环境配置成功
人工智能·windows·python·tensorflow·neo4j