Web 自动化测试常用函数解析与场景应用
前言
在 Web 自动化测试领域,高效定位元素、精准操作对象、灵活控制浏览器行为是核心能力。掌握标准化的自动化函数与逻辑,能大幅减少脚本报错率、提升测试效率。本文将从元素定位、测试对象操作、窗口控制、弹窗处理、等待机制等核心模块,拆解自动化测试中的常用函数与实战技巧,帮助测试工程师系统化掌握关键能力,解决实际测试中的元素找不到、操作时序错乱、窗口切换失败等常见问题。
一、元素定位:自动化测试的'精准导航'
Web 自动化的第一步,是让程序'找到'页面对应元素——这就需要依赖标准化的定位方式。常见的元素定位方式包括 id、classname、tagname、xpath、cssSelector,其中 cssSelector 和 xpath 是实际测试中最常用的两种。
1.1 cssSelector:简洁高效的选择器
cssSelector 通过元素的属性或层级关系定位元素,分为基础选择器和复合选择器,实战中常用 id 选择器和子类选择器组合定位,确保精准性。例如:
- 定位百度首页'百度热搜'元素:使用
#hotsearch-wrapper > div,通过 id 选择器(#hotsearch-wrapper)和子类选择器(>)锁定父元素下的指定子元素; - 定位百度搜索输入框:直接使用 id 选择器
#kw,因输入框的 id 属性'kw'在页面中唯一; - 定位'百度一下'按钮:同理使用 id 选择器
#su,简洁且不易出错。

1.2 xpath:灵活强大的路径语言
xpath 不仅能在 HTML 中选取节点,还支持通过路径表达式、属性匹配、索引定位等复杂逻辑查找元素,适用场景更广泛。文档中给出了 xpath 的核心语法与实战案例:
- 匹配指定属性的节点:
//*[@id='kw']可定位 id 为'kw'的元素,*表示匹配任意节点,@id='kw'是属性匹配条件; - 按索引定位节点:xpath 索引从 1 开始,例如
//div/ul/li[3]可定位百度首页第三个'百度热搜'标签; - 获取父节点:
//input/..能快速定位 input 元素的父节点,适用于需要通过子元素反向查找父元素的场景。
值得注意的是,虽然浏览器右键'Copy selector/xpath'能快速生成定位表达式,但这些自动生成的表达式可能不满足'唯一性'要求,实际测试中常需要手动修改——比如删除冗余的层级路径、补充属性匹配条件,这也是掌握定位语法的核心原因。
二、测试对象操作:定位后的'核心动作'
找到元素后,需要通过函数对元素执行点击、输入、文本获取等操作,文档中详细列出了自动化测试中最常用的操作函数及实战场景。
2.1 点击与提交:触发页面交互
- 点击操作:使用
click()函数,例如定位'百度一下'按钮后执行点击,触发搜索动作,代码示例为driver.find_element(By.CSS_SELECTOR, "#su").click();
# 找到百度一下按钮并点击
driver.find_element(By.CSS_SELECTOR, "#su").click()
- 提交操作:对于表单元素,可通过
submit()函数提交表单,但实际测试中 适用性更广,多数场景下优先使用。






