1、下载selenium/hub镜像(images)
在cmd命令行输入:docker pull selenium/hub
在cmd命令行输入:docker pull sunshinedalaohu/vnc-node-chrome-debug:sunshinedalaohu
=====================================================================
2、下载selenium/node-chrome-debug(images)
在cmd命令行输入:docker pull selenium/node-chrome-debug
=====================================================================
3、查看是否下载成功
在cmd命令行输入:docker images
====================================================================
4、创建并运行selenium相关容器(Container)
第一步,启动selenium-hub
在cmd命令行输入:docker run -p 5555:4444 -d --name selenium_hub selenium/hub
第二步,启动selenium/node-chrome-debug,注册到hub节点上
在cmd命令行输入:docker run -d -p 5901:5900 --link selenium_hub:hub selenium/node-chrome-debug
====================================================================
5、检查容器(Container)
(1)查看当前运行容器
在cmd命令行输入:docker ps
(2)查看当前存在的所有容器
在cmd命令行输入:docker ps -a
(3)在浏览器输入http://localhost:5555/grid/console,查看是否运行起来
其中hub就是selenium gird的容器,启动的时候使用5555端口,其他的是浏览器的镜像,而且这里也说明一下浏览器容器的5900端口,在docker.io获取浏览器镜像时,会有debug版,debug的话是可以通过VNC Viewer连接映射的端口来查看调试浏览器和用例的具体执行情况,一般也建议直接用debug版,上面分别用了2个chrome的容器集群构建成分布式的web自动化测试环境
启动完整之后打开selenium gird,就能看到具体浏览器容器的启动情况,当然,这一步也是要做到自动检查是否启动成功的
====================================================================
6、更改镜像selenium/node-chrome-debug
截止到这一步:此时可以通过脚本运行成功,但运行过程看不到,且有中文乱码
(1)脚本如下:
(2)运行结果:
故需要对镜像selenium/node-chrome-debug进行下修改(vnc远程查看和中文支持)
此时需要这一步骤Dockerfile 指令.note
window下安装vnc查看器或者在Chrome装vnc插件
====================================================================
7、将之前运行的容器(selenium/node-chrome-debug)删除
并运行当前修正的(selenium/vnc-node-chrome-debug)
必须停止后才可移除
1、(停止当前运行容器)在cmd命令行输入:docker stop amazing_bassi
2、(删除容器)在cmd命令行输入:docker rm amazing_bassi
3、(运行修正的镜像并注册到hub节点上)在cmd命令行输入:
启动一个chrome
docker run -d -p 5901:5900 --name chrome --link selenium_hub:hub selenium/vnc-node-chrome-debug
docker run -d -p 5901:5900 --name chrome --link selenium_hub:hub selenium/vnc-node-chrome-debug:sunshinedalaohu
启动firefox
docker run -d -P -p 5902:5900 --name firefox --link selenium_hub:hub selenium/vnc-node-firefox-debug
再启动一个chrome(用于并发执行)
docker run -d -p 5903:5900 --name chrome1 --link selenium_hub:hub selenium/vnc-node-chrome-debug
docker run -d -p 5903:5900 --name chrome1 --link selenium_hub:hub selenium/vnc-node-chrome-debug:sunshinedalaohu
====================================================================
8、运行脚本,查看运行过程
1、Windows下或Chrome插件的vnc连接vnc-node-chrome容器,查看运行过程,密码(默认密码为secret)为Dockerfile修正的密码88888888,sever为:127.0.0.1:5901(此处端口即为启动容器时的端口)
chrome
chrome1