使用global.expect进行Webstorm IDE和mocha测试

时间:2015-06-02 22:04:00

标签: javascript mocha bdd webstorm

我目前运行以下命令来运行我的mocha测试:

./node_modules/.bin/mocha --require ./my.js

在js文件中,我正在使用sinon并期待SpyOn ......

global.expect = require('must');
global.sinon = require('sinon');

如何配置Mocha任务运行器以使用此外部文件。 使用--require ./my.js我仍然会看到ReferenceError: spyOn is not defined

对此有何想法?

1 个答案:

答案 0 :(得分:0)

相对于Mocha运行/调试配置的“工作目录”字段中指定的工作目录,解析所需的模块。

以下是适用于我的配置:

working directory: C:\WebstormProjects\mocha_sinon
Mocha package: C:\WebstormProjects\mocha_sinon\node_modules\mocha
Extra options: --require ./with_req/util.js
Test directory: C:\WebstormProjects\mocha_sinon\with_req

我的spec文件:

var EventEmitter = require('events').EventEmitter;
var should = require('should');

describe('EventEmitter', function(){
    describe('#emit()', function(){
        it('should invoke the callback', function(){
            var spy = sinon.spy()
                , emitter = new EventEmitter;

            emitter.on('foo', spy);
            emitter.emit('foo');
            spy.called.should.equal.true;
        })
        })
})

util.js中;

global.sinon = require('sinon');