docker swarm里搭建Selenium Grid分布式测试集群,测试节点随时在线,无需反复启停,效率增倍

分布式测试集群搭建

Selenium Grid 是 Selenium 生态系统中的关键组件,专为分布式测试设计,支持在多环境、多设备上并行执行测试用例,显著提升测试效率

核心组成:

  • Hub(中心节点):作为控制中枢,负责接收测试请求并将任务分发至符合条件的节点。通常运行在单一机器上。

  • Node(执行节点):实际执行测试的机器,可注册到 Hub。每个节点可配置不同的浏览器、版本及操作系统(如 Chrome on Windows、Firefox on macOS)。

docker Swarm里执行

先启动hub中心

复制代码
docker service create \
  --name selenium-hub\
  --with-registry-auth\
  --network product_overlay_network \
  --replicas 1 \
  --constraint 'node.labels.jeecgcenter== true' \
   docker.m.daocloud.io/selenium/hub:latest

再启动node节点

复制代码
docker service create \
  --name selenium-node-chromium \
  --network product_overlay_network \
  --replicas 1 \
  --constraint 'node.labels.jeecgcenter==true' \
  -e SE_EVENT_BUS_HOST=selenium-hub \
  --mount type=tmpfs,destination=/dev/shm,tmpfs-size=2g \
  -e SE_EVENT_BUS_PUBLISH_PORT=4442 \
  -e SE_EVENT_BUS_SUBSCRIBE_PORT=4443 \
  docker.m.daocloud.io/selenium/node-chromium:latest

注意:swarm集群和 network网络请自行创建。

  • 子节点可以后面调整节点个数,默认为1个

效果展示:

启动8个节点的效果如下:

使用场景

  • 1.不同类型浏览器进行测试用例测试
  • 2.数据抓取的时候,使用该集群可以减少浏览器安装以及驱动配置支持selenium,playwright框架。

优势

可以指定任意数量的节点运行,
节点实时运行,不需要每次都启动停止浏览器,用完只需断开连接,后面继续使用连接上来就行,效率很高

相关推荐
码上上班16 分钟前
docker课程
java·docker·容器
ZENERGY-众壹3 小时前
跨品牌逆变器升级:华为锦浪德业 API 对接的 7 个坑
分布式·华为·数据归一化·光伏运维·逆变器api
取谖慕12.4 小时前
Docker容器从入门到精通
docker·容器·eureka
取谖慕12.4 小时前
Harbor仓库从讲解到部署实战
docker·harbor
祉猷并茂,雯华若锦6 小时前
Win下完美解决Allure报错,生成Web自动化测试报告
android·python·selenium·自动化
逍遥德6 小时前
运维技术栈Linux+docker+Kubernetes+Jenkins/GitLab CI 知识点详细列表
linux·运维·docker
名字还没想好☜6 小时前
Kubernetes CrashLoopBackOff 排查全流程:从 describe 到日志到 exit code
运维·docker·云原生·容器·kubernetes
冰封之寂6 小时前
Docker 部署与基础命令详解:从安装到容器管理全流程指南
linux·运维·docker·容器
Baron X7 小时前
Gitea Docker 部署教程
docker·gitea
薛定谔的猫19827 小时前
LLaMA-Factory +DeepSpeed 分布式多卡训练实战全解
分布式·deepspeed·zero·多卡训练·多卡分布式训练