Фронтальное тестирование E2E: преимущества реальных и фиктивных данных - PullRequest
0 голосов
/ 24 декабря 2018

Я только начал писать внешние тесты e2e для моего приложения.Приложение имеет интерфейсное ядро ​​и интерфейсный API.Мне не важно, какие у меня фреймворки, вопрос касается общего принципа.

Я стою в середине двух подходов - имитировать исходящие HTTP-запросы или нет.

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

В моем приложении я начал второй подход - не поддаваться никаким HTTP-запросам.В этом случае, если я внесу некоторые изменения во внутреннюю часть - тесты переднего конца e2e также не пройдут.Но теперь у меня есть следующая проблема - я не могу запустить более одного потока тестов для одной и той же базы данных, потому что это может вызвать коллизию.Так что это огромная проблема с производительностью.

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

...