我正在嘗試找到使用 Jest 測驗用 TypeScript 撰寫的 Azure Functions 的最佳方法。這需要將一個 Context 物件傳遞給一個滿足以下介面的日志屬性:
interface Logger {
(...args: any[]): void;
error(...args: any[]): void;
warn(...args: any[]): void;
info(...args: any[]): void;
verbose(...args: any[]): void;
}
我不關心測驗對任何這些方法的呼叫,我只關心將有效函式傳遞給物件。我正在尋找創建模擬函式以允許呼叫介面中的任何方法的最快方法,而無需顯式定義我自己的 Logger 實作以進行測驗。
我希望讓它與jest-mock-extended'smockDeep<T>功能一起作業,但無法讓它作業。我寧愿避免引入像 Moq.ts 這樣的專用包。有沒有一種簡單的方法可以使用 (ts-)jest 的內置工具基于此介面創建模擬函式?
uj5u.com熱心網友回復:
我想你已經Logger在你的應用程式中實作了。您可以使用 jestjest.createMockFromModule(moduleName)生成實作的自動模擬
這是一個例子
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/528964.html
