Должен ли я использовать Protractor или Karma для моего сквозного тестирования?

Должен ли я использовать Protractor или Karma для моего сквозного тестирования?

Angular -seed использует Protractor/Selenium WebDriver для E2E, но в учебнике angular -phonecat используется карма.

Я читал, что должен использовать Karma для модульных тестов и Protractor для E2E, что кажется прекрасным, но я думал, что попрошу здесь получить другие мнения.

Ответ 1

Команда AngularJS рекомендует использовать Protractor для замены сценария angular:

Angular Сценарий Runner находится в режиме обслуживания. Если вы начинаете новый проект angular, рассмотрите возможность использования Protractor.

цитируется Документация AngularJs.

Учебник angular -phonecat был разработан давно (в основном в 2011 году) и еще не обновлен, чтобы использовать некоторые новые функции angular, такие как Protractor.

ИЗМЕНИТЬ

В Документы протранслятора - часто задаваемые вопросы:

Почему и Карма и Транспортер? Когда я использую какой?

Karma - отличный инструмент для модульного тестирования, а Protractor предназначен для от конца до конца или тестирования интеграции. Это означает, что небольшие тесты для логика ваших индивидуальных контроллеров, директив и служб должна запускаться с использованием Karma. Большие тесты, в которых у вас есть работающий экземпляр все ваше приложение должно быть запущено с помощью Protractor. Транспортир предназначенный для запуска тестов с точки зрения пользователя - если ваш тест может записываться как инструкции для человека, взаимодействующего с вашим приложение, оно должно быть завершающим тестом, написанным с помощью Protractor.

Здесь отличный пост в блоге с дополнительной информацией.