39 | selenium基础架构,UI测试架构

news2024/12/24 8:30:03

什么是测试基础架构?

        测试基础架构指的是,执行测试的过程中用到的所有基础硬件设施以及相关的软件设施。因此,我们也把测试基础架构称之为广义的测试执行环境。通常来讲,测试基础架构主要包括以下内容:

  •         执行测试的机器;测试用例代码仓库;
  •         发起测试执行的 Jenkins Job;
  •         统一的测试执行平台;
  •         测试用例执行过程中依赖的测试服务,比如提供测试数据的统一测试数据平台、提供测试全局配置的配置服务、生成测试报告的服务等;

Selenium Grid

        目前最常用也是主流的测试分布式执行架构。

        Selenium Hub 用来管理各个 Selenium Node 的注册信息和状态信息,并且接收远程客户端代码的测试调用请求,并把请求命令转发给符合要求的 Selenium Node 执行。GUI测试用例放到Hub

基于 Docker 的 Selenium Grid 的搭建方法

#创建了Docker的网络grid
$ docker network create grid

#以Docker容器的方式启动Selenium Hub,并且对外暴露了4444端口
$ docker run -d -p 4444:4444 --net grid --name selenium-hub selenium/hub:3.14.0-europium

#以Docker容器的方式启动并挂载了Chrome的Selenium Node
$ docker run -d --net grid -e HUB_HOST=selenium-hub -v /dev/shm:/dev/shm selenium/node-chrome:3.14.0-europium

#以Docker容器的方式启动并挂载了Firefox的Selenium Node
$ docker run -d --net grid -e HUB_HOST=selenium-hub -v /dev/shm:/dev/shm selenium/node-firefox:3.14.0-europium

基于 Docker 实现的 Selenium Grid 的测试基础架构

可降低维护node成本

引入统一测试执行平台的测试基础架构

可进行测试用例的版本化管理和提供基于Restful API 的测试执行接口供 CI/CD 使用。

基于 Jenkins 集群的测试基础架构

解决的问题:随着测试需求的继续增长,单个 Jenkins 成了整个测试基础架构的瓶颈节点。来自于统一测试执行平台的大量测试请求,会在 Jenkins 上排队等待执行,而后端真正执行测试用例的 Selenium Grid 中很多 Node 处于空闲状态。

测试负载自适应的测试基础架构

        通过单位时间内的测试用例数量,以及期望执行完所有测试的时间,来动态计算得到所需的 Node 类型和数量,然后再基于 Docker 容器快速添加新的 Node 到 Selenium Grid 中;而空闲时段则去监控哪些 Node 在指定时间长短内没有被使用,并动态地回收这些 Node 以释放系统资源。

集群自动扩容的其他方案

使用K8S

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

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

相关文章

BANI时代下,项目如何实现价值交付?

随着时代的变化,继VUCA时代后、新的语言出现:BANI一词逐渐流行起来。BANI,取自四个英文单词 Brittle(脆弱的)、Anxious(焦虑的)、Nonlionear(非线性的)、Incomprehensibl…

CodeTON Round 6 (Div. 1 + Div. 2, Rated, Prizes!)

A.MEXanized Array AC代码: #include<iostream> #include<algorithm> #include<cstring> using namespace std; const int N210; int a[N]; int n,k,x; void solve() {cin>>n>>k>>x;if(x<k-1) {cout<<-1<<endl;return;}i…

论文阅读:AugGAN: Cross Domain Adaptation with GAN-based Data Augmentation

Abstract 基于GAN的图像转换方法存在两个缺陷&#xff1a;保留图像目标和保持图像转换前后的一致性&#xff0c;这导致不能用它生成大量不同域的训练数据。论文提出了一种结构感知(Structure-aware)的图像转换网络(image-to-image translation network)。 Proposed Framework…

电路的基本定律——基尔霍夫定律

基尔霍夫定律 &#x1f391;预备知识&#x1f391;基尔霍夫电流定律(KCL)&#x1f383;基尔霍夫电流定律的本质&#xff1a;节点上电荷具有连续性(不会突变)&#x1f383;基尔霍夫电流定律的推广&#xff1a; &#x1f391;基尔霍夫的电压定律(KVL)&#x1f383;基尔霍夫电压定…

高压放大器在哪些领域中可以进行测试实验

高压放大器是一种重要的电子设备&#xff0c;在众多领域中都可以进行测试实验。本文将为您介绍高压放大器在几个主要领域中的测试实验应用。 高压放大器在电力系统领域中扮演着重要的角色。电力系统需要经常进行各种实验&#xff0c;包括测量电压、电流、功率和阻抗等参数。高压…

yolov5的改进思想

Yolo v5一共有四个模型,分别为Yolov5s、Yolov5m、Yolov5l、Yolov5x。 Yolov5s网络最小,速度最少,AP精度也最低,如果检测的以大目标为主,追求速度,倒也是个不错的选择。 其他的三种网络,在此基础上,不断加深加宽网络,AP精度也不断提升,但速度的消耗也在不断增加。 …

网络安全--防火墙

一、防火墙 二、防火墙实验 拓扑图 第一步、准备条件 1、云的设置 单击云设备&#xff0c;先选择UDP&#xff0c;再增加&#xff0c;增加之后就会记录在下面。 再增加一个虚拟的网卡&#xff0c;选择一个电脑中的虚拟网卡&#xff0c;然后增加。 先选择对应端口&#xff0c;…

【大数据开发技术】实验02-Hadoop常用命令

文章目录 Hadoop常用命令1、实验描述2、实验环境3、相关技能4、知识点5、实验步骤6、总结 练习提高 Hadoop常用命令 1、实验描述 熟悉HDFS的命令行接口 2、实验环境 虚拟机数量&#xff1a;3 系统版本&#xff1a;Centos 7.5 Hadoop版本&#xff1a;Apache Hadoop 2.7.3 …

JMeter 常见函数讲解

当使用JMeter进行性能测试或负载测试时&#xff0c;函数是一个非常有用的工具&#xff0c;可以帮助生成动态的测试数据或处理测试结果。 下面是一些常用的JMeter函数的详细讲解和并列示例&#xff1a; 1、__threadNum&#xff1a; 返回当前线程的编号。可以在测试过程中用于…

爬虫获取静态网页数据

自动爬取网页数据 正常情况下是我们使用浏览器输入指定url&#xff0c;对服务器发送访问请求&#xff0c;服务器返回请求信息&#xff0c;浏览器进行解析为我们看到的界面&#xff0c;爬虫就是使用python脚本取代正常的浏览器&#xff0c;获取相应服务器的返回请求信息&#x…

广告牌安全监测系统,用科技护航大型广告牌安全

城市的街头巷尾&#xff0c;处处可见高耸的广告牌&#xff0c;它们以各种形式和颜色吸引着行人的目光。然而&#xff0c;作为城市景观的一部分&#xff0c;广告牌的安全性常常被我们所忽视。广告牌量大面大&#xff0c;由于设计、材料、施工方法的缺陷&#xff0c;加上后期的检…

报错解决: 未能解析此远程名称: ‘raw.githubusercontent.com‘

如果出现类似报错 添加 199.232.68.133 raw.githubusercontent.com 到 C:\Windows\System32\drivers\etc\hosts 的末尾 再尝试执行

【RocketMQ】消息中间件学习笔记

【RocketMQ】消息中间件学习笔记 【一】RocketMQ概述【1】MQ简介【2】MQ永用途&#xff08;1&#xff09;限流削峰&#xff08;2&#xff09;异步解耦&#xff08;3&#xff09;数据收集 【3】RocketMQ 介绍&#xff08;1&#xff09;RocketMQ 特点&#xff08;2&#xff09;Ro…

如何提升LED显示屏显示效果?

影响LED显示屏显示效果的因素有很多&#xff0c;以下是一些主要的因素&#xff1a; LED灯珠的质量和性能&#xff1a;LED灯珠是LED显示屏的核心组件&#xff0c;其质量和性能会直接影响到整个LED显示屏的显示效果。 显示屏的亮度&#xff1a;LED显示屏的亮度是影响显示效果的一…

Solid框架节点级响应性

前言 随着组件化、响应式、虚拟DOM等技术思想引领着前端开发的潮流&#xff0c;相关的技术框架大行其道&#xff0c;就以目前主流的Vue、React框架来说&#xff0c;它们都基于组件化、响应式、虚拟DOM等技术思想的实现&#xff0c;但是具有不同开发使用方式以及实现原理&#…

霍夫曼编码,计算霍夫曼编码树(数字图像处理大题复习 P7)

文章目录 计算出 x1~x6 的树计算 x1~x6 的编码得出霍夫曼编码 w1~w6 计算出 x1~x6 的树 我们先对 x1~x6 进行排序把最底下的加起来&#xff0c;上面写0 下面写1 然后一层一层加上去&#xff0c;注意加上去以后要 重新排序 计算 x1~x6 的编码 举例&#xff0c;从 x5 出发&…

计算机竞赛 深度学习LSTM新冠数据预测

文章目录 0 前言1 课题简介2 预测算法2.1 Logistic回归模型2.2 基于动力学SEIR模型改进的SEITR模型2.3 LSTM神经网络模型 3 预测效果3.1 Logistic回归模型3.2 SEITR模型3.3 LSTM神经网络模型 4 结论5 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 …

「UG/NX」Block UI 从列表选择部件SelectPartFromList

✨博客主页何曾参静谧的博客📌文章专栏「UG/NX」BlockUI集合📚全部专栏「UG/NX」NX二次开发「UG/NX」BlockUI集合「VS」Visual Studio「QT」QT5程序设计「C/C+&#

硬实力+软实力!2023功能测试进阶之路!

作为一名游戏功能测试&#xff0c;偶尔和朋友聊起工作&#xff0c;他们会说&#xff1a;“你这个工作好呀&#xff0c;平时玩玩游戏&#xff0c;一边玩一边就把工作做了”&#xff1b;有时为了避免别人这样理解&#xff0c;我干脆说自己是搞游戏开发的&#xff0c;这个时候又有…

微软推出统一 Copilot AI 助手;谷歌拟自主研发 AI 芯片;苹果拟在国内引进新的 OLED 供应商丨RTE开发者日报 Vol.55

开发者朋友们大家好&#xff1a; 这里是「RTE 开发者日报」&#xff0c;每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE &#xff08;Real Time Engagement&#xff09; 领域内「有话题的新闻」、「有态度的观点」、「有意思的数据」、「有思考的文章」、「…