【问题标题】:karma-sinon-chai fails after moving to Windows迁移到 Windows 后 karma-sinon-chai 失败
【发布时间】:2015-07-17 06:48:30
【问题描述】:

我在 Karma 下运行单元测试,并且正在使用 sinon-chai 库。

在 Mac 上一切正常,但现在我已移至 Windows,出现以下错误:

C:\Users\mchambe4\dev\simple\client>node ./node_modules/gulp/bin/gulp.js unit-tests-dev
[16:29:31] Using gulpfile ~\dev\simple\client\gulpfile.js
[16:29:31] Starting 'unit-tests-dev'...
[16:29:31] Starting Karma server...
WARN [karma]: Port 9876 in use
INFO [karma]: Karma v0.12.37 server started at http://localhost:9877/
INFO [launcher]: Starting browser PhantomJS
INFO [PhantomJS 1.9.8 (Windows 7 0.0.0)]: Connected on socket fMujwCqRPdmidI3BtCYV with id 16821903
PhantomJS 1.9.8 (Windows 7 0.0.0) ERROR
  ReferenceError: Can't find variable: chai
  at C:/Users/mchambe4/dev/simple/client/node_modules/karma-sinon-chai/node_modules/sinon-chai/lib/sinon-chai.js:17

来自that file

if (typeof require === "function" && typeof exports === "object" && typeof module === "object") {
    // NodeJS
    module.exports = sinonChai;  // <---- should go in here
} else if (typeof define === "function" && define.amd) {
    // AMD
    define(function () {
        return sinonChai;
    });
} else {
    // Other environment (usually <script> tag): plug in to global chai instance directly.
    chai.use(sinonChai);         // <---- actually ends up here
}

我希望第一行的条件返回true,因为我在Node 中运行,但由于某种原因,'require' 或module 都没有被定义,所以它在上面指出的点结束。

有什么想法吗?

【问题讨论】:

    标签: javascript node.js karma-runner chai sinon-chai


    【解决方案1】:

    将 karma-sinon-chai 从 1.0.0 降级到 0.3.2 为我们解决了这个问题。已经提交了一个 github 问题,我认为这将很快得到解决。 https://github.com/kmees/karma-sinon-chai/issues/21

    npm install karma-sinon-chai@0.3.2 --save-dev
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-09
      • 1970-01-01
      • 2019-02-03
      • 2015-07-30
      • 2021-01-21
      • 2015-06-19
      • 2011-01-31
      • 2019-12-25
      相关资源
      最近更新 更多