测试运行完成后一秒钟 Jest 没有退出(没有猫鼬)

Posted

技术标签:

【中文标题】测试运行完成后一秒钟 Jest 没有退出(没有猫鼬)【英文标题】:Jest did not exit one second after the test run has completed (no mongoose) 【发布时间】:2019-09-16 00:44:05 【问题描述】:

我正在尝试编写一个简单的案例,我正在点击路线并检查响应。

我的测试有效,但每次它也会抛出这个消息:

Jest did not exit one second after the test run has completed.This usually means that there are asynchronous operations that weren't stopped in your tests. Consider running Jest with `--detectOpenHandles` to troubleshoot this issue.

这是我的单元测试:

 // we will use supertest to test HTTP requests/responses
import request = require('supertest');
import bodyParser1 = require('body-parser');

// we also need our app for the correct routes!
const index = require('./index');
index.use(bodyParser1.json());
index.use(bodyParser1.urlencoded( extended: true ));

describe('GET / ', () => 
  test('Test sample get', async done => 
    const response: any = await request(index).get('/');    
    expect(response.text).toEqual('Welcome to Minos');
    expect(response.statusCode).toBe(200);
    done();
  );
);
afterAll(async done => 
  done();
);

这是我的 index.ts:

const express = require('express');
const bodyParser = require('body-parser');


const app = express();
const port = 3000;
app.use(bodyParser.json());
app.use(bodyParser.urlencoded( extended: true ));

app.get('/', (req, res) => 
  //res.setHeader('Content-Type', 'text/html');
  res.send('Welcome to Minos');
);


app.listen(port, () => console.log(`Example app listening on port $port!`));

module.exports = app;

【问题讨论】:

你找到答案了吗?因为我面临同样的问题。 Jest 版本是“24.8.0”。 @jan 不,还在等待:( 【参考方案1】:

你试过这个吗?我希望这种方式可以解决你的问题。

describe('GET / ', () => 
  test('Test sample get', async () => 
    const response: any = await request(index).get('/');    
    expect(response.text).toEqual('Welcome to Minos');
    expect(response.statusCode).toBe(200);
  , 20000);
);

done 也不需要异步/等待方法。

【讨论】:

以上是关于测试运行完成后一秒钟 Jest 没有退出(没有猫鼬)的主要内容,如果未能解决你的问题,请参考以下文章

使用 express 完成测试运行后一秒钟 Jest 没有退出

测试成功完成后开玩笑没有终止

测试无法运行测试用例退出 TypeError: Jest: a transform must export a `process` function

有没有办法用 Jest 顺序运行一些测试?

如何使用 jest 来监视 Schema.virtual 的猫鼬?

PyQt5 窗口在运行几秒钟后自动关闭 - “进程以退出代码 -1073741819 (0xC0000005) 完成”