gpt4 book ai didi

javascript - QUnit 中有 spyOn 类似物吗?

转载 作者:可可西里 更新时间:2023-11-01 02:08:40 26 4
gpt4 key购买 nike

我正在为 Jasmine 和 QUnit 编写不同测试用例的规范以比较它们,在我需要编写测试以检查事件是否绑定(bind)到元素之前它们看起来是一样的。

事件绑定(bind)看起来像

$('.page').live('click', function() { page_clicked( $(this) ) });

page_clicked 是私有(private)方法,但它调用了另一个模块的公共(public)方法。

这是 Jasmine 规范:

it('should bind events to pages', function() {
spyOn( search, 'get_results' );

$('.page:eq(0)').trigger('click');

expect( search.get_results ).toHaveBeenCalled();
});

这个测试有效。现在我正在尝试为 QUnit 编写相同的测试,但找不到与 spyOn 类似的任何东西。如何为 QUnit 编写此测试?

最佳答案

这是因为 QUnit 没有 spy 或模拟。但是你可以使用 Sinon.JS模拟框架。使用 sinon spy,您的测试应该看起来像这样:

var spy = sinon.spy(search, 'get_results');
sinon.assert.calledOnce(spy);

关于javascript - QUnit 中有 spyOn 类似物吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8869724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com