简介
使用Selenium Grid可以分布式运行UI自动化测试,可以同时启动多个不同的浏览器,也可以同时启动同一个浏览器的多个session。这里使用Docker Compose来同时启动不同浏览器的容器和Selenium Grid,只需一条命令就把自动化运行环境部署好了。
前提条件
已经在Linux服务器安装好docker,docker compose
编写Docker Compose
在Linux服务器下创建docker-compose.yaml文件
docker-compose.yaml文件内容如下:
# To execute this docker-compose yml file use `docker-compose -f docker-compose.yaml up`
# Add the `-d` flag at the end for detached execution
# To stop the execution, hit Ctrl+C, and then `docker-compose -f docker-compose.yaml down`
version: "3"
services:
chrome:
image: selenium/node-chrome:latest
container_name: selenium-chrome
shm_size: 2gb
ports:
- "7900:7900"
depends_on:
- selenium-hub
environment:
- SE_EVENT_BUS_HOST=selenium-hub
- SE_EVENT_BUS_PUBLISH_PORT=4442
- SE_EVENT_BUS_SUBSCRIBE_PORT=4443
edge:
image: selenium/node-edge:latest
container_name: selenium-edge
shm_size: 2gb
ports:
- "7901:7900"
depends_on: