我有一个JS函数,我将调用myPost,它基本上只包含一个$ .ajax函数,它传递一个包含params和方法的对象。我已经广泛搜索了使用Chai和Sinon为这种情况编写Mocha测试的例子,但到目前为止还没有找到。我是编写单元测试的新手,并希望得到一些帮助。
我的测试功能:
const post_login = (username, pword) => {
$.ajax({
type: 'POST',
url: './path/to/Security.cfc',
dataType: 'JSON',
data: {
'method':'postLogin',
'uname': (username),
'pword': (pword)
},
success: function(response, status, jqXHR) {
if(response.ERROR.length) {
$("#submitResponse").html("There was a problem... " + response.ERROR).show();
}
else {
// now clear out the input fields
$("#inputUserName").val('');
$("#inputPassword").val('');
// set data attr for logged in ok and change page content displayed
$('#login').attr('data-logged', '1');
$("#login").hide();
$("#loggedin").show();
}
}
});
};
你能否分享一个例子或解释,帮助我弄清楚如何使用Sinon来测试这个功能。或者功能是否实现不正确?
用户名和密码将传递到ajax呼叫发布数据。我发现用于测试ajax帖子的间谍和模拟示例通常没有,他们使用回调。我的回调是内部的...成功方法。