【发布时间】:2009-11-18 12:51:46
【问题描述】:
我有这样的 JS 类需要测试:
SomeClass = function {
// some stuff that uses initRequest
this.initRequest = function() {
if (window.XMLHttpRequest) {
return new XMLHttpRequest();
} else if (window.ActiveXObject) {
return new ActiveXObject("Microsoft.XMLHTTP");
}
}
}
我想重写方法 initRequest 以进行测试。我试图做类似的事情
var request = new MockXmlHttpRequest();
var instance = new SomeClass();
instance.initRequest = function() {
return request;
};
// some calls of the SomeClass methods that use initRequest
// some test code with assertions for the request
仍然调用initRequest 方法实际上调用的是原始代码,但不是我试图传递给instance.initRequest 的函数。
有什么想法吗?
【问题讨论】:
标签: javascript ajax unit-testing overriding jsunit