Jest тестирование нескольких тестовых файлов порт 3000 уже используется - PullRequest
0 голосов
/ 29 января 2019

Я создаю тестирование для моего экспресс-приложения.В проекте есть несколько тестовых файлов.В каждом модуле экземпляр сервера требуется в методе beforeEach () и закрывается в методе afterEach ().но после тестирования одного или двух модулей он поднимет адрес, который уже используется, и jest не прекратит работу.

beforeEach(() =>  {

    server = require('./../../../bin/www')});
afterEach(async() => { 
    server.close();
    /**
     * database cleanup logic goes here.
     */

 });

Я хочу завершить работу jest после завершения всех тестовых пакетов.

Ответы [ 2 ]

0 голосов
/ 22 июня 2019

Существует также опция --runInBand для запуска тестов один за другим.

0 голосов
/ 23 апреля 2019

У меня была эта проблема, и я, кажется, решил ее, установив jest только на одного работника.Я думаю, что проблема была вызвана несколькими экземплярами сервера, работающего с одним и тем же портом, что привело к конфликту.

Это строка из моего файла npm package.json.--maxWorkers=1, кажется, добился цели (https://jestjs.io/docs/en/cli#maxworkers-num-string).

"scripts": {
  "test": "jest --forceExit --detectOpenHandles  --watchAll --maxWorkers=1"
},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...