Тестирование loopback 3 с шуткой и супертестом не завершается изящно - PullRequest
0 голосов
/ 24 марта 2019

Я пытаюсь создать тест с использованием Jest и Supertest для моего сервера loopback 3 rest API. Тест запущен, но Jest не вышел изящно.

Это мой тестовый скрипт branch.test.js :

const app = require('../server/server');
const request = require('supertest');

describe('Test the root path', () => {
    afterAll(done => {
        app.close(done);
    });

    test('It should response the GET method', async () => {
        const response = await request(app).get('/api/branches');
        expect(response.statusCode).toBe(200);
    });
})

И package.json для настройки теста

{
    "scripts": {
        "lint": "eslint .",
        "start": "node .",
        "posttest": "npm run lint",
        "test": "jest --detectOpenHandles"
    },
    "jest": {
        "testEnvironment": "node"
    }
}

Каждый раз, когда я запускаю npm run test, журнал всегда возвращает:

Jest обнаружил следующую открытую ручку, потенциально сохраняющую Jest с выхода:
● TCPWRAP
11 |
12 | test («Должен ответить на метод GET», async () => {
13 | const response = ожидание запроса (приложения) .get ('/ api / branch');
14 | ожидать (response.statusCode) .toBe (200);
15 | });
16 | }) * * Тысяча двадцать пять в Test.Object..Test.serverAddress (Node_modules / Supertest / Lib / test.js: 59: 33)
в новом тесте (node_modules / supertest / lib / test.js: 36: 12)
в Object.obj. (анонимная функция) [как получить] (Node_modules / Supertest / index.js: 25: 14)
в Object.get (test / unit / branch.test.js: 13: 45)

журнал указывает на функцию get . Люди на форуме используют jest --forceExit, но это не так, как я хочу. Есть ли решения для этой проблемы? Спасибо за ответ

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