编辑
上期咱们以 Jenkins 为例,一边实战一边理解 Docker 的根底命令。这期,咱们将带大家应用 Docker 搭建三个平时测试工作中十分有用的小工具。学会这三个实战之后,你就能够说对 Docker 不是浅尝即止在实践阶段,而是真正有肯定理解,也能为你的工作,真正的解决一部分问题。
官网下载 node_exporter。地址:https://prometheus.io/
2. 启动下载好的 node_exporter 文件
编辑
3. 填写 prometheus.yml 配置文件内容
编辑
4. 应用命令启动 prometheus
5. 输出 ip 和端口号进入 prometheus 的前端界面,而后进入 Targets 页面
6. 在首页输出命令,而后点击 execute,命令有不过这个展现界面不够敌对,而且不好保留。所以在业内,咱们经常将 prometheus+grafana 配合应用
7. 启动 grafana 进入 grafana 界面,初始账号密码为 admin/admin 进入 Add data sourcs-> 抉择 prometheus 配置 prometheus
编辑
8.import 模板
grafana dashboard 内填写
编辑
Prometheus Data Source 字段抉择 prometheus 点击 Import,就搭建胜利了留神,后方有坑:1. 如果被监控的 node_exporter 是 mac 的话,要去 prometheus 官网下载 mac 版本的 node_exporter 执行,且 mac 须要批改一些配置参数。2. 如果批改了 prometheus.yml 须要重启镜像
1. 下载 prom/mysqld-exporter 镜像
2. 启动 mysql 服务
3. 启动 mysqld-exporter 镜像留神:-e 之后的参数要填对,别离对应 用户名 / 明码 @(ip: 端口号)/mysql
4. 在 prometheus.yml 的配置文件中增加 mysql 的配置,并 docker restart prometheus,从新加载 prometheus 的配置(能够参考下面的步骤 2)
5. 进入 prometheus 页面,查看 Targets 中 mysql 是否启动胜利 6. 依照下面的 docker 启动 prometheus 过程,配置好之后进去 grafana 页码,而后抉择 data source,进入 prometheus,输出 prometheus 的 url,抉择“Save&Test”
7. 导入 mysql 模板到 grafana,mysql 的模板 id 为 6239,其余步骤和后面搭建服务器监控是一样的哦。
上面是 mysql 的监控成果
如果咱们的 Web UI 自动化测试用例有上千条,执行工夫经常须要 1~2 天,咱们用什么办法能够节俭这个执行工夫呢?接下来咱们就通过分布式 UI 自动化,即启动多个浏览器执行 UI 自动化测试用例,且每个浏览器执行的 UI 自动化测试用例都是不同的。这样子,就能够大大晋升咱们的 UI 自动化测试的效率。UITest 层会将测试申请发送到 GridHub 层,而 GridHub 则会将这些测试申请转换为测试工作下发到每一个 Node 节点(在每台机器下面咱们能够装一个或多个 Node 节点。),随后 Node 节点驱动浏览器进行自动化测试。测试实现后,Node 节点将测试后果发送到 GridHub 下面,GridHub 再将后果转发回咱们的测试程序 UITest 中
(如下图所示)
Selenium 镜像网上有很多,官网下载即可。也能够定制化。而且还有非可视化的镜像。具备调试作用的近程 UI 服务的可视化镜像,还有轻量级简易版镜像版本。
1. 底层镜像,能够做定制化 selenium/base: Base image which includes Java runtime and Selenium Server JAR fileselenium/node-base: Base image for Grid Nodes which includes a virtual desktop environmentselenium/hub: Image for running a Grid Hub
2. 谷歌、火狐浏览器的非可视化镜像 selenium/node-chrome: Grid Node with Chrome installed, needs to be connected to a Grid Hubselenium/node-firefox: Grid Node with Firefox installed, needs to be connected to a Grid Hub
3. 具备近程 UI 服务的可视化镜像(调试作用):selenium/node-chrome-debug: Grid Node with Chrome installed and runs a VNC server, needs to be connected to a Grid Hubselenium/node-firefox-debug: Grid Node with Firefox installed and runs a VNC server, needs to be connected to a Grid Hub
4. 简易版镜像,不须要 GridHub 和 Node 架构:selenium/standalone-chrome: Selenium Standalone with Chrome installedselenium/standalone-firefox: Selenium Standalone with Firefox installedselenium/standalone-chrome-debug: Selenium Standalone with Chrome installed and runs a VNC serverselenium/standalone-firefox-debug: Selenium Standalone with Firefox installed and runs a VNC server
文档链接:https://github.com/SeleniumHQ… 应用 docker 启动 GridHub
docker 启动 Node 如果想启动多个 Node,能够从新批改一下端口映射比方,将 5902:5900 批改为 5903:5900 这时候咱们就能够发现图片中又显示了一个 Node 信息。如果想在一个 Node 中启动多个浏览器,咱们能够更改这两个字段的数量,比方咱们将 6 批改为 7NODE_MAX_INSTANCES=7;NODE_MAX_SESSION=7, 这时候咱们能够看到有 7 个谷歌浏览器的 logo 筹备一个自动化测试脚本,以 Python 为例
编辑
运行脚本查看运行后果,胜利!