Мы используем frisby.js
для наших автоматических тестов API, а frisby.js
использует Jest
в качестве тестового прогона.Теперь в нашем случае мы выполняем глобальную настройку перед выполнением всех тестов API, а после выполнения теста мы выполняем глобальную разборку.
Эта глобальная настройка и разбор я установил в jest.conf.js
:
globalSetup: './jest.globalSetup.js',
globalTeardown: './jest.globalTeardown.js',
Итак, глобальный анализ экспортирует асинхронную функцию, которая запускается один раз после всех тестовых наборов.В нашем глобальном анализе мы создаем тестовое покрытие и отчеты о тестах с помощью внешнего механизма отчетов:
const coverage = require('./test-coverage-generator');
const XunitViewerCli = require('xunit-viewer/cli');
module.exports = async function() {
await coverage.generateTestCoverage();
await XunitViewerCli({
results: './api/reporting/test-reports/jest-junit-report-' + process.env.API_TEST_FOLDER + '.xml',
ignore: [],
output: './api/reporting/test-reports/jest-junit-report-' + process.env.API_TEST_FOLDER + '.html',
title: 'Test Report API Tests for ' + process.env.API_TEST_FOLDER,
port: false,
watch: false,
color: true,
filter: {}
});
}
И проблема заключается в том, что Jest
генерирует сообщение Jest did not exit one second after the test run has completed.
в концетесты, потому что генерация отчета занимает больше одной секунды.
Итак, я больше не хочу видеть это сообщение, потому что это сообщение запутано.Может быть, возможно ли увеличить время ожидания Jest по умолчанию на одну секунду в глобальном масштабе, или есть ли другие возможные решения для предотвращения этого сообщения?