Python自动化测试课程
课程天数:2天
课程介绍
本课程主题的讲解将抛弃传统的就技术谈技术的方式,而是采用业内顶尖公司的项目工程实际问题驱动为主线,以提出问题到解决问题为主干,讲解企业级自动化测试项目的的关键技术点和最佳实践。
课程收益
了解业务驱动下的大型网站技术架构的基础知识和技术演进;
了解企业级GUI 自动化测试框架的设计;
了解API自动化测试基础与进阶、框架设计与创新;
了解微服务下的API测试挑战以及应对思路;
了解自动化测试中测试数据难题的解决思路;
了解测试执行环境的设计与最佳实践;
了解企业级的自动化测试执行环境设计与最佳实践;
了解代码级自动测试应用最佳实践;
培训对象
测试经理、质量经理、测试架构师、开发工程、测试开发工程师、测试工程师等;
课程大纲
1、软件测试必须了解的网站架构基础知识
• 测试工程师必须懂的大型网站架构
• 业务驱动下的大型网站技术架构的技术演进
2、自动化测试的基础知识
• 分层的测试策略的设计
• 适合互联网产品的测试策略设计
• GUI自动化测试框架的演进
• API测试基础知识
• API的后向兼容性测试
• GUI测试 VS API测试
• 性能测试基础知识
• 基于GUI测试来生成API测试用例的设计
3、企业级GUI 自动化测试框架的设计
• 基于Python的GUI自动化测试
• 测试脚本的封装粒度问题
• Page-object模型的由来
• Business Flow模型解决的问题
• Unified-Flow模型的原始驱动力
• GUI测试的数据准备难点和解决方案
• Page-object的自动代码生成
4、API自动化测试基础与进阶
• 主流API测试方法简介
• Postman使用基础
• 基于Postman的自动化代码生成
• Postman + Newman
• Postman + Newman + Jenkins
• 基于JMeter的API功能测试
• 使用Python Requests库实现API测试
• API测试一站式解决方案:HttpRunner使用 (Python)
• API测试一站式解决方案:HttpRunner进阶(Python)
• 实例:基于Python搭建API自动化测试框架
5、API自动化测试框架设计与创新
• 最原始的API测试框架
• 引入 API Test Executor 实现 Code-based API 自动化测试
• 引入 Data-Driven Test Data 的自动生成
• 引入 Parallel Execution Controller 实现 API 并发测试
• 引入 Load Generator Cluster 实现 API 高并发和压力测试
• 引入 2R History Database 实现 API Diff Identification
6、微服务下的API测试挑战以及应对思路
• 微服务架构简介
• 微服务架构下的API测试挑战
• 基于消费者契约的API测试
• 基于契约的Mock Service实现API测试依赖解耦
• 基于消费者契约的契约捕获 – 基于Gateway的方法
• 基于消费者契约的契约捕获 – 基于Splunk的方法
• Demo分享:Spring Cloud Contract实例
7、自动化测试中测试数据难题的解决思路
• 测试中数据的复杂性与难点
• 基于实时数据创建的测试数据准备策略
• 基于Out-of-box的测试数据准备策略
• 测试数据准备工具的最佳实践
• Test Data Service的架构设计与实现
• 数据准备的创新设计
8、测试执行环境的设计与最佳实践
• 早期的测试执行环境
• 基于Jenkins触发测试执行
• 引入 Test Runner / Test Execution System
• CI/CD集成的设计与最佳实践
• Selenium Grid简介与工程应用
• 基于 Selenium Grid 提高测试并行执行能力
• 基于 Jenkins Cluster 提高测试并行执行能力
• 基于 Docker 实现 Selenium Grid 的动态扩展与收缩
• 基于 Docker 实现 Jenkins Cluster 的动态扩展与收缩
• 引入 Test Report Service 生成各种测试报告
9、测试报告平台的设计与最佳实践
• 典型的 Test Report Platform 架构
• 高扩展的 Test Report Service
• 引入 Story Board Test Report
• Full Trace Test Report设计与实现
• 引入 Multi-Site Comparison Report 提高 LQA 测试效率
• 引入 Test Analysis Service 提高 Defect 分类效率
10、性能测试基础
• 不同视角的软件性能与性能指标解读
• 性能测试的基本方法与应用领域
• 后端性能测试工具原理与行业常用工具简介
• 前端性能测试工具原理与行业常用工具简介
• 基于Python的性能测试
• 基于LoadRunner实现企业级服务器端性能测试的实践
• 基于JMeter实现企业级服务器端性能测试的实践
11、代码级自动测试最佳实践
• 代码的基本特征
• 代码缺陷产生的原因
• 代码错误的分类
• 代码级测试方法的分类
• 完备代码级测试用例的设计
• 代码测试覆盖率的衡量
• 代码测试覆盖率的实现原理
• 探讨覆盖率的局限性
• 典型代码错误分析