茉莉与骨干的集成导致 - 未捕获的TypeError:无法在HtmlReporter()中读取未定义的属性'env'

时间:2015-08-13 11:49:28

标签: backbone.js jasmine

我正在尝试将Jasmine(v2.3.4)集成到骨干js应用程序中,根据网络中的一些示例和文档。从以下链接中提到的一些内容。

http://kilon.org/blog/2012/08/testing-backbone-requirejs-applications-with-jasmine/ http://www.joezimjs.com/javascript/setting-up-a-jasmine-unit-testing-environment-with-testem/

所有步骤都已明确实施,但我收到以下类型错误“未捕获的TypeError:无法在jasmine-html.js HtmlReporter函数中读取未定义的属性'env'。

我看到HtmlReporter采用了一个选项参数,但我不确定要传递给这个方法的内容。感谢您对此主题的任何帮助。

我已将以下代码放入我的require配置中 - 'jasmine':{             出口:'茉莉花'         },         'jasmine-html':{             deps:['jasmine'],             出口:'茉莉花'         },         “新兵”:{             DEPS:[ “茉莉”],             出口:'茉莉花'         }

require([],function(){

var jasmineEnv = jasmine.getEnv();
jasmineEnv.updateInterval = 1000;

var htmlReporter = new jasmine.HtmlReporter(); // ***this is leading to Uncaught TypeError: Cannot read property 'env' of undefined***

jasmineEnv.addReporter(htmlReporter);

jasmineEnv.specFilter = function(spec) {
    return htmlReporter.specFilter(spec);
};

var specs = [];

specs.push('SearchSpec');


$(function(){
    require(specs, function(){
        jasmineEnv.execute();
    });
});

});

2 个答案:

答案 0 :(得分:1)

尝试 journey_id;

require.config({ paths:{ jasmine: 'path/jasmine', 'jasmine-html': 'path/jasmine-html', 'jasmine-boot': 'path/boot', }, shim:{ 'jasmine-html': { deps: ['jasmine'], }, 'jasmine-boot': { deps: ['jasmine', 'jasmine-html'], }, }) require(['jasmine-boot'], function () { require([ 'spec' ], function(){ //trigger Jasmine window.onload(); }); });

答案 1 :(得分:0)

<script data-main="/js/main" src="/js/lib/require.js"></script>
<script type="text/javascript">
    require([
        'test/spec/collections/companyCollection.spec', 
        'test/spec/models/companyDivisionsModel.spec' 
    ], function () {
        window.onload();
    });