Подтвердить что ты не робот

Можно ли автоматизировать приложения angularjs с помощью селена? если да, то почему мы должны использовать транспортир?

Я знаю, что мы можем автоматизировать приложения AngularJs с Selenium. Но у нас есть отдельная платформа тестирования E2E, которая является программой Protractor for AngularJs.

Может кто-нибудь помочь мне понять, почему мы должны использовать Транспортер? Почему не Селен?

4b9b3361

Ответ 1

Не уверен, что я понимаю ваш вопрос. Правильно ли я предполагаю, что вы предпочтете использовать Selenium - но хотите понять, чего вам не хватает?

Well - Selenium предоставляет средства для автоматизации веб-браузеров - и, следовательно, используется для автоматических тестов e2e. Selenium API имеет реализации на нескольких основных языках программирования, что позволяет вам писать тесты на Java, С#, python, ruby, JavaScript и т.д.

Если у вас уже есть система тестирования e2e на основе selenium, вы можете использовать ее также для веб-приложений AngularJS. Вы также можете написать необходимые скрипты JavaScript, которые после запуска с помощью webdriver позволят вам делать все, что делает Protractor, - но вам придется делать это самостоятельно (просто заимствуйте из исходного кода Protractor).

Почему это возможно? Поскольку Protractor в основном использовал реализацию Selenium Webdriver для JavaScript и обернул ее таким образом, чтобы ваша жизнь была немного легче при тестировании веб-приложений Angular.

Вы можете увидеть конкретные объяснения в этом старом столбце: http://testautomation.applitools.com/post/94994807787/protractor-vs-selenium-which-is-easier

Я бы сказал, что если вы: 1. хотите написать свой тестовый код в JavaScript 2. сосредоточены на основном Angular JS-приложениях

Возможно, вы захотите рассмотреть использование Protractor. Опять же - нет волшебства. Все, что они сделали, есть в их исходном коде, поэтому вы можете просто взять свои выборы, если вы предпочитаете придерживаться селена.

Ответ 2

protractor - это сквозная платформа для тестирования автоматизации браузера, которая работает через WebDriverJs, который представляет собой веб-редактор selenium javascript.

Цитата из Как это работает? страница документации:

Selenium - это механизм автоматизации браузера. Селен включает Selenium Server, API WebDriver и браузер WebDriver драйверов.

Транспортир работает совместно с Selenium для обеспечения автоматизированного тестовую инфраструктуру, которая может имитировать взаимодействие пользователей с Angular, запущенном в браузере или мобильном устройстве.

Транспортир - это обертка вокруг WebDriverJS, привязки JavaScript для API Selenium WebDriver.

enter image description here

Также смотрите:

Ответ 3

С транспортиром вы можете написать тесты e2e с помощью JavaScript, язык, который вы пишете с помощью приложения Angular.

Кроме того, он имеет Angular -специфические функции.

  • Элементы поиска элементов ждут Angular $digest loop и $http для завершения. Таким образом, у вас будет меньше шансов бороться с проблемами сна и времени.
  • Вы можете выбрать элементы с некоторыми из общих директив, таких как ng-model, ng-repeat, ng-bind и т.д. Это несколько удобно, потому что вы можете иметь относительно меньше идентификаторов и классов в приложениях Angular, потому что они вам нужны только для CSS.