Запукаем Protractor на Browserstack

Небольшая заметка о том, как запустить protractor тесты на разных браузерах используя сервис Browserstack.

Подробно о protractor можно почитать тут и тут.

Настройка конфига

Ключевые опции это capabilities и seleniumAddress:

[javascript]
capabilities: {
//эти параметры можно получить на странице – https://www.browserstack.com/automate
‘browserstack.user’ : ‘my_user_name’,
‘browserstack.key’ : ‘my_secret_key’,

‘browserstack.local’ : ‘true’,

‘browser’ : ‘Chrome’,
‘browser_version’ : ‘36.0’,
‘os’ : ‘OS X’,
‘os_version’ : ‘Mavericks’,
‘resolution’ : ‘1024×768’
},

seleniumAddress: ‘http://hub.browserstack.com/wd/hub’
[/javascript]

Более подробно о возможных параметрах тут.

Подробный лог (например: для отладки) можно включить следующей опцией:

[javascript]
capabilities: {
//…
‘browserstack.debug’ : ‘true’,
//…
},
[/javascript]

Настройка Browserstack для локального запуска

Достаточно скачать(тут) и запустить файл:

[bash]
./BrowserStackLocal my_secret_key localhost,3000,0
[/bash]

3000 – номер порта, на котором локально проект (только для случая локального тестирования)

Запуск протрактора

Тут ничего нового, так же команда с указанием конфиг-файла:

[bash]
protractor protractor-browserstack.config.js
[/bash]

 

UPD: Если вы тестируете реальный сайт (не локальное окружение), то BrowserStackLocal запускать не нужно. Но в любом случае его лучше иметь для локальной отладки.

UPD2: Если вы хотите использовать несколько браузеров (и запускать тесты параллельно) используйте опцию multiCapabilities вместо capabilities.

* Если что, автоматические тесты – это платная услуга, но ее можно попробовать бесплатно (на данный момент предоставляется 100 минут бесплатно)