我正在使用CircleCI,想要运行Huxley测试。
但是我需要运行selenium服务器才能进行测试。
我尝试运行selenium服务器独立的jar包,但这并不是解决方案。
如果您有相关的经验,请帮忙解决问题。
大多数浏览器测试框架已经包括了Selenium。如果你需要运行一个独立的Selenium服务器,可以将以下内容添加到存储库根目录下的circle.yml文件中:
dependencies:
post:
- wget https://selenium-release.storage.googleapis.com/2.44/selenium-server-standalone-2.44.0.jar
- java -jar selenium-server-standalone-2.44.0.jar:
background: true
这将下载最新的独立 Selenium jar 并在后台运行。请注意第二个命令末尾的冒号以及 "background: true" 的 4 个空格缩进。这会告诉 YAML 将 background
视为命令的修饰符。
更多文档可以在此处找到:
https://circleci.com/docs/background-process
https://circleci.com/docs/installing-custom-software
注意:如果您在此答案中更新 JAR 链接,请确保它是 HTTPS。因为中间人攻击可能导致 JAR 被替换/篡改,所以从不安全的 HTTP 下载并直接运行被视为危险的。
安装完整的Selenium、ChromeDriver和Chrome:
dependencies:
pre:
# Install Selenium.
- curl http://selenium-release.storage.googleapis.com/2.53/selenium-server-standalone-2.53.1.jar > selenium-server-standalone.jar
- curl http://chromedriver.storage.googleapis.com/2.23/chromedriver_linux64.zip | gzip -dc > chromedriver
- chmod +x chromedriver
- 'java -jar selenium-server-standalone.jar -trustAllSSLCertificates -Dwebdriver.chrome.driver=chromedriver':
background: true
# Update Google Chrome.
- google-chrome --version
- wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
- sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb stable main" >> /etc/apt/sources.list.d/google.list'
- sudo apt-get update
- sudo apt-get --only-upgrade install google-chrome-stable
- google-chrome --version
curl
命令将无法工作。您不能将zip
管道传输到gzip
以进行解压缩。它们是两种不兼容的压缩方案。但是以下命令可以正常工作:curl https://chromedriver.storage.googleapis.com/2.33/chromedriver_mac64.zip -O && unzip chromedriver_mac64.zip
- javafueledgunzip
能解压缩 .zip
归档文件吗?(http://www.gzip.org/#faq17)。`gunzip` 就是 gzip -d
。事实上,每次我尝试这样做时,Linux 和 Mac 版本都会告诉我 gzip: unknown compression format
。我非常 尊重地 表示怀疑,认为管道并没有像人们想象的那样起作用。 - javafueled
selenium
进程?比如从protractor
配置中获取地址和端口? - javafueled