我通过以下方式运行selenium:
java -jar /opt/selenium-server-standalone-2.53.0.jar -Dwebdriver.chrome.args="--use-gl=osmesa" -Dwebdriver.chrome.driver=/usr/bin/chromedriver -Dwebdriver.chrome.bin=/usr/bin/google-chrome -log /home/jenkins-user/log/selenium.log &
然后我运行夜视硒测试。出于某种原因,完整的测试套件需要20分钟才能运行。有什么办法可以加快速度吗?也许我可以将一些配置传递给java?
答案 0 :(得分:0)
我有一个双Selenium环境设置,Firefox作为默认的webdriver,Phantomjs作为备用环境。当我编写测试时,我使用firefox驱动程序并观察浏览器的内容。但是对于CI服务器,我使用的是实际上并没有打开浏览器窗口的phantomjs。我实际上并没有计时,但它可能快了约50%。
无论我想运行什么测试,我总是使用以下内容启动Selenium服务器:
java -jar selenium-server-standalone-2.53.0.jar -Dphantomjs.binary.path=../bin/phantomjs
code.suite.yml包含以下内容:
class_name: CodeTester modules: enabled: - WebDriver: - Db: cleanup: false config: WebDriver: url: 'http://my.example.com' browser: firefox clear_cookies: true window_size: 1024x768 capabilities: unexpectedAlertBehaviour: 'accept' env: phantom: modules: config: WebDriver: browser: phantomjs clear_cookies: true window_size: 1024x768 capabilities: unexpectedAlertBehaviour: 'accept' phantomjs.cli.args: [ '--ignore-ssl-errors=true' ]
要调用默认的Firefox,我只需运行以下命令(不提供env):
php codecept.phar run gui --steps
但是为了指定phantomjs env,我执行以下命令:
php codecept.phar run code --steps --env phantom
答案 1 :(得分:0)
如果20分钟太长,请尝试在一台机器上并行运行测试,或使用selenium hub在多台机器上并行运行测试。
请查看workers
此处http://nightwatchjs.org/guide#parallel-running