Skip to content

实战

搭建UI Grid Hub自动化测试框架

1832670741506555904.png

拉取镜像

docker pull selenium/hub:3.7.1-beryllium
docker pull selenium/node-chrome-debug:3.7.1-beryllium

启动Grid Hub

docker run --name=grid_hub -p 5901:4444 -e GRID_TIMEOUT=0 -e GRID_THROW_ON_CAPABILITY_NOT_PRESENT=true -e GRID_NEW_SESSION_WAIT_TIMEOUT=-1 -e GRID_BROWSER_TIMEOUT=15000 -e GRID_TIMEOUT=30000 -e GRID_CLEAN_UP_CYCLE=30000 -d selenium/hub:3.7.1-beryllium

启动Node节点

# 第一个节点
docker run --name=chrome1 -p 5902:5900 -e NODE_MAX_INSTANCES=6 -e NODE_MAX_SESSION=6 -e NODE_REGISTER_CYCLE=5000 -e DBUS_SESSION_BUS_ADDRESS=/dev/nul -v /dev/shm:/dev/shm --link grid_hub -d selenium/node-chrome-debug:3.7.1-beryllium

# 第二个节点
docker run --name=chrome2  -e NODE_MAX_INSTANCES=6 -e NODE_MAX_SESSION=6 -e NODE_REGISTER_CYCLE=5000 -e DBUS_SESSION_BUS_ADDRESS=/dev/nul -v /dev/shm:/dev/shm --link grid_hub -d selenium/node-chrome-debug:3.7.1-beryllium

# 第三个节点
docker run --name=chrome3 -e NODE_MAX_INSTANCES=6 -e NODE_MAX_SESSION=6 -e NODE_REGISTER_CYCLE=5000 -e DBUS_SESSION_BUS_ADDRESS=/dev/nul -v /dev/shm:/dev/shm --link grid_hub -d selenium/node-chrome-debug:3.7.1-beryllium

# 更多节点,更改一下容器名称即可
......

# VNC默认密码是:secret

上面三条命令就是启动了3个node节点。

NODE_MAX_INSTANCESNODE_MAX_SESSION的意思是注册的node节点能启动多少个浏览器,这里设置的是6个;/dev/shm:/dev/shm是优化内存;第一个节点的-p 5902:5900chrome-debug镜像提供的图形界面服务(只有debug版本的镜像有这个功能)的端口映射到宿主机的5902端口。

PS:/dev/shm是一个驻留在内存中的设备文件,使用tmpfs文件系统,可以使用df -h命令查看。

参考:docker搭建selenium grid分布式https://www.cnblogs.com/zhouliweiblog/p/12572047.html

question

docker: Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: TLS handshake timeout.

解决方案参考:https://blog.csdn.net/BigData_Mining/article/details/87869147

ta_Mining/article/details/87869147