如何与jasmine-node一起使用jsdom.jQueryify?

用jasmine的jQueryifyfunction可以使用jasmine-node吗? 我想要做的就是使用NodeJS来testing一些依赖于DOM存在的JavaScript。

这是我尝试的一个减less的情况。 当我运行这个脚本时,jasmine-node识别这个规范,但是不运行expect()

 var fs = require('fs'), jsdom = require('jsdom'), window = jsdom.createWindow(), jasmine = require('jasmine-node') describe("jQueryify", function() { it('should run the test!', function () { jsdom.jQueryify(window, function (window, jquery) { expect(1).toEqual(1) }) }) }) 

或者,是否有不同的/更好的方式来testingNodeJS中的假设类似浏览器的环境?

好的,根据一个半相关问题的答案 ,我能够得到expect()来执行。 我想我的问题的答案是不使用内置jQueryify函数,而是手动拉动jQuery。

 var fs = require('fs'), window = require('jsdom').jsdom('<html><head></head><body></body></html>').createWindow(), script = window.document.createElement('script'), jasmine = require('jasmine-node') describe("jQueryify", function() { it('should run the test!', function () { script.src = './path/to/jquery.js' script.onload = function () { expect(typeof window.$).toEqual('function') asyncSpecDone() } window.document.head.appendChild(script) asyncSpecWait() }) })