我是个JavaScript单元测试的新手。在我的单元测试中,我一直得到"AssertError: expected "ok" but was [undefined]"的结果。有人能教我如何为ajax调用做单元测试吗?谢谢。顺便说一下,我正在使用JsTestDriver来测试我的单元测试。
这是我的源文件:
function getReport(m, y)
{
$.ajax({
url: "url/to",
data: {
m:m,
y:y
},
dataType: 'json',
success:function (res) {
return res;
}
});
以下是我的测试文件:
TestCase("Report", {
"test get report": function () {
assertEquals("ok", getReport(1, 2015));
}
});
getReport
函数没有返回值。返回值的是异步调用的成功回调函数。您使用的框架应该有一些方法来延迟断言,直到回调函数被执行。但是我无法提供更多帮助,因为我没有 JavaScript 单元测试方面的经验 :( - Diego