我有有這樣的JS類測試:Javascript:如何重寫某些類中的公共方法?
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
。
任何想法有什麼不對?
由於 的//的使用initRequest – DixonD 2009-11-20 02:13:48
你有沒有使用螢火檢查調用之前和之後請求SomeClass的方法的一些電話?我發現FireBug是必不可少的。也許你可以發佈額外的代碼? – Upperstage 2009-11-20 18:16:39