Angular單元測試如何只執行指定的測試案例,提高測試速度?下面本篇文章就來跟大家介紹一下。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。
相關教學推薦:《angular教學》
Angular專案的規模一旦變大,待執行的單元測試的數目可能是海量的。此時在開發新的單元測試時,會遇到需要屏蔽到系統裡已經非常穩定的測試,而只執行正在開發的新單元測試。這個需求如何實現呢?
每個Angular專案資料夾下都有test.ts, 裡面有一行語句,指定了該專案下哪些ts檔案裡的單元測試會執行:
const context = require.context('./', true, /\.spec\.ts$/);
預設情況下,src目錄下所有以.spec.ts結尾的檔案裡,包含的單元測試都會被執行。
如果我想只執行正在開發的新單元測試,而屏蔽到以前開發好的所有單元測試,可以在require.context傳回的結構上做文章。
只需要加入以下兩行語句:
const FILE = ['./app/ngrxdemo/service/unittest-study/demo.spec.ts']; context.keys().filter( name => !!FILE.includes(name)).map(context);
將需要執行的單元測試檔案路徑放到FILE陣列裡:
命令列運行ng test, 即可觀察到現在只有FILE數組裡指定的一個單元測試檔demo.spec.ts裡的測試案例被執行了:
##更多程式相關知識,請造訪:
程式設計影片! !
以上是Angular實作只執行正在開發的新單元測試的詳細內容。更多資訊請關注PHP中文網其他相關文章!