【问题标题】:Speeding up selenium tests加快硒测试
【发布时间】:2016-08-29 22:33:01
【问题描述】:

我通过以下方式运行 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 &

然后我运行 nightwatch selenium 测试。出于某种原因,运行完整的测试套件需要 20 分钟。我有什么办法可以加快速度吗?也许我可以将一些配置传递给 java?

【问题讨论】:

  • 你觉得20分钟太长了?为什么?您的期望是什么,这些测试在做什么?

标签: java selenium jenkins nightwatch.js


【解决方案1】:

我有一个双 Selenium 环境设置,其中 Firefox 作为默认 web 驱动程序,Phantomjs 作为备用环境。当我编写测试时,我使用 firefox 驱动程序并观察浏览器的中断情况。但是对于 CI 服务器,我使用了 phantomjs,它实际上并没有打开浏览器窗口。我实际上没有计时,但它可能快了大约 50%。

无论我要运行什么测试,我总是使用以下命令启动 Selenium 服务器:

java -jar selenium-server-standalone-2.53.0.jar -Dphantomjs.binary.path=../bin/phantomjs

code.suite.yml 包含以下内容:

类名:CodeTester 模块: 启用: - 网络驱动程序: - D b: 清理:假 配置: 网络驱动程序: 网址:'http://my.example.com' 浏览器:火狐 clear_cookies: 真 窗口大小:1024x768 能力: 意外警报行为:“接受” 环境: 幻影: 模块: 配置: 网络驱动程序: 浏览器:phantomjs clear_cookies: 真 窗口大小:1024x768 能力: 意外警报行为:“接受” phantomjs.cli.args:['--ignore-ssl-errors=true']

要调用默认的 Firefox,我只需运行以下命令(未提供 env):

php codecept.phar 运行 gui --steps

但要指定 phantomjs 环境,我执行以下操作:

php codecept.phar 运行代码 --steps --env phantom

【讨论】:

    【解决方案2】:

    如果 20 分钟太长,请尝试在一台机器上并行运行测试,或使用 selenium hub 在多台机器上并行运行测试。 在这里查看workers 部分http://nightwatchjs.org/guide#parallel-running

    【讨论】:

      猜你喜欢
      • 2011-02-15
      • 1970-01-01
      • 2015-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-06
      • 2010-10-19
      相关资源
      最近更新 更多