jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jquery – 间谍和存根有什么区别?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚开始使用sinon.js,我完全被术语所困扰.我使用了存根,子视图的渲染方法删除了.但对间谍的解释对我来说并不清楚.谁能解释这两者究竟有什么区别呢?

还想知道如果我想测试是否已将新模型添加到集合中,该方法会是什么?

解决方法

我对sinon.js并不是很熟悉,但由于这些是一般的TDD术语而不是特定于sinon的术语,我想我仍然可以回答你的问题.

主要区别在于存根纯粹是为了“通过代码”;除了保存虚拟值和方法之外,存根本身不会做任何事情.

另一方面,间谍是检查放入其中的值的存根,或者调用它们的方法.换句话说,两者之间的主要区别是断言语句:存根没有,而间谍有一些(或者它们存储测试代码中其他地方的断言值).

换一种说法:

var stub = BACkbone.Model.extend();
var stub = new stub({value: 'test value'});
// This can be fed to any view for tesTing

var Spy = BACkbone.Model.extend({
    initialize: function() {
        this.on('change:value',this.handleValueChangE);
    },handleValueChange: function(value) {
        assert(!isNaN(value));
    };
    value: 'test value'
});
var spy = new Spy({value: 'test value'});
// This can be fed to any view for tesTing AND it ensures that,// if that view sets its "value",that that value is a number

哦,回答:

再一次,没有专门进入sinon,有两个明显的地方可以“窥探”模型:模型本身及其集合.

您可以向模型添加事件处理程序(或硬连接到测试方法),该模型检查this.collection以确定是否添加了哪个集合.相反,您可以绑定事件或覆盖集合本身的方法,并检查this.models.

大佬总结

以上是大佬教程为你收集整理的jquery – 间谍和存根有什么区别?全部内容,希望文章能够帮你解决jquery – 间谍和存根有什么区别?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。