展开全部

主编推荐语

软件自动化测试实战与趋势解析

内容简介

本书从软件自动化测试的发展历史和趋势出发,作者总结了当前软件自动化测试的需求和挑战,比如:1.测试对象功能复杂化,被测对象的功能越来越多,越来越全面。2.迭代快速化,软件从设计到交付的时间周期越来越短。3.测试环境规模不断增加,被测试对象的系统规模越来越庞大。在此基础上,本书以实战的方法,深入浅出地分析和介绍了一种模块化平台的设计方案来应对这些挑战,逐一介绍了每个模块的设计思路。这种自动化测试平台具有良好的测试用例的复用能力和功能的扩展能力,并且对于测试工程师用户来说有比较低的学习成本,能快速对测试用例开发进行上手。同时,该平台的设计能够很好的解决部署和执行问题,在CI/CD并且融入了数据驱动,事件驱动等先进的设计思想和理念。本书还结合了当下软件企业比较重视的CI/CD流程,云端部署等热门话题, 介绍了如何将自动化测试平台集成到CI/CD的工作流程以及如何将测试平台进行云部署的转变。最后介绍了几个大型企业的经典案例。除了设计思路和方案以外,本书会给出部分的代码实现(主要适用面向对象脚本语言Python)。

目录

  • 封面
  • 前折页
  • 书名页
  • 版权页
  • 好评袭来
  • 前言
  • 目录
  • 第1章 软件自动化测试面临的挑战
  • 1.1 软件测试各个阶段的自动化需求
  • 1.1.1 单元测试
  • 1.1.2 功能测试
  • 1.1.3 回归测试
  • 1.1.4 可用性测试及冒烟测试
  • 1.1.5 系统测试
  • 1.2 软件自动化测试工具的挑战
  • 1.2.1 测试用例的复用能力
  • 1.2.2 测试用例的扩展能力
  • 1.2.3 测试工具的扩展能力
  • 1.2.4 灵活的测试调度能力
  • 1.2.5 测试结果和报告
  • 1.2.6 与CI/CD的集成能力
  • 1.2.7 快速部署和较低的学习成本
  • 1.3 基于面向对象的平台化设计思想
  • 1.3.1 面向对象设计思想
  • 1.3.2 模块化设计
  • 1.4 总结
  • 第2章 高效测试平台的基本设计
  • 2.1 编程语言和开源框架
  • 2.1.1 编程语言的选择
  • 2.1.2 从零开发还是使用现有框架
  • 2.1.3 跨越平台和编程语言的限制
  • 2.2 模块化测试平台的设计方法
  • 2.2.1 什么是模块化
  • 2.2.2 核心功能和业务分离
  • 2.2.3 分层设计思想
  • 2.2.4 前后端分离
  • 2.3 自动化测试平台的基本设计
  • 2.3.1 自动化测试平台的基本模块
  • 2.3.2 测试资源管理模块
  • 2.3.3 测试配置管理模块
  • 2.3.4 测试用例执行模块
  • 2.3.5 测试报告和日志模块
  • 2.4 总结
  • 第3章 可扩展的测试资源管理模块
  • 3.1 测试资源
  • 3.1.1 测试资源和抽象
  • 3.1.2 测试资源的序列化和反序列化
  • 3.1.3 测试资源池
  • 3.2 资源选择器
  • 3.2.1 设计资源选择器的目的
  • 3.2.2 资源限制条件机制
  • 3.2.3 资源获取路由
  • 3.3 从资源类对象获取资源配置接口
  • 3.3.1 资源类对象和配置接口分离
  • 3.3.2 配置接口实例化方法的注册
  • 3.4 总结
  • 第4章 模块化的测试配置
  • 4.1 测试配置基本分类
  • 4.1.1 静态配置
  • 4.1.2 动态配置
  • 4.1.3 带有逻辑功能的配置
  • 4.2 可扩展的静态配置
  • 4.2.1 基本配置的设计
  • 4.2.2 配置的注册方法
  • 4.3 灵活的动态配置
  • 4.3.1 类中类
  • 4.3.2 通过装饰器来初始化配置
  • 4.4 带逻辑功能的配置
  • 4.4.1 带逻辑功能配置模块的使用场景
  • 4.4.2 逻辑功能模块的实现
  • 4.4.3 逻辑配置模块管理器
  • 4.5 总结
  • 第5章 友善的测试报告和日志
  • 5.1 我们需要什么样的测试结果
  • 5.1.1 测试步骤和日志分离
  • 5.1.2 仪表板
  • 5.1.3 清晰的测试步骤
  • 5.1.4 分类的运行日志
  • 5.2 树形显示的测试步骤
  • 5.2.1 树形测试步骤输出的实现
  • 5.2.2 巧用Python的with语句
  • 5.3 日志管理
  • 5.3.1 日志注册
  • 5.3.2 平台模块的日志注册
  • 5.3.3 测试用例的日志注册
  • 5.4 总结
  • 第6章 灵活配置的测试引擎
  • 6.1 测试引擎的职责
  • 6.1.1 测试用例的装载
  • 6.1.2 测试列表和配置需求满足分析
  • 6.1.3 测试资源获取
  • 6.1.4 配置的装载
  • 6.1.5 测试用例的执行及生命周期管理
  • 6.2 测试用例
  • 6.2.1 四步测试
  • 6.2.2 测试用例的属性
  • 6.2.3 测试用例参数
  • 6.2.4 测试用例的优先级及依赖关系
  • 6.2.5 测试列表
  • 6.3 测试引擎的初始化设计
  • 6.3.1 静态配置的读取和实例化
  • 6.3.2 测试资源的获取
  • 6.3.3 测试列表及测试用例的装载
  • 6.4 测试用例的生命周期管理及运行
  • 6.4.1 测试用例的执行流程
  • 6.4.2 测试用例的流程控制设计
  • 6.4.3 测试用例的异常管理
  • 6.4.4 测试用例的中断控制
  • 6.4.5 测试引擎的运行
  • 6.5 总结
  • 第7章 友善的管理平台
  • 7.1 命令行模式
  • 7.1.1 命令行模式的优缺点
  • 7.1.2 展示层设计
  • 7.1.3 命令行功能的实现
  • 7.1.4 执行测试用例
  • 7.2 RESTful API的管理模式
  • 7.2.1 RESTful API的特点
  • 7.2.2 测试平台RESTful API的设计实现
  • 7.2.3 GUI界面管理模式
  • 7.3 测试用例的管理
  • 7.3.1 测试用例的自动发现
  • 7.3.2 测试用例的进一步管理
  • 7.4 平台的安装及发布
  • 7.4.1 平台核心功能的发布
  • 7.4.2 测试用例及业务代码管理
  • 7.5 总结
  • 第8章 测试数据及数据驱动测试
  • 8.1 测试数据的准备与生成
  • 8.1.1 常见的测试数据生成方法
  • 8.1.2 测试数据生成的时机
  • 8.1.3 统一测试数据平台
  • 8.2 数据驱动的测试用例
  • 8.2.1 测试过程复用和数据替换
  • 8.2.2 适宜的数据驱动策略
  • 8.3 测试用例参数的传递设计
  • 8.3.1 测试数据的传递
  • 8.3.2 数据驱动装饰器的实现
  • 8.3.3 测试数据的变量化
  • 8.4 总结
  • 第9章 代码自动生成
  • 9.1 重复劳动的封装作业
  • 9.1.1 协议验证测试和数据报文分析
  • 9.1.2 RESTful API测试
  • 9.2 文档和元数据驱动
  • 9.2.1 元数据
  • 9.2.2 手工开发代码的实现
  • 9.3 代码自动生成的实现
  • 9.3.1 自动生成代码的工具
  • 9.3.2 中间对象的定义
  • 9.3.3 代码的自动生成
  • 9.4 测试用例的自动生成
  • 9.4.1 技术代码和业务数据的分离
  • 9.4.2 API接口测试
  • 9.5 总结
  • 第10章 测试工具和设备的驱动设计
  • 10.1 命令行工具
  • 10.1.1 命令行接口类的实现
  • 10.1.2 接口的实例化
  • 10.2 Selenium的二次封装
  • 10.2.1 浏览器的二次封装
  • 10.2.2 页面元素封装
  • 10.3 技术代码下沉和测试业务封装
  • 10.3.1 网络设备流量测试的典型场景
  • 10.3.2 网络设备流量测试过程的抽象
  • 10.4 总结
  • 第11章 事件驱动测试模式
  • 11.1 传统测试用例的挑战
  • 11.1.1 固定的测试步骤和覆盖率
  • 11.1.2 客户问题的复现
  • 11.1.3 大系统和长时间的测试挑战
  • 11.2 何为事件驱动
  • 11.2.1 事件驱动的特点
  • 11.2.2 事件驱动的一些问题
  • 11.3 事件驱动引擎的设计
  • 11.3.1 事件驱动的基本流程
  • 11.3.2 事件的设计和实现
  • 11.3.3 与现有平台相结合
  • 11.4 总结
  • 第12章 微服务化的测试平台
  • 12.1 软件架构的演进
  • 12.1.1 Monolith单体架构
  • 12.1.2 分布式架构和SOA
  • 12.1.3 微服务
  • 12.2 微服务的基本形态
  • 12.3 测试平台的微服务化
  • 12.3.1 统一的测试平台
  • 12.3.2 服务边界
  • 12.3.3 基本服务的设计
  • 12.3.4 消息队列
  • 12.4 总结
  • 第13章 实战成功案例介绍
  • 13.1 四两拨千斤的自动化测试平台
  • 13.1.1 初期阶段——产品测试模式和自动化测试平台的建立
  • 13.1.2 扩展阶段——更智能的测试平台
  • 13.1.3 推广阶段——公司的明星级测试平台
  • 13.2 全球大型电商的自动化测试中台
  • 13.2.1 测试中台的全局架构
  • 13.2.2 统一测试执行服务
  • 13.2.3 统一测试数据服务
  • 13.2.4 统一测试执行环境服务
  • 13.2.5 被测系统部署服务
  • 13.2.6 测试报告服务
  • 13.2.7 全局测试配置服务
  • 13.2.8 GUI自动化测试服务
  • 13.2.9 API自动化测试服务
  • 13.2.10 统一Mock服务
  • 13.2.11 工程效率工具链仓库
  • 反侵权盗版声明
  • 后折页
  • 封底
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

电子工业出版社

电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。