Я думаю, это из-за асинхронного характера javascript.
По умолчанию тесты Jest завершаются, как только они достигают конца своего выполнения. Это означает, что этот тест не будет работать должным образом:
const request = require('supertest');
const app = require('../app');
request(app)
.get("/videos")
.expect(200)
.end(async (err,res) => {
if (err) {
console.error(err);
// done();
} else {
console.log(res.body);
// done();
}
Проблема в том, что тест завершится, как только функция завершится асинхронно. *
const request = require('supertest');
const app = require('../app');
request(app)
.get("/videos")
.expect(200)
.end(async (err,res) => {
if (err) {
console.error(err);
done();
} else {
console.log(res.body);
done();
}
И затем, в этом случае, он ожидает выполнения функции готовности перед завершением теста.
Для получения дополнительной информации. Пожалуйста, отметьте здесь .
Надеюсь, это поможет. Спасибо