Я использую Jest. js для тестирования моего node.js REST API.
Мой тестовый файл выглядит так:
'use strict';
const request = require('supertest');
const app = require('./app');
describe('Test /', () => {
test('GET / succeeds (200 OK)', () => {
return request(app)
.get('/')
.expect(200);
});
test('GET /monkey fails (404 not found)', () => {
return request(app)
.get('/monkey')
.expect(404);
});
...
});
Моя проблема в том, что я получаю ошибка TypeError: Cannot read property '_ownerDocument' of undefined
для ПЕРВОГО теста в блоке описания.
Если я заменю первый тест на тест ниже, например, GET / monkey, то этот тест, который сейчас является ПЕРВЫМ тестом, завершится неудачно с той же ошибкой, а тест, который был первым и потерпел неудачу, завершится успешно, так как это уже не ПЕРВЫЙ тест.
Может ли кто-нибудь помочь мне?
пакет. json:
"scripts": {
"test": "jest",
...
},
зависимости в приложении. js:
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const fs = require('fs');
const fetch = require('node-fetch');
const { promisify } = require('util');
const readFile = promisify(fs.readFile);
const UI = require('./public/class.js');
app.use(bodyParser.urlencoded({ extended: true }));
app.use(express.json());
app.set('view engine', 'ejs');
app.use(express.static('public'));
app.use('/public', express.static('public'));
...
module.exports = app;
ПРИМЕЧАНИЕ: Я использую Express + E JS в моем API.
РЕДАКТИРОВАТЬ: ОБНАРУЖЕНА ОШИБКА ЛИНИИ!
Эта строка вызывает ошибку: const UI = require('./public/class.js');
. Для большего контекста пользовательский интерфейс используется для доступа к классу пользовательских ошибок в классе. Файл js, которые были адаптированы с этого веб-сайта .
Пример строки кода в моем файле node.js: throw new UI.InternalError('unable to read JSON file')
.
Может кто-нибудь сказать мне, в чем проблема?