Selenium Grid是可以通过vnc客户端或者noVNC网页客户端连接查看程序允许状态的,但是,这个vnc有一个默认的显示尺寸,大约是这样的一个效果
其实吧,影响也不是很大,但是,当测试一些大尺寸的页面的时候,比如这样 $chromeOptions->addArguments(["--window-size=1920,1080"]); ,就会出现下面这样的情况
其实要是说影响测试结果吧,其实也没有影响,只是程序跑的过程就看不到了,而且平时拿来上个网也不太方便。
研究了很久,最后用vnc关键词在SeleniumHQ/docker-selenium里搜索到了原来是在创建docker镜像时的环境变量里规定了screen的宽和高,那就很简单了,只要在创建容器的时候,替换掉这几个数值就可以了。
具体路径在:docker-selenium/NodeBase/Dockerfile
涉及如下两个环境变量
1 2 |
ENV SCREEN_WIDTH 1360 ENV SCREEN_HEIGHT 1020 |
只需要在执行的时候进行替换即可,这两个变量其实主要用于xvfb and VNC server
1 |
-e SCREEN_WIDTH=1920 -e SCREEN_HEIGHT=1080 |
完整的创建自定义显示尺寸的Selenium Grid容器命令如下
1 |
docker run -d -p 4444:4444 -p 7900:7900 -p 5900:5900 --shm-size="4g" -e SCREEN_WIDTH=1920 -e SCREEN_HEIGHT=1080 --name chrome selenium/standalone-chrome:4.1.0-20211209 |
修改之后看一下效果
成了
All Done!
There are no comments yet