[英]How to test triggered events?
为什么此测试不通过?
beforeEach(function(){
loadFixtures('addvehicle.html');
});
it ("should trigger change event on #selectLanguage", function(){
spyOnEvent('#selectLanguage', 'change');
$('#selectLanguage').trigger('change');
expect('change').toHaveBeenTriggeredOn('#selectLanguage');
});
我的装置文件如下所示:
<div id="selectTypeWrapper"></div>
<select id="selectLanguage"></select>
我收到此错误:
错误:#selectLanguage已触发预期事件[object Object]
我是否必须设置变更侦听器? (这将如何工作?)
我不知道为什么您的代码不起作用,但是您可以尝试以下方法:
var changeSpy;
beforeEach(function(){
loadFixtures('addvehicle.html');
changeSpy = jasmine.createSpy('handleChange() spy');
$('#selectLanguage').change(changeSpy);
});
it ("should trigger change event on #selectLanguage", function(){
$('#selectLanguage').change();
expect(changeSpy).toBeDefined();
expect(changeSpy).toHaveBeenCalled();
});
它将间接测试事件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.