不能使用jasmine-jquery匹配器

时间:2015-06-04 12:56:58

标签: javascript jquery jasmine karma-jasmine jasmine-jquery

我正在使用Karma,Jasmine,并尝试使用jasmine-jquery提供的一些自定义匹配器来测试我正在做的一些DOM操作。

我的karma.conf.js中有以下内容:

// Karma configuration
module.exports = function(config) {
    config.set({

    // base path that will be used to resolve all patterns (eg. files, exclude)
    basePath: '',
    frameworks: ['jasmine-jquery', 'jasmine'],
    files: [
        'bower_components/angular/angular.js',
        'bower_components/angular-mocks/angular-mocks.js',
        'node_modules/jquery/dist/jquery.js',
        'src/**/*',
        '.tsout/*.js'
    ],
    exclude: [
        '**/*.ts',
        '**/*.json'
    ],
    preprocessors: {
       '.tsout/*.js': 'coverage'
    },
    reporters: ['progress', 'coverage'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: false,
    browsers: ['Chrome'],
    plugins: [
        'karma-jasmine-jquery',
        'karma-jasmine',
        'karma-coverage'
    ],
    singleRun: false
  });
};

而且,在我的一个.spec.js文件中,我有类似的东西:

describe("DOM Stuffs", function(){

    it("should have a DOM element with ID test", function(){
        expect($('#test').toBeInDOM());
    });

});

Karma没有任何投诉而开火,我以前的所有测试都按预期运行。但是,当它进入此测试时,我得到以下TypeError:

TypeError: $(...).toBeInDOM is not a function at Object.<anonymous>

对我在这里缺少什么的想法?

版本:业力:0.12.33 |茉莉:2.1.1 |业力茉莉:0.3.5 | jasmine-jquery:2.1.0 | karma-jasmine-jquery:0.1.1

0 个答案:

没有答案