Черный ящик, тестирующий процесс Node, делающий внешние запросы с Jest - PullRequest
0 голосов
/ 21 сентября 2018

В настоящее время я работаю над проектом, в котором у нас запущен бэкэнд-процесс (с process.env.NODE_ENV = 'test'), а затем протестировал бэкэнд, выполнив экземпляр Jest, который выполняет вызовы бэкэнд-процесса.Текущая база кода не может быть проверена модулем в ее текущем состоянии.Технических долгов много, и мы только недавно начали внедрять тесты «черного ящика», чтобы помочь нашей команде двигаться быстрее.

Одной из проблем, с которыми мы сталкиваемся при тестировании, является то, вызывает ли процесс бэкэнднадлежащий запрос, соответствующее количество раз, к внешнему источнику при определенных условиях.Кроме того, чтобы помочь нам реализовать новые функции и с уверенностью вносить изменения, нам действительно нужен способ заглянуть внутрь «черного ящика», чтобы хотя бы проверить, были ли затронуты определенные блоки кода.

Мы подумали оСледующие решения, но не уверены, являются ли они хорошими практиками или как их лучше реализовать с помощью Node и Jest:

1) Создайте утилиту сокетов, которая для бэкэнда будет работать только при NODE_ENV==='test'.Утилита сокетов будет генерировать события, которые мы можем прослушивать в Jest, чтобы убедиться, что выполняются правильные действия.

2) Запуск серверного процесса через прокси-сервер и некоторая настройка Jest для просмотра исходящих запросов, которые выполняет сервер.

Буду очень признателен за любые советы или инструменты, которые мы могли бы использовать.

...