概述
在docker里面创建UI自动化测试平台
搭建环境
安装docker
详细见docker官方文档
安装selenoid
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| docker pull aerokube/selenoid:latest-release mkdir -p /data/config vim /data/config/browsers.json --------------------------- { "firefox": { "default": "57.0", "versions": { "57.0": { "image": "selenoid/vnc:firefox_57.0", "port": "4444", "path": "/wd/hub" } } } } ---------------------------
docker run -d \ --name selenoid \ -p 14444:4444 \ -v /data/config:/etc/selenoid/:ro \ -v /var/run/docker.sock:/var/run/docker.sock \ aerokube/selenoid:latest-release
|
注意:最好使用其他的端口转发4444端口。4444端口不是安全的,应该禁止掉。
安装selenoid ui
1 2 3 4 5
| docker pull aerokube/selenoid-ui 如果selenoid是跟selenoid-ui安装在一起的话,那么需要查看selenoid的IP >>> ifconfig | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -v 127.0.0.1 | awk '{ print $2 }' | cut -f2 -d: | head -n1 >>> 172.17.0.1 >>> docker run -d --name selenoid-ui -p 8080:8080 aerokube/selenoid-ui --selenoid-uri http://172.17.0.1:14444
|
操作
在本地写好脚本,用python撸了一个
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| import selenium from selenium import webdriver capabilities = { "browserName": "firefox", "version": "57.0" }
driver = webdriver.Remote( command_executor="http://192.168.31.236:4444/wd/hub", desired_capabilities=capabilities)
driver.get('https://www.baidu.com') print(driver.title)
|
然后你就可以看到成功运行的样子

总结
然后打开 http://yourip:8080 就可以打开相应的webUI界面,在这里我们可以看到selenoid的使用方法,最后编写相应的脚本放上去跑就可以了。