如何使用Sinon框架对AJAX调用进行存根化

5
我有一个函数,它会向一个端点发出AJAX请求并获取JSON响应。我该如何使用Sinon模拟这个AJAX请求,以便测试该函数是否正常工作?

你是否已经尝试过在sinon.js页面中提到的Fake XMLHttpRequest - michaPau
1个回答

7
如果您正在使用jQuery.ajax(),您可以像这样进行存根操作:
var returnData = {name: 'value'}
var stub = sinon.stub($, 'ajax');
stub.yieldsTo('success', returnData);

接下来,您需要编写测试用例。

最后,您应该像这样恢复原始的jQuery.ajax()函数:

$.ajax.restore();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接