首页 文章

无法通过Docker中的Jenkins运行selenium测试

提问于
浏览
0

所以我有Ubuntu的VM . 主机在Win10上 . 在这个VM里面,我安装了一个docker,在那里我拉了jenkins并为jenkins安装了selenium插件 . 我可以从win10到达一个selenium节点 . 但是当我尝试从我的IDE启动测试时:

val cap: DesiredCapabilities =  DesiredCapabilities.chrome()
cap.setBrowserName("chrome")
webDriver = new RemoteWebDriver(new URL("http://192.168.10.223:4445/wd/hub/"), cap)
go to "https://www.google.com"

我有这个错误,我不明白为什么......

Exception encountered when invoking run on a nested suite - Unable to create new service: ChromeDriverService
Build info: version: '3.12.0', revision: '7c6e0b3', time: '2018-05-08T15:15:08.936Z'
System info: host: '2d3135afb490', ip: '172.17.0.2', os.name: 'Linux', os.arch: 'amd64', os.version: '4.15.0-24-generic', java.version: '1.8.0_171'
Driver info: driver.version: unknown
Command duration or timeout: 101 milliseconds

难道我做错了什么 ?还是我错过了一些配置?

1 回答

  • 0

    Docker容器没有桌面(如果我理解它,你的selenium进程就在这样的容器内运行),因此它们不会运行UI测试 . 你的机会是:

    • 使用PhantomJS驱动程序 . 这是一个浏览器,不会渲染任何东西,也不需要桌面 . 免责声明:在无头(无桌面)会话中尝试但不在Docker上尝试

    • 尝试破解Docker镜像并创建X Desktop Session.

相关问题