天天看點

Angular jasmine單元測試架構TestBed.inject的執行原理

單步調試這段代碼:

Angular jasmine單元測試架構TestBed.inject的執行原理

TestBed用于單元測試代碼裡建立Component和service執行個體。

Angular jasmine單元測試架構TestBed.inject的執行原理
Angular jasmine單元測試架構TestBed.inject的執行原理
Angular jasmine單元測試架構TestBed.inject的執行原理

injectionToken即傳入TestBed.inject的function:

Angular jasmine單元測試架構TestBed.inject的執行原理

還是delegate給TestModuleRef的injector進行正常的injection操作:

Angular jasmine單元測試架構TestBed.inject的執行原理
Angular jasmine單元測試架構TestBed.inject的執行原理
Angular jasmine單元測試架構TestBed.inject的執行原理

Records裡早就被注入好了: