《高效自动化测试平台:设计与开发实战》从软件自动化测试的发展历史和趋势出发,作者总结了当前软件自动化测试的需求和挑战,比如:
1. 测试对象功能复杂化,被测对象的功能越来越多,越来越全面。
2. 迭代快速化,软件从设计到交付的时间周期越来越短。
3. 测试环境规模不断增加,被测试对象的系统规模越来越庞大。
在此基础上,本书以实战的方法,深入浅出地分析和介绍了一种模块化平台的设计方案来应对这些挑战,逐一介绍了每个模块的设计思路。这种自动化测试平台具有良好的测试用例的复用能力和功能的扩展能力,并且对于测试工程师用户来说有比较低的学习成本,能快速对测试用例开发进行上手。同时,该平台的设计能够很好的解决部署和执行问题,在CI/CD并且融入了数据驱动,事件驱动等先进的设计思想和理念。
本书还结合了当下软件企业比较重视的CI/CD流程,云端部署等热门话题, 介绍了如何将自动化测试平台集成到CI/CD的工作流程以及如何将测试平台进行云部署的转变。最后介绍了几个大型企业的经典案例。
除了设计思路和方案以外,本书会给出部分的代码实现(主要适用面向对象脚本语言Python)。
作者简介:
徐德晨 毕业于中国科技大学自动化系软件工程专业,硕士。先后任职于智邦科技、Tellabs、Broadcom、Cisco,从事自动化测试平台开发工作,在Cisco任职期间申请通过三项专利,现在Dell EMC负责自动化测试平台的设计与开发。 茹炳晟 业界知名的实战派软件质量和研发工程效能专家,测试基础架构的布道者,腾讯云最具价值的专家TVP,阿里云最具价值的专家MVP,中国商业联合会互联网应用技术委员会的智库专家,国内外顶级技术峰会的技术委员会成员和专题出品人。
目录:
第1章 软件自动化测试面临的挑战 1
1.1 软件测试各个阶段的自动化需求 2
1.2 软件自动化测试工具的挑战 8
1.3 基于面向对象的平台化设计思想 16
1.4 总结 27
第2章 高效测试平台的基本设计 28
2.1 编程语言和开源框架 29
2.2 模块化测试平台的设计方法 33
2.3 自动化测试平台的基本设计 41
2.4 总结 46
第3章 可扩展的测试资源管理模块 47
3.1 测试资源 48
3.2 资源选择器 67
3.3 从资源类对象获取资源配置接口 87
3.4 总结 93
第4章 模块化的测试配置 94
4.1 测试配置基本分类 96
4.2 可扩展的静态配置 100
4.3 灵活的动态配置 106
4.4 带逻辑功能的配置 109
4.5 总结 117
第5章 友善的测试报告和日志 119
5.1 我们需要什么样的测试结果 120
5.2 树形显示的测试步骤 124
5.3 日志管理 148
5.4 总结 158
第6章 灵活配置的测试引擎 159
6.1 测试引擎的职责 160
6.2 测试用例 165
6.3 测试引擎的初始化设计 178
6.4 测试用例的生命周期管理及运行 184
6.5 总结 197
第7章 友善的管理平台 199
7.1 命令行模式 200
7.2 RESTful API的管理模式 210
7.3 测试用例的管理 219
7.4 平台的安装及发布 228
7.5 总结 241
第8章 测试数据及数据驱动测试 242
8.1 测试数据的准备与生成 243
8.2 数据驱动的测试用例 259
8.3 测试用例参数传递设计 266
8.4 总结 277
第9章 代码自动生成 278
9.1 重复劳动的封装作业 279
9.2 文档和元数据驱动 287
9.3 代码自动生成的实现 302
9.4 测试用例的自动生成 337
9.5 总结 342
第10章 测试工具和设备的驱动设计 343
10.1 命令行工具 344
10.2 Selenium的二次封装 353
10.3 技术代码下沉和测试业务封装 364
10.4 总结 372
第11章 事件驱动测试模式 373
11.1 传统测试用例的挑战 374
11.2 何为事件驱动 377
11.3 事件驱动引擎的设计 385
11.4 总结 400
第12章 微服务化的测试平台 401
12.1 软件架构的演进 402
12.2 微服务的基本形态 405
12.3 测试平台的微服务化 407
12.4 总结 414
第13章 实战成功案例介绍 416
13.1 四两拨千斤的自动化测试平台 416
13.2 全球大型电商的自动化测试中台 424
点击下载