Dan*_*J F 12 javascript unit-testing qunit spy jasmine
我正在编写针对Jasmine和QUnit的不同测试用例的规范来比较它们,在我需要编写测试以检查事件是否绑定到元素之前它们看起来相同.
事件绑定看起来像
$('.page').live('click', function() { page_clicked( $(this) ) });
Run Code Online (Sandbox Code Playgroud)
page_clicked
是一个私有方法,但它需要另一个模块的公共方法.
这是一个茉莉花规格:
it('should bind events to pages', function() {
spyOn( search, 'get_results' );
$('.page:eq(0)').trigger('click');
expect( search.get_results ).toHaveBeenCalled();
});
Run Code Online (Sandbox Code Playgroud)
这个测试工作.现在我正在尝试为QUnit编写相同的测试,但找不到与spyOn类似的任何内容.如何为QUnit编写此测试?
它的原因QUnit没有间谍或嘲笑.但是你可以使用Sinon.JS模拟框架.使用sinon间谍你的测试应该是这样的:
var spy = sinon.spy(search, 'get_results');
sinon.assert.calledOnce(spy);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3002 次 |
最近记录: |