我正在使用 Jasmine 和 Jasmine-JQuery
我的 Jasmine 代码:
it("comp move resulted in an X", function() {
var spyEvent = spyOnEvent('.div', 'click');
$('.div').click();
expect('click').toHaveBeenTriggeredOn('.div');
expect(spyEvent).toHaveBeenTriggered();
});
我的 Jasmine 输出:
预期事件 [object Object] 已在 .div 上触发
-和-
.div 上已触发预期事件点击
我几乎逐字复制了 Jasmine-JQuery guide .
尽管文档中的代码几乎相同,但我似乎无法弄清楚为什么我的测试失败。如果有人有任何类似的问题,请查看类似的问题:Error on Jasmine - Expected event click to have been triggered on #DIV_ID 。我没有回答我的问题,但它可能会回答你的问题。
我不确定这是否有助于说明为什么会发生这种情况,但在我的 spec-runner.js 文件和 app.js 文件中,都有这段代码:
console.log($('.div').text());
我的 HTML:
<div id="1" class="div">X</div>
在spec-runner.js中,控制台打印''
在 app.js 中,控制台打印“X”
感谢您的帮助!
最佳答案
看来您还没有正确加载 HTML 设备
下面的测试通过了 jsfiddle如果负载夹具被注释掉,则会复制您的错误。
beforeEach(function() {
setFixtures('<div id="1" class="div">X</div>');
});
it("comp move resulted in an X", function() {
var spyEvent = spyOnEvent('.div', 'click');
$('.div').click();
expect('click').toHaveBeenTriggeredOn('.div');
expect(spyEvent).toHaveBeenTriggered();
});
关于javascript - Jasmine 错误 - .div 上触发了预期事件 [object Object],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29953089/