2014-12-09 2 views
12

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

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

+0

Голосование закрывается слишком широко, поскольку на самом деле нет ограничений на ответы, которые могут быть заданы на этот вопрос, и за исключением явно ужасных ответов ответы не будут объективно оценены. Я тестирую приложение Angular, но я не использую Protractor главным образом потому, что Angular - это крошечный бит гораздо большего приложения в этом проекте, и у меня уже была Python-инфраструктура для тестирования. – Louis

+0

@Louis определенно в вашем комментарии. Лично я просто попытался прояснить, что «транспортитчик» все еще касается селена, потому что это похоже на то, что ОП смешивает яблоко и апельсины. – alecxe

+0

@ Louis - Я задал аналогичный вопрос [на форуме SQA] (http://sqa.stackexchange.com/questions/14555/e2e-testing-of-angular-app-with-python-backend-protractor-javascript-vs- webdriv) - у нас есть платформа pobon/webdriver pageobject, сильное предпочтение Python над Javascript, спрашиваю, стоит ли переставлять переводчик, каковы ловушки –

ответ

6

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

Цитата How it works? странице документации:

Селен является основой автоматизации браузера. Selenium включает в себя сервер Selenium, API WebDriver и драйверы WebDriver .

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

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

enter image description here

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

2

С транспортир, вы можете написать E2e тесты с JavaScript, язык вы пишете с угловыми приложением.

Кроме того, он имеет особенности, характерные для углов.

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

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

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

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

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

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

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

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

+0

Тому, кто проголосовал за мой ответ - не забывайте про комментировать, что с ним не так? –

+0

Hi Doron, Не могли бы вы посоветовать мне, как реализовать API-интерфейс транспортира JavaScript в Java для использования в существующих Selenium Java Framework. Спасибо заранее ... – Sravan

Смежные вопросы