知识储备
Selenium是针对Web应用的自动化测试框架和工具集合;支持多种浏览器和编程语言;测试用例直接运行在浏览器中,并模拟用户的操作。
Selenium Grid是一种可以进行分布式自动化测试的辅助工具,该架构中包含两个主要角色:Hub是中心点控制节点;Node是Selenium的工作节点,它们注册到Hub上,并会操作浏览器执行由Hub下发的自动测试用例。
web 端的自动化测试呈现一家独大的状态,大部分都在使用 selenium 完成,也是各大浏览器官方支持的工具,应用非常普遍。
以传统的方式部署分布式 Selenium Grid 集群需要耗费大量时间和机器成本来准备测试环境。比如为了针对不同版本的 Chrome 进行测试,需要将指定版本的 Chrome 浏览器安装到不同物理机或虚拟机上。
Docker 基础
Docker 是开源的应用容器引擎,让开发者可以打包应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。主要有三个组件:
容器 container
容器是镜像创建的实例,是应用实际运行的位置。
镜像 image
一个镜像可以包含一个完整的操作系统环境和用户需要的其它应用程序。docker 的镜像是只可读的,一个镜像可以创建多个容器。
仓库 repository
仓库是集中存放镜像的系统。hub.docker.com 是 docker 官方的公开仓库,存放了大量的镜像供用户下载。