我在Travis-CI上为我的项目knockout-secure-binding工作时遇到了麻烦。至少,我正在尝试使用WebdriverJS来自动化Chrome的测试。
I noted表示,Travis-CI上的chromedriver似乎存在一些问题,包括:
这个问题似乎是"chrome不可达“的一个变体,据我所知,它需要Google的上游参与来解决它。
错误的详细信息是available through the Travis build log。
虽然有一条评论提到使用--no-sandbox
,但没有明显的解决办法,但不清楚在WebdriverJS中将在哪里或如何使用它。
任何关于这方面的想法都将受到真诚的感谢。
-编辑--
有趣的是,我正在使用Sauce Labs代替Chromedriver。
发布于 2016-12-09 20:19:55
在Travis CI上启动Chrome有一个更简单的方法,只需在addons/apt/source中指定google-chrome,在addons/apt/package中指定google-chrome-package即可。
为了更好地理解,下面是我的示例配置:
sudo: required
dist: trusty
addons:
apt:
sources:
- google-chrome
packages:
- google-chrome-stable
language: node_js
node_js:
- "6"
cache:
directories: node_modules
branches:
only: master
before_script:
- export DISPLAY=:99.0
- sh -e /etc/init.d/xvfb start
- npm i -g npm@^3
- sleep 3
发布于 2016-10-01 00:03:43
我认为Travis确实支持chrome driver,如果你在你的travis.yml中添加了这些,解压正确的chromedriver并解压缩到一个已知的位置,这样你以后就可以追踪它了。
before_script:
- wget http://chromedriver.storage.googleapis.com/2.10/chromedriver_linux64.zip
- unzip chromedriver_linux64.zip -d /home/travis/virtualenv/python2.7.9/
- export CHROME_BIN=chromium-browser
- "export DISPLAY=:99.0"
- "sh -e /etc/init.d/xvfb start"
- sleep 3
此外,当您调用selenium或任何测试自动化库时,您将需要添加此代码,此处的代码是Python
,但这也可以在Java
和Ruby
中完成。
options = webdriver.ChromeOptions()
options.binary_location = '/usr/bin/chromium-browser'
#All the arguments added for chromium to work on selenium
options.add_argument("--no-sandbox") #This make Chromium reachable
options.add_argument("--no-default-browser-check") #Overrides default choices
options.add_argument("--no-first-run")
options.add_argument("--disable-default-apps")
driver = webdriver.Chrome('/home/travis/virtualenv/python2.7.9 /chromedriver',chrome_options=options)
https://stackoverflow.com/questions/20364674
复制相似问题