《软件测试52讲》——测试基础架构篇
《软件测试52讲》
测试基础架构篇
39——什么是Selenium Grid?如何搭建Selenium Grid
测试基础架构主要包括以下内容:
执行测试的机器;
测试用例代码仓库;
发起测试执行的 Jenkins Job;
统一的测试执行平台;
测试用例执行过程中依赖的测试服务,比如提供测试数据的统一测试数据平台、提供测试全局配置的配置服务、生成测试报告的服务等;
.........
Selenium Grid 的架构
Selenium Grid 是一种可以并发执行 GUI 测试用例的测试执行机的集群环境,采用的是 HUB 和 Node 模式。
Selenium Hub 用来管理各个 Selenium Node 的注册信息和状态信息,并且接收远程客户端代码的测试调用请求,并把请求命令转发给符合要求的 Selenium Node 执行。
基于 Docker 的 Selenium Grid 的搭建方法
PCF、GCP、AWS云端搭建Selenium Grid
40——聊聊测试执行环境的架构设计(上)
从广义上讲,测试执行环境除了包括测试执行机以外,还包括测试执行机的维护、集群的容量规划、测试发起的控制、测试用例的组织以及测试用例的版本控制等等。这也就是我要和你的测试基础架构的定义。
41——聊聊测试执行环境的架构设计(下)
基于 Docker 实现的 Selenium Grid 测试基础架构
引入统一测试执行平台的测试基础架构
基于 Jenkins 集群的测试基础架构
测试负载自适应的测试基础架构
42——大型全球化电商的测试基础架构设计
测试基础架构:
统一测试执行服务:
以 Restful API 的形式对外提供测试执行服务的方式,兼具了测试版本管理、Jenkins 测试 Job 管理,以及测试执行结果管理的能力。
统一测试执行服务的主要原理是,通过 Spring Boot 框架提供 Restful API,内部实现是通过调度 Jenkins Job 具体发起测试。
统一测试数据服务:统一测试数据平台
测试执行环境准备服务
对于 GUI 自动化测试来说,指的就是 Selenium Grid;对于 API 测试来说,指的就是实际发起 API 调用的测试执行机器集群。
被测系统部署服务:主要被用来安装部署被测系统和软件。其实现原理是,调用 DevOps 团队的软件安装和部署脚本
测试报告服务:虽然和传统的测试报告区别较大,但也可以通过引入一个 NoSQL 数据库,以存储的测试报告元数据的方式去实现
全局测试配置服务:配置文件枚举值引入
全局Mock 服务、工程效能工具链仓库