2016-08-29 3 views
0

Я бег селена, выполнив:ускоряя тесты селена

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 тестов селена. По какой-то причине для полного набора тестов требуется 20 минут. Я могу что-то сделать, чтобы ускорить его? Может быть, какая-то конфигурация я могу передать в java?

+1

И вы думаете, что 20 минут слишком длинны? Зачем? Каково ваше ожидание, что делают эти тесты? –

ответ

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

Но указать phan tomjs окр, я выполнить следующее:

php codecept.phar run code --steps --env phantom
0

Если 20 минут это слишком долго, попробуйте запустить тест параллельно на одной машине или использовать селен концентратор для запуска тест параллельно на нескольких машинах. Проверьте раздел workers здесь http://nightwatchjs.org/guide#parallel-running