测试具有触发事件的函数

时间:2014-11-20 05:23:22

标签: javascript unit-testing jasmine

我正在编写一个Jasmine测试来测试javascipt函数。以下是功能

 checkFunc: function (Info1,Info2) {

            if(Info1 && Info2)
            {
                $(document).trigger('customeEvent');
            }

        }

我正在尝试监视已触发的自定义事件。我根据互联网上的一些资源使用了spyOnEvent。但根据Jasmine的官方文档,我无法找到一种名为spyOnEvent的方法。当我使用spyOnEvent时它表示" spyOnEvent未定义"。有人可以帮助我如何检测此特定事件的触​​发

1 个答案:

答案 0 :(得分:1)

您需要做的就是在触发事件之前先听取事件。

$(document).on('customEvent', function() {
    testPass(); //Just an example, not sure how to do this in Jasmine
}

这是必须使用超时处理的事件。如果事件未在特定时间窗口内触发(再次,不确定Jasmine如何处理此事件),则测试应该失败。