Selenium 自动化测试框架深度解析
📘 30章 · 从入门到企业实战
01
Selenium概述与环境搭建
发展史
Selenium3 vs 4
WebDriver原理
环境搭建
02
元素定位(上)
ID定位
Name定位
Class Name
Tag Name
Link Text
Partial Link
03
元素定位(下)
XPath (轴/函数)
CSS Selector
ID/类/属性/层级
04
浏览器操作
打开/关闭
窗口大小
前进后退
刷新
句柄管理
截图
05
等待机制
强制等待
隐式等待
显式等待
最佳实践
06
元素操作
点击/输入/清空
属性与文本
表单(复选框/下拉)
文件上传下载
07
鼠标与键盘事件
ActionChains
悬停/双击/右键
拖拽
组合键
08
JavaScript执行
execute_script
滚动/修改属性
高亮元素
日期控件
09
弹窗处理
Alert弹窗
Confirm弹窗
Prompt弹窗
自动处理策略
10
Frame与多窗口
iframe切换/嵌套
多窗口切换
句柄管理技巧
11
Cookie处理
增删改查
绕过登录
持久化与复用
12
Page Object模式(上)
设计思想
BasePage基类
元素与操作分离
13
Page Object模式(下)
继承与复用
TestCase层
最佳实践/误区
14
数据驱动测试
DDT思想
Excel/CSV/JSON
数据驱动框架
15
关键字驱动测试
关键字驱动思想
关键字库设计
框架搭建
16
Pytest测试框架(上)
安装配置
断言机制
Fixture(setup/teardown)
17
Pytest测试框架(下)
参数化测试
conftest.py
插件(html/xdist)
18
Unittest测试框架
TestCase/TestSuite
断言/Fixture
HTMLTestRunner
19
日志系统
logging模块
级别/格式
文件与控制台
框架应用
20
配置文件管理
configparser(INI)
YAML配置
环境分离(dev/prod)
21
测试报告
pytest-html/Allure
报告美化定制
失败截图嵌入
22
持续集成(CI)
Jenkins安装配置
与Selenium集成
定时/触发构建
邮件通知
23
Docker与Selenium Grid
Docker基础
Standalone/Grid
Compose编排
分布式执行
24
移动端测试(Appium入门)
Appium安装配置
移动端元素定位
手势操作
真机/模拟器
25
接口测试与Selenium结合
requests库
接口鉴权
数据驱动
UI+接口混合
26
性能测试基础
Selenium性能局限
Locust使用
性能+功能结合
27
异常处理与重试机制
try-except捕获
自定义异常
pytest-rerunfailures
28
测试数据管理
数据准备/清理
pymysql操作
Mock数据/测试桩
29
Selenium 4新特性
相对定位器
新窗口/标签页API
CDP集成
网络拦截
30
综合实战项目
企业级框架搭建
项目结构设计
代码评审/重构
维护与扩展