如何将requirejs与QUnit一起使用

时间:2013-09-20 13:44:49

标签: requirejs qunit

目前我有这个,取自博客文章和主要应用程序的原始requirejs主脚本:

require.config({

    baseUrl: 'js',

    paths: {
        domReady:       'lib/domReady',
        jquery:         'lib/jquery-1.10.2',
        bootstrap:      'lib/bootstrap',
        backbone:       'lib/backbone',
        underscore:     'lib/underscore',
        text:           'lib/text',
        raphael:        'lib/raphael',
        raphaelPlugins: 'lib/raphael.plugins',
        paper:          'lib/paper-full',
        kinetic:        'lib/kinetic-v4.6.0',
        fabric:         'lib/fabric'
    },

    shim: {

        'jquery': {
            exports: '$'
        },

        'bootstrap': {
            deps: ['jquery']
        },

        'backbone': {
            deps: ['underscore', 'jquery'],
            exports: 'Backbone'
        },

        'underscore': {
            exports: '_'
        },

        'fabric': {
            exports: 'fabric'
        },

        'raphaelPlugins': {
            deps: ['raphael']
        },

        'router': {
            deps: ['jquery', 'underscore', 'backbone', 'bootstrap', 'text']
        }

    }

});

require([
    'tests/core.test',
    'tests/models/header.test'
], function () {
    QUnit.start();
});

问题是它只运行传递给它的数组中的第一个测试。我怎样才能更改它以便全部运行它们?

此外,如何为每个单独的测试加载“router”的所有依赖项?

1 个答案:

答案 0 :(得分:0)

要加载路由器依赖项,请将路由器添加为测试文件的依赖项

我认为第二个文件中的所有测试都应该自动运行。如果没有,可能会有一些东西停止测试。有没有异步测试?

我有一个旧博客,其中包含一些有关qunit的代码,并且需要js才能提供帮助。 http://naheece.wordpress.com/2012/12/15/qunit-acceptance-test-framework-with-iframe-require-js-and-jquery-simulate/