javascript - 在intellij中使用requirejs时JsTestDriver断言

标签 javascript intellij-idea requirejs js-test-driver

我试图使用 requirejs 和 jsTestDriver intellij 插件编写一些 javascript 单元测试。当我在 IDE 中运行它们时,即使有一些错误,我也没有出现错误。我仅在打开浏览器控制台时看到它们。 有人设法让 IDE 插件将失败显示到 require 函数中吗? 下面是我的代码和一些说明我的问题的屏幕截图。

TestCase("Collections", {
    "test User Collection": function () {
        require(['lib/underscore', 'lib/backbone', 'app/user', 'app/collections'],
            function (_, Backbone, user, appCollections) {
                assertNotUndefined('Users must be defined', appCollections.users);
                assertTypeOf('Users must be backbone collection', typeof Backbone.Collection, appCollections.users);
                assertTypeOf("Users' model must be a user", typeof Backbone.Model, appCollections.users.model);
            });
    }
});

Intellij jsTestDriver plugin test result

My browser console

最佳答案

我还没有测试过这个,但它可能会让你开始:

var CollectionsTest = AsyncTestCase('Collections');

CollectionsTest.prototype.testIt = function(queue) {

  queue.call('Step 1', function(callbacks) {

    function test1(_, Backbone, user, appCollections) {
        assertNotUndefined('Users must be defined', appCollections.users);
        assertTypeOf('Users must be backbone collection', typeof Backbone.Collection, appCollections.users);
        assertTypeOf("Users' model must be a user", typeof Backbone.Model, appCollections.users.model);
    }

    var onModulesLoaded = callbacks.add(test1);

    require(['lib/underscore', 'lib/backbone', 'app/user', 'app/collections'], onModulesLoaded);

  });

};

关于javascript - 在intellij中使用requirejs时JsTestDriver断言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17190529/

相关文章:

backbone.js - 无法在从路由器 Vent 触发的功能中访问主干、集合模型

javascript - node-orm2 实例缺少保存方法

javascript - AngularJS + ag-grid : sticky/remembered selections with virtual paging/infinite scrolling

scala - scala 开发人员如何处理带有 shapeless 的 scala 代码中不正确的 IDE(Idea) 错误

java - 大规模重构 - 如何将 final 关键字添加到 Java 方法参数

javascript - 如何在 requirejs 中使用 Angular 场景

javascript - 如何为代码的特定部分禁用 JSCS 验证 : Line must be at most 120 characters

javascript - iOS 15 : Web Audio playback stops working in Safari after locking screen for a few minutes

java - Intellij IDEA : Get notified when a Run Configuration is launched

javascript - 如何编写一个可以与 Node.js、RequireJS 以及没有它们一起工作的模块