如何使用jasmine和node从命令行测试jQuery插件?

jcu*_*bic 6 javascript jquery node.js jasmine

我有jQuery插件,我正在测试.我发现了这个问题:如何从命令行对Node.js运行Jasmine测试?但是当我跑步时:

node_modules/jasmine-node/bin/jasmine-node --verbose --junitreport --noColor spec
Run Code Online (Sandbox Code Playgroud)

我得到了$ $未定义的错误.我怎么能包含jQuery?(现在我只测试不与dom交互的实用程序).

jcu*_*bic 0

通过尝试和错误,我想出了这段与 jasmine-node 规范文件中的 jQuery 和 jsdom 一起使用的代码:

if (typeof window === 'undefined') {
    var jsdom = require("jsdom");
    global.document = jsdom.jsdom();
    global.window = global.document.parentWindow;
    var navigator = {userAgent: "node-js", platform: "Linux i686"};
    global.window.navigator = global.navigator = navigator;
    navigator.platform = "Linux i686";
    global.jQuery = global.$ = require("jquery");
}
Run Code Online (Sandbox Code Playgroud)