刚刚发现了Qunit,我正在为第一次写一些测试。现在这可能是一个奇怪的问题,但是这里有。如果我有一个从文件中读取json数据的函数,我该如何测试它?我可以按建议here模拟实际的getJSON。 但这不会打败测试的目的吗?我的意思是文件可能丢失,空,填充无效的JSON,...所以如果我模拟getJSON我无法测试。或者我看错了,因为我提供文件所以不应该对这个功能进行测试吗?
function GetJSONFromFile(){
var fileData;
$.getJSON( "js/file.json", function(data) {
fileData = data;
})
.fail(function(jqxhr, textStatus, error) {
var err = textStatus + ", " + error;
console.log(err);
});
return fileData;
}
答案 0 :(得分:1)
这可以通过mockJax完成:https://github.com/appendto/jquery-mockjax/ 在这里,您可以拦截请求并将其发送到测试json文件。它还允许您返回其他数据类型,因此您可以测试“无效json”问题。
$.mockjax({
url: '/restful/api',
proxy: '/mocks/data.json'
});