Selenium 自动化测试框架深度解析

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