@d2207

В чём разница между е2е и Unit тестами?

Привет! Пытаюсь протестировать агуляр приложение используя protractorи е2етестирование. После того как прочитал уйму статей в интернетах возник вопрос - в чём разница между юнит и е2е тестами? В общем и целом, разницу я понял из статей, вопрос не столько про методологию сколько про структуру и организацию этих тестов. В каких директориях их нужно хранить? Как выглядит древо проекта с е2е и юнит тестами? Как я понял при е2е- все *.spec.ts и *.po.ts складываются в отдельную папку на уровне src. При unitтестах все *spec.ts лежат непосредственно с *.component.ts. Верно? А могут ли е2етесты лежать в папке с компонентами которые они тестируют? Кароче наркоманский вопрос весь день читаю всё что вижу.
  • Вопрос задан
  • 56 просмотров
Пригласить эксперта
Ответы на вопрос 2
Ommonick
@Ommonick
qa+dev (scala, golang, ts/js, api, grpc)
unit test - тест одного модуля
е2е - end to end - тест с заданными рамками

юниты обычно лежат рядом с самими модулями (в golang например client.go и client_test.go рядом - это норм)
а е2е помещаются в отдельную папку test в которой помимо этих е2е всякие helpers и клиенты к вспомогательным сервисам)

и запускаются юниты перед сборкой, а e2e после нее
Ответ написан
Ну технически могут, кто ж вам запретит то.
Но тут надо делать различие больше не технологическое, а бизнесовое.
юнитов - много их запускают перед сборкой/выкаткой приложения, так как они замоканы, проходят быстро и стабильные, ну и они больше технические, нежели бизнесовые
е2е - это уже больше про бизнес-кейсы. Их должно быть мало. Они завязаны на сторонние сервисы, незамоканы и следовательно не стабильны. и запускают их уже в рамках больше регресса. И логично их держать где-то в одном месте, что бы когда их опять придется чинить и править, не искать их черти где.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
20 окт. 2020, в 22:57
5000 руб./за проект
20 окт. 2020, в 21:37
300000 руб./за проект
20 окт. 2020, в 21:18
500 руб./за проект