Open hsiaofung opened 4 years ago
如何對服務進行單元測試?
以相依服務測試元件
以模擬服務測試元件
測試取得服務實例有兩種方式。可以如StockService的測試,依靠Angular測試工具的inject函式注入服務實例,或如此處使用元素的injector參考。
取得服務實例後,可以使用Jasmine的間諜監視服務的方法。間諜能讓我們接入任何方法或函式。並記錄呼叫與參數且能定義回傳值。
例如: 使用spyOn監視服務的特定方法(getStocks()),並改成我們要的回傳值。如此就不會呼叫真的服務。然後測試以斷言確保從假服務而非原來的服務回傳值。
非同步測試和同步測試有兩個不同點 :
心得:
HTTP的單元測試
總結 :