Когда проводить тестирование E2E - PullRequest
1 голос
/ 20 января 2020

Я работаю в проекте (angular и весенняя загрузка), и мы проводим тесты UnitTests и Integration. Я немного озадачен тестированием E2E. Когда я должен использовать E2E-тестирование, какие преимущества может принести мне e2e Test?

Когда достаточно UnitTest, когда я должен использовать E2E Test.

Это общий вопрос, и он не относится к конкретной c технологии

Ответы [ 2 ]

1 голос
/ 20 января 2020

Ответ может показаться субъективным, но все дело в том, что вы на самом деле тестируете.

Если вы тестируете свой код (ваша функция получает x и y и выдает z) - используйте модульные тесты. Если вы тестируете компонент в реальной / полуреальной среде - используйте интеграционное тестирование. Компонент может быть микросервисом, частью микросервиса, уровнем DAO на бэкэнде - что бы вы ни находили полезным.

Оба должны проверить, что программист действительно выполнил правильное кодирование (единицу) и что предполагается код работать, когда он не находится в вакууме (интеграционный тест).

Однако оба типа теста не охватывают бизнес-потоки системы. Это работа для тестов End2End.

Эти тесты представляют собой "автоматическое c" представление того, что раньше было регрессионным тестом, когда парни QA запускали Scenar ios в реальной системе.

Эти тесты обычно go, такие как:

  • Вход на экран X
  • Введите это и то
  • Нажмите кнопку AB C
  • Теперь вы на экране Y
  • И т. Д. И т. Д., Пока проверяемый поток проверяется

Так что я не думаю, что только Модульные тесты могут помочь вам, а иногда вам также нужны тесты E2E.

1 голос
/ 20 января 2020

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...