BAT大厂都在用的Docker。学会这三招,面试、工作轻松hold住

news2025/1/19 6:59:28


上期我们以Jenkins为例,一边实战一边了解Docker的基础命令。这期,我们将带大家使用Docker搭建三个平时测试工作中非常有用的小工具。学会这三个实战之后,你就可以说对Docker不是浅尝即止在理论阶段,而是真正有一定了解,也能为你的工作,真正的解决一部分问题。

官网下载node_exporter 。地址:Prometheus - Monitoring system & time series database

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内填写

Grafana Labs

1 Node Exporter for Prometheus Dashboard CN 20201010 dashboard for Grafana

【中文版本】2020.10.10更新,增加整体资源展示!支持 Grafana6&7,Node Exporter v0.16及以上的版本,优化重要指标展示。包含整体资源展示与资源明细图表:CPU 内存 磁盘 IO 网络等监控指标。https://github.com/starsliao/Prometheus

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 file
selenium/node-base: Base image for Grid Nodes which includes a virtual desktop environment
selenium/hub: Image for running a Grid Hub

2.谷歌、火狐浏览器的非可视化镜像
selenium/node-chrome: Grid Node with Chrome installed, needs to be connected to a Grid Hub
selenium/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 Hub
selenium/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 installed
selenium/standalone-firefox: Selenium Standalone with Firefox installed
selenium/standalone-chrome-debug: Selenium Standalone with Chrome installed and runs a VNC server
selenium/standalone-firefox-debug: Selenium Standalone with Firefox installed and runs a VNC server

文档链接:
GitHub - SeleniumHQ/docker-selenium: Docker images for Selenium Grid
使用docker启动GridHub

docker启动Node
如果想启动多个Node,可以重新修改一下端口映射比如,将5902:5900修改为5903:5900这时候我们就可以发现图片中又显示了一个Node信息。
如果想在一个Node中启动多个浏览器,我们可以更改这两个字段的数量,比如我们将6修改为7NODE_MAX_INSTANCES=7;NODE_MAX_SESSION=7,这时候我们可以看到有7个谷歌浏览器的logo
准备一个自动化测试脚本,以Python为例

运行脚本
查看运行结果,成功!

注意:如果服务器系统不支持可视化不加这条会启动失败chrome_options.add_argument(’–headless’)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/93262.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java学习笔记 --- MySQL-数据库

一、使用命令行窗口连接MySQL数据库 1、mysql -h 主机名 -P 端口 -u 用户名 -p密码 2、登录前,保证服务启动 示意图 二、数据库三层结构 1、所谓安装MySQL数据库,就是在主机安装一个数据库管理系统(DBMS),这个管理程…

Metal每日分享,纯色图片滤镜效果

本案例的目的是理解如何用Metal实现纯色图片效果滤镜,主要就是生成纯色图片; Demo HarbethDemo地址 实操代码 // 纯色滤镜 ImageView.image C7Color.purple.mt.colorImage(with: CGSize(width: 600, height: 600))效果对比图 不同参数下效果 purpl…

[附源码]Python计算机毕业设计高校助学金管理系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

(19)深度点云学习--利用RGBD图三维重建room

1、主要参考 (1)最主要参考,官方的blog Make fragments — Open3D 0.16.0 documentation (2)操作流程参考 Python从RGBD数据进行3D场景重建 - 百度文库 (3)blog Open3d利用彩色图和深度图…

新冠第6天,简单总结下

大家好,我是彭涛!今天是阳了个阳第6天,我已经完全康复了,没任何感觉了!因为前几天发了篇文章,我去,阳了个阳,打了一把高端局!很多人都知道我新冠阳性了,都来关…

如何做好疫情防控档案管理工作

近日,国内疫情虽整体可控,但各地区性突发疫情仍此起彼伏,防控攻坚战继续处于艰难的拉锯状态,那在疫情防控工作中的档案是如何收集、整理、形成的呢?什么是疫情防控档案?本文将带你走近疫情期间的档案&#…

cuda学习笔记1——cuda概述

cuda学习笔记1——cuda概述1. GPU架构特点2. CUDA线程模型3. CUDA内存模型4. CUDA编程模型第一个要掌握的编程要点:关键字第二个编程要点:数据传输参考: CUDA编程之快速入门 英伟达官方——CUDA C 编程指南 CUDA(Compute Unified…

vue2和vue3的环境搭建

1. node 安装 可以使用nvm 对node 的版本进行控制 # 查看版本 $ npm -v 2.3.0#升级 npm cnpm install npm -g# 升级或安装 cnpm npm install cnpm -g2.vue2环境安装# 安装最新vue稳定版 $ cnpm install vue 二种方式创建vue2项目 vue create vuepro1 //vue的方式创建项目v…

Git的安装,理论基础与基本使用

前言 本文为Git的安装,理论基础与基本使用相关知识,下边将对Git的安装与环境配置,Git相关理论基础(包含:Git 是什么,Git的三种状态,Git保证完整性),以及Git的相关操作&am…

form rules校验:动态table中input校验

问题描述 使用antd的form-model的rules表单校验 那如图表格中的input如何也一同校验? 如图可见规则是一个数据结构为二维数组的可动态生成的表格,如何对其中的input进行校验? 一维数组表格校验分析 先分析简单点的问题,表格是数…

Redis持久化RDB的三种触发机制及其优缺点

一、前言 大家都知道Redis是内存数据库,所有的数据都存放在内存中,如果没有配置持久化,当我们关闭redis服务器再重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,保证在redis重启…

全景也要更清晰,基于RK3588核心板的8K全景相机方案【飞凌嵌入式】

内容来源:飞凌嵌入式官网www.forlinx.com伴随着虚拟现实技术(简称VR)的热潮,VR全景影像开始兴起,全景相机市场也迎来了高速发展。近年来,360全景相机几乎成为了数码潮人和vlog拍摄者手中必不可少的一款产品…

Ghidra逆向工具之旅与二进制代码分析【3】

逆向工程中涉及到多种多样的工具(例如IDA Pro,Angr等),熟练使用这些工具可以化繁为简,使得程序分析工作得以顺利开展。本系列文章系统地介绍众多逆向工具中的一种——Ghidra,它是由美国国家安全局(NSA,National Security Agency)的研究理事会为 NSA 的网络安全任务开发…

手把手教你成为荣耀开发者:应用管理指南

荣耀开发者服务平台是荣耀面向开发者的统一生态入口,通过聚合周边内外部系统,分全球多站点部署,为全球开发者提供业务全生命周期的商业支撑服务,拥有应用分发、智慧服务、开放能力、HONOR Connect等众多业务等您来合作。 应用管理…

满足条件 -C++条件判断

引言 小森在玩MC(我的世界) 的时候,一般都玩生存,所以你们应该知道 :要想致富先 撸树,这个玩法 可是非常原始,但必须在平原或者森林里,若是一开始就在沙漠里可想而知,没有一点资源,怎么玩下去 ,当然走出去 要是下一个区域 里有树那很好, 没树继续.若在此之前发生了饱腹度一点一…

Linux中使用交叉编译、二进制分析工具链

交叉编译,顾名思义,就是要生成在其它平台上运行的目标代码。例如,现在个人电脑上的CPU都基于X86/X86-64架构。但很多手机或其它嵌入式设备的处理器则可能是基于ARM架构的。如果要在个人电脑上开发嵌入式应用,就要进行交叉编译。本文主要演示在Linux环境下使用交叉编译及二进…

Qt 模型视图编程之表头设置

背景 Qt 模型视图编程中模型定义了标准接口对数据进行访问,可根据需求继承对应的抽象模型类来实现自定义的数据模型。一个基本的数据模型至少要实现以下虚函数: ①.rowCount:行数,返回要显示多少行; ②&am…

Django 图书借书系统

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一、Django是什么? 二、django安装 1.安装 2.需要的pip list 安装 三、django 建立图书馆管理系统 1.建立项目 建立项目locallibrary 2.参加APP 建…

[附源码]Python计算机毕业设计高校医疗健康服务系统的设计与实现Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

java计算机毕业设计基于安卓Android的婚恋相亲app

项目介绍 网络的广泛应用给生活带来了十分的便利。所以把网上婚恋相亲系统与现在网络相结合,利用java技术建设网上婚恋相亲系统APP,实现网上婚恋相亲系统的信息化。则对于进一步提高网上婚恋相亲系统发展,丰富网上婚恋相亲系统经验能起到不少的促进作用。 网上婚恋相亲系统APP能…