Автор оригинала: Ethan Nwankwo.
Качество никогда не бывает авария, это всегда результат интеллектуальных усилий – Джон Рускин
Познакомьтесь с транспортиром
Protractor – это сквозная тестовая платформа для приложений JavaScript (Angularjs), которые интегрируют такие технологии, как Nodejs, Selenium, Jasmine, Mocha и Webdriver.
Протяженность E2E Тестирование рабочего процесса:
Система тестирования (NODEJS) – WebDriver (Selenium) – угловое приложение
Почему бы не просто Селен, почему вам также нужен транспортир?
Angularjs Приложения являются веб-приложениями, которые используют гибридный синтаксис HTML для экспресс-компонентов. В Angularjs мы находим синтаксис, такой как _ng-for_
, _ng-если
, ng-model_
и _ng-repeat_
Отказ Эти гибридный синтаксис не включены в локаторы селена, поскольку Selenium не может их идентифицировать. Однако транспортир сверху селена может идентифицировать, ручку и контролировать эти атрибуты. Он фокусируется на тестировании фактической функциональности приложения Angularjs.
Преимущества использования транкторов:
Если вы пишете тесты E2E для приложений Angularjs, вам нужен транспортир. Вот почему:
- Протрактор основан на концепциях Angularjs, следовательно, легко понять для новых пользователей с предыдущими знаниями Angularjs.
- Протракторы ускоряют тестирование, поскольку это позволяет избежать необходимости для многих « Спины ‘и’ ждет «В ваших тестах, учитывая, что он оптимизирует сон и время ожидания.
- С транспортировкой у вас есть доступ к группе настроек от Selenium, чтобы легко создавать тесты для приложений Angularjs.
- Он работает на реальных браузерах, таких как Chrome и Firefox и безголовые браузеры, такие как HTMLUNIT и PHANTOMJS Отказ
Установка и использование
Не так быстро, у вас есть ваш зависимость?
Чтобы начать использование транспортировки, вам необходимо установить следующие зависимости:
1. Java: Скачать и установить Java на вашей машине
2. Nodejs: Следующий шаг – это Скачать и установить nodejs. После установки NODEJS откройте терминал и запустите команду, показанную ниже, чтобы проверить версию узла:
node -v
Если установлено правильно, вы увидите ответ, аналогичный тем, который показан ниже на консоли:
v6.x.x
Поздравляем, вы готовы начать использовать транспортировку.
- Установить транспортир
После завершения выше шагов открывайте окно терминала и запустите команду:
npm install -g protractor
Это будет установить транспортир во всем мире на вашу машину. Чтобы проверить эту установку, запустите следующую команду:
protractor --version
Если правильно установлен, вы получите ответ, аналогичный:
version x.x.x
- Обновите WebDriver-Manager (необязательно, но рекомендуется)
Менеджер WebDriver используется для проработки тестов для углового приложения в конкретном браузере. Вы можете обновить WebDriver-Manager, используя команду:
webdriver-manager update
- Начать WebDriver-Manager
Начните Manager WebDriver, чтобы прослушать тесты, работающие с помощью транспортировки. После того, как Protractor используется для запуска теста, WebDriver автоматически загрузится и запускает тесты в соответствующем браузере.
Чтобы запустить WebDriver-Manager, запустите следующую команду на терминале:
webdriver-manager start
Это запускает сервер WebDriver-Manager.
После этого сделано, откройте веб-браузер и введите следующий адрес в адресной строке: http://localhost: 4444/WD/Hub
Это должно открыть веб-страницу, аналогичную тем ниже:
Если вы видите эту страницу, тотрактор был успешно установлен.
Образец Angularjs Тестирование с использованием транспортировки:
В этом разделе мы проверим простое приложение Angularjs, развернутое на Angularjs веб-страница Использование транспортировки с хромедрией.
Для этого мы создадим два файла, conf.js и test-spec.js Файлы, как показано ниже:
Cont.js.
exports.config = { capabilities: { 'browserName': 'chrome' }, seleniumAddress: 'http://localhost:4444/wd/hub', specs: ['test-spec.js'] };
test-spec.js.
describe('AngularJS 2-way binding test', () => { it('Should bind the name you enter into the input box', () => { browser.get('https://angularjs.org'); element(by.model('yourName')).sendKeys('World'); const response = element(by.css('h1.ng-binding')); expect(response.getText()).toEqual('Hello World!'); }); });
В файле конфигурации мы указываем Google Chrome в качестве браузера тестирования по умолчанию. Обратите внимание, что это может быть любой реальный или безголовый браузер, такой как Firefox или Phantomjs.
После настройки файлов запустите команду ниже, чтобы запустить тест E2E с помощью Protractor:
protractor conf.js
Вышеуказанная команда запускает Chrome Browser и запускает указанный тест.
Интеграция Browsercack
С Брасирбак Мы можем проверить веб-приложения через несколько браузеров, как правило, как проверка совместимости и/или отзывчивости. Протрактор может быть интегрирован в Browserstack, чтобы убедиться, что тест E2E работает через несколько браузеров. А config.js
Файл, интегрирующий BoowStackack для тестирования приложения в Internet Explorer, работающий на Windows7, показан ниже:
exports.config = { 'seleniumAddress': 'http://hub-cloud.browserstack.com/wd/hub', specs: ['test-spec.js'], 'baseUrl':, 'capabilities': { 'browserstack.user': ' ', 'browserstack.key': ' ', 'os': 'Windows', 'os_version': '7', 'browserName': 'IE', 'browser_version': '8.0', 'resolution': '1024x768' }};
Мульти-браузерное тестирование
«Очень зачем тестировать только один, когда вы можете проверить на них все? »
Используя Booverstack, мы можем запустить тесты на нескольких браузерах одновременно. Это дает вам возможность обеспечить производительность вашего приложения в разных браузерах без предварительной записи вашего тестового конфигурации. Образец конфигурации файла показан ниже:
exports.config = { 'seleniumAddress': 'http://hub-cloud.browserstack.com/wd/hub', specs: ['test-spec.js'], 'baseUrl':, browserstackUser: ' ', browserstackKey: ' ', 'multiCapabilities': [{ 'os': 'OS X', 'os_version': 'El Capitan', 'browserName': 'Chrome', 'browser_version': '52.0', 'resolution': '1280x960' },{ 'browserName': 'IE', 'browser_version': '11', 'os': 'Windows', 'os_version': '10' },{ 'browserName': 'Safari' },{ 'browserName': 'Firefox' },{ 'browserName': 'iPhone', 'platform': 'MAC', 'device': 'iPhone 5S' }] };
Заключение
Используя выше шаги, мы можем запустить тесты e2e на приложениях Angularjs, используя Protractor и структуру их для проведения нескольких браузеров для проверки совместимости и отзывчивости с использованием совместной совместимости.
Способствовать
Не стесняйтесь оставить свои комментарии и предложения.
Дальнейшее чтение