
书: https://pan.baidu.com/s/1LWWovU7IScpiddLrDhjl1w?pwd=pc5n
笔记如下:
- Selenium简介:介绍Selenium的发展历史、核心组件(WebDriver、IDE、Grid)及适用场景。
- 环境搭建:讲解Python+Selenium环境配置,包括浏览器驱动(ChromeDriver、GeckoDriver)的安装。
- 元素定位方法:详解8种定位方式(ID、Name、XPath、CSS Selector等)及最佳实践。
- 常见Web操作:实现点击、输入、下拉选择、文件上传等基础交互的自动化脚本编写。
- 等待机制:对比强制等待(sleep)、隐式等待(implicitly_wait)和显式等待(WebDriverWait)的使用场景。
- Frame与多窗口处理:解决iframe嵌套和浏览器多标签页切换的自动化问题。
- JavaScript执行:通过execute_script()调用JS代码处理特殊交互(如滚动、隐藏元素操作)。
- Cookie管理:自动化添加、删除和读取浏览器Cookie实现登录状态保持。
- 页面截图与日志:使用save_screenshot()捕获异常页面,结合logging模块记录测试过程。
- 单元测试集成:与unittest/pytest框架结合,生成结构化测试报告(HTMLTestRunner)。
- 数据驱动测试:通过CSV、Excel或JSON文件实现参数化测试。
- Page Object模式:设计可维护的PO模式架构,分离页面元素与测试逻辑。
- Selenium Grid:搭建分布式测试环境,实现多浏览器并行测试。
- 移动端测试:Appium基础与Selenium兼容的移动自动化测试方案。
- 验证码处理:绕过或识别简单验证码的自动化方案(OCR、第三方API)。
- Headless模式:使用无头浏览器(Chrome Headless)提升测试效率。
- 行为链(ActionChains):模拟复杂用户操作(拖拽、悬停、组合键)。
- 测试报告优化:集成Allure生成可视化测试报告,附加截图和操作步骤。
- 持续集成:与Jenkins/GitHub Actions结合实现自动化测试流水线。
- 高级应用:反爬虫应对策略、Shadow DOM操作及Web性能指标监控。