代码之家  ›  专栏  ›  技术社区  ›  Owen Zhao

当我在我的项目中运行mocha测试时,它不能在测试后终止

  •  1
  • Owen Zhao  · 技术社区  · 7 年前

    我正在用摩卡咖啡做测试。

    这是我的测试用例。

    const mysql_service = require('../../router/mysql_service')
    
    const chai = require('chai')
    var chaiAsPromised = require("chai-as-promised");
    
    chai.use(chaiAsPromised);
    const expect = chai.expect;
    describe('mysql_service', function () {
      this.timeout(20000)
      it('#qryInterconnectionStocks', function (done) {
          mysql_service.qryInterconnectionStocks(20)
          .then(function(result)  {
            expect(result).not.to.be.null
            expect(Array.isArray(result)).to.be.true
            // console.log(result)
            done()
          },function(err) {
            console.log(err)
            expect(err).to.be.null
            done(err)
          })
    
      })
    })
    

    首先,我运行test命令

    mocha test/**/*.js
    

    它成功了,但终端没有退出。

    2 回复  |  直到 7 年前
        1
  •  1
  •   Jehy    7 年前

    您应该添加 --exit 标记为 mocha 命令使其退出,请参见 breaking changes .

        2
  •  0
  •   Owen Zhao    6 年前

    现在我明白了。进程无法退出的原因是我的mysql连接未关闭,因此进程无法退出util所有进程都已关闭。