1
我在TypeScript上編寫代碼。這裏是我的代碼片段:在TypeScript中關閉的Stubbing函數
module mymodule {
export function internalFunc() {
return 1;
}
export function externalFunc() {
return internalFunc() + 1;
}
}
將被編譯成這個JS:
var mymodule;
(function (mymodule) {
function internalFunc() {
return 1;
}
mymodule.internalFunc = internalFunc;
function externalFunc() {
return internalFunc() + 1;
}
mymodule.externalFunc = externalFunc;
})(mymodule || (mymodule = {}));
//# sourceMappingURL=file1.js.map
我需要測試externalFunc
與磕碰internalFunc
(例如,它應該返回7)。但提及internalFunc
已關閉,我可以更改mymodule.internalFunc
,但externalFunc
將使用舊的internalFunc
。我試圖使用sinon.stub(mymodule, 'internalFunc', function() {return 7})
,但它也沒有工作。我可以正確存根我的功能嗎?
您應該在此測試的「單元」可能是您的整個模塊。您無需在單個功能級別進行單元測試。 –
「*我可以更改mymodule.internalFunc,但externalFunc將使用舊的internalFunc *」 - 這聽起來不正確。你能否詳細說明你在測試中如何使用這個功能? – Katana314