我grunt-contrib-jasmine
用来测试我的 AMD 模块。开箱即用,测试似乎相互影响。
输出不会按文件分隔测试。这可以通过在测试中记录一些东西来验证beforeEach
。在所有测试中,对所有测试文件执行相同的回调。
如何使测试彼此隔离,即通过测试规范文件分开?是添加另一层嵌套的唯一解决方案吗?
咕噜声配置
options: {
specs: 'test/specs/unit/**/*spec.js',
keepRunner: true,
template: require('grunt-template-jasmine-requirejs'),
templateOptions: {
requireConfig: requireConfig
}
}
sample1.spec.js:
define(['Squire', 'sinon'], function(Squire, sinon){
'use strict';
var sut,
injector,
fakeServer;
beforeEach(function(done){
fakeServer = sinon.fakeServer.create();
console.log('create fake server'); // this is logged for all test files
injector = new Squire();
injector.require(['core/http-service'], function(httpService) {
sut = httpService;
done();
});
});
afterEach(function(){
fakeServer.restore();
injector.remove();
});
it('', function(){
expect(1).toBe(1);
});
});