测试架构师培训
第一章:测试架构师必须掌握的架构知识 【系统性梳理了测试架构师和资深测试工程师必须掌握的大型互联网架构的核心知识体系,剖析了大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理与发展历程,从高性能、高可用、伸缩性和可扩展性等四个维度对大型网站架构进行了有针对性地深度剖析,弥补了测试工程师相比开发工程师以及架构师之间知识结构上的短板,并且从测试的视角对架构的测试策略进行了解读。】
• 测试架构师视角的大型网站架构设计
• 业务驱动下的大型网站技术架构的技术演进
• 分布式架构
• 微服务架构
• 服务网格
• 深入浅出网站高性能架构设计
• 深入浅出网站高可用架构设计
• 深入浅出网站伸缩性架构设计
• 深入浅出网站可扩展性架构设计
第二章:GUI自动化测试技术精要 【GUI自动化测试可以说是自动化测试早的应用领域,也是测试工程师常会接触到的测试实践。 本课程会从基础的GUI测试谈起,用直白的语句讲解GUI测试框架设计与发展的种种困境与突破,见证GUI测试框架从雏形走向高效的历程。同时还涉及这些框架在大型电商网站的具体实践与落地,并梳理了影响GUI自动化测试稳定性的关键因素并给出切实可行的技术解决方案。另外对于电商业务全球化发展所带来的测试挑战,也给出了业内的佳实践。 后还谈论了GUI自动化测试中的一些创新设计和方法。】
• 如何构建高效,低维护成本的GUI自动化测试用例
• 测试用例脚本封装粒度的问题
• 从页面对象模型到业务流程模型
• GUI测试脚本的自动生成技术初探
• 影响GUI测试用例稳定性的主要因素与应对策略
• GUI测试如何应对多国语言的国际化测试
• GUI测试中的数据准备
• 无头浏览器在GUI测试中的应用
• 行为驱动开发BDD的应用与局限性
• 超越BDD的GUI测试方案初探
• 人工智能AI在GUI自动化测试中的应用与落地
• 基于模型MBT在GUI自动化测试中的实践
• 业界案例分享:全球化大型电商网站GUI自动化测试的佳实践
第三章:API自动化测试技术精要 【面对GUI自动化测试普遍投入产出比(ROI)不高的窘境,现在互联网企业逐渐将测试重点从GUI移到了API。这里我同样会从基础的API测试谈起,循序渐进,以兼具实用性和前瞻性的方式讲解API测试的关键技术。 后对API测试的企业级应用场景进行系统性梳理,给出测试策略设计与佳实践。】
• 主流API测试工具(Postman和JMeter)的原理与使用技巧
• API测试工具的局限性
• 基于代码的API测试的必要性
• 设计与构建高效的API自动化测试框架
• 数据驱动在API测试中的应用
• API的并发测试和压力测试
• API测试的数据准备
• API测试中的依赖解耦
• 复杂场景的API测试(连续API调用以及API调用之间的参数传递)
• API调用时序的测试难点与应对策略
• 异步API的测试难点与应对策略
• API后向兼容性测试的难点与解决方案
• 一站式API开源测试工具HttpRunner的架构设计与使用
• 业界案例分享:全球化大型电商网站API自动化测试的佳实践
第四章:微服务时代的API测试精要 【这里谈论目前主流的微服务架构下的API测试挑战,同时给出了可以应对这些挑战的基于消费者契约的API测试方法,后还给你了实际的用例代码,并探讨其佳实践。】
• 微服务架构下的API测试挑战
• 基于消费者契约的API测试的理论基础
• 基于消费者契约的API测试的实践
• 基于消费者契约的契约捕获
• 基于契约的Mock Service实现API测试依赖解耦
• 全新API无法获取消费者契约的解决思路
• 基于HttpRunner的API消费者契约测试
• 案例分享:Spring Cloud Contract实例
• 业界案例分享:全球化大型电商网站的消费者契约测试的落地案例
第五章:自动化测试中测试数据难题的解决思路 【如同然界生物物竞天择的自然进化规律一样,测试数据准备也基本遵循类似的规律。这里将以测试数据准备的痛点为切入点,探讨测试数据准备的技术演进,并讨论终如何发展成为测试数据平台的历程。其中还会涉及很多测试数据准备的创新设计,相信很多内容都可以很方便地被你所在的项目所应用。】
• 测试中数据的复杂性与难点
• 基于实时数据创建的测试数据准备策略
• 基于预先生成的测试数据准备策略
• 测试数据生成的基本技术
• 复杂数据的生成技术
• 性能测试数据的批量生成技术
• 测试数据一致性,准确性和及时性的要求
• 测试数据工具的设计与业界佳实践
o 测试数据准备 V1.0时代
o 测试数据准备 V2.0时代
o 测试数据准备 V3.0时代
o 测试数据准备 V4.0时代
• Test Data Service的架构设计与实现
• 测试数据准备的创新设计
• 业界案例分享:全球化大型电商网站测试数据服务的设计
第六章:Mobile移动App测试的佳实践 【现在国的的移动应用大行其道,因此其测试技术与质量保障也变得尤为关键。这里会分别介绍了三类移动应用的测试方法与技术,涉及了iOS和Android,Web App和Native App,真机测试和模拟器测试,面向应用的测试和移动专项测试等。】
• Mobile App测试的特点
• Mobile App的专项测试简介
• Mobile的自动化测试技术
• Appium简介与应用
• Mobile测试环境的难点
• 业界案例分享:基于Appium + Selenium Grid搭建企业级Mobile私有云
第七章:测试执行环境的设计与佳实践 【测试基础架构是测试架构师以及资深测试开发人员必须能够驾驭的重要环节。这里的内容会与当下主流行的DevOps和CI/CD有很多交集,并对DevOps和CI/CD的成功与否有着决定性的关键作用。同样地,测试基础架构的发展也不是一蹴而就的,同样是从一些简单的架构形式逐渐演变发展来适应高速发展的业务需求,在此我会从0到1,深入剖析大型互联网企业的测试基础架构设计以及其原始驱动力,主要探讨测试执行环境设计、测试报告平台设计以及如何与CI/CD的集成等内容,其中还会涉及很多具有前瞻性的设计创新。】
• 测试执行环境的概念
• 测试基础架构的概念
• 早期的测试执行环境
• 测试执行服务的设计与应用
• 基于Jenkins触发测试执行
• 基于 Selenium Grid 提高测试并行执行能力
• 基于 Jenkins Cluster 提高测试并行执行能力
• 基于 Docker 实现 Selenium Grid 的动态扩展与收缩
• 基于 Docker 实现 Jenkins Cluster 的动态扩展与收缩
• 构建基于私有云(Cloud)的测试基础架构
• 云测服务的设计思路与原理
• 引入 Test Report Service 生成各种测试报告
• 典型的 Test Report Platform 架构
• 全栈测试报告的优势与关键技术
• 基于故事版的GUI自动化测试报告
• 设计Multi-Site Comparison Report 提高 LQA 测试效率
• 人工智能AI技术在测试用例执行结果分析中的应用与落地
第八章:性能测试的行业佳实践 【性能测试本身是个非常庞大的主题并且具有很强专业性的领域, 首先我会从0到1的入门者视角,系统性地对性能测试的方法以及应用领域进行阐述,并抛弃传统教科书纯理论讲解的形式,以通俗易懂的实例解释软件的各种性能指标,使你对这些晦涩难懂或者长期以来模棱两可的概念有本质清晰的认识。随后我从实战的角度对前端和后端性能测试工具的基本原理进行阐述,并基于LoadRunner讲解大型企业性能测试的规划、设计、实现的具体实例。然后我会以某全球软件公司性能测试卓越中心的实际案例来分享更多的性能测试创新实践,这部分内容大多属于首次公开,干货满满。后谈论了大型互联网产品的全链路压测的行业实践。】
• 不同视角的软件性能与性能指标解读
• 性能测试的基本方法与应用领域
• 后端性能测试的基本原理和工具
• 前端性能测试的基本原理和工具
• LoadRunner的使用与工程应用
• 基于LoadRunner实现企业级服务器端性能测试的实践
• JMeter的使用与工程应用
• 某知名全球软件研发中心-性能测试卓越中心实际案例与经验分享
o 如何0成本应用UI自动化测试脚本和API自动化测试脚本实现性能告警
o 高并发情况下单session的Profile方法设计
o Performance Benchmark Kits 的设计
• 基于JMeter的全链路压测系统的设计
第九章:代码级单元测试技术的佳实践 代码级测试通常都是由开发人员执行,但是单元测试框架选型、覆盖率统计、打桩技术选型、测试用例设计原则等内容都需要测试架构师或者资深测试工程师的全程参与,因此这里的内容会系统性阐述作为测试架构师对于代码级测试的所有知识点,为你呈现一幅包括【代码测试技术入门、代码级测试方法论、代码级测试用例设计、覆盖率衡量、典型难点以及解决思路的全景技术视图。】
• 代码的基本特征
• 代码缺陷产生的原因
• 代码错误的分类
• 代码级测试方法的分类
• 完备代码级测试用例的设计
• 代码测试覆盖率的衡量
• 代码测试覆盖率的实现原理
• 探讨覆盖率的局限性
• 典型代码错误分析
• 代码级测试中的广义自动化测试技术
• 基于变更代码的覆盖率衡量
第十章:测试新技术 【面对各种新的测试方法论,测试架构师以及优秀的测试工程师必须做到胸有成竹,这里的内容选取了当下比较热门的探索式测试、测试驱动开发(TDD)、与行为驱动开发(BDD)、精准测试、基于模型的测试(MBT)以及人工智能(AI)在测试领域的应用为主题,讲述各自解决的问题和目前主流的工具,相信会让你有眼前一亮的感觉,以此帮助你拓展思路以及知识面。】
• 探索式测试
• 测试驱动开发(TDD)
• 行为驱动开发(BDD)
• 精准测试
• 基于模型(MBT)的测试
• 人工智能(AI)在测试领域的应用
第十一章:测试架构师的“软实力” 【作为测试架构师,不仅需要掌握测试技术,还需要掌握很多其他领域的知识,这里我对测试架构师必备的自身能力进行了综合性的阐述。】
• 软件测试架构师需要关注和不需要关注的事
• 软件测试架构师的知识能力模型
• 像软件测试架构师一样的思考
• 互联网企业与传统 IT 企业的异同及测试策略设计
• QE 团队向工程效率团队转型的实践
• 产品测试中的沟通原则
• 如何基于产品特性设计合适的测试策略
• DevOps与测试基础架构