首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mocha未退出

Mocha未退出
EN

Stack Overflow用户
提问于 2020-02-14 21:38:23
回答 2查看 80关注 0票数 2

我遇到了Mocha无法退出的问题。

我读到这可能是因为我有悬而未决的资源,但我不确定在哪里。

我的代码是:

代码语言:javascript
复制
import express from 'express';

let app = express();

app.get('/', (req, res) => {
    res.end('Done');
});

app.listen(3000);

export default app;

我的测试是:

代码语言:javascript
复制
import { describe, it } from 'mocha';
import chai, { expect } from 'chai';
import chaiHttp from 'chai-http';
import app from '../app';

chai.use(chaiHttp);

describe('Simple test', () => {
    it('Should', async () => {
        let response = await chai.request(app).get('/');
        expect(response).to.have.status(200);
    });
});
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-02-14 21:53:22

app.listen(3000)的调用阻止了进程退出。

运行测试时,在不调用app.listen(3000)的情况下导入app对象。

app.js

代码语言:javascript
复制
import express from 'express';

let app = express();

app.get('/', (req, res) => {
    res.end('Done');
});


export default app;

test.js

代码语言:javascript
复制
import chaiHttp from 'chai-http';
import { describe, it } from 'mocha';
import app from './app';

chai.use(chaiHttp);

describe('Simple test', () => {
  it('Should', async () => {
    let response = await chai.request(app).get('/');
    chai.expect(response).to.have.status(200);
  });
});

在另一个模块中,导入app并启动它,侦听以正常运行您的服务器。

main.js

代码语言:javascript
复制
import app from './app'

app.listen(3000)
票数 1
EN

Stack Overflow用户

发布于 2020-02-14 21:40:33

尝试使用--exit标志运行测试。这将“强制Mocha在测试完成后退出”ref

$ mocha --exit ./test.test.js

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60227453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档