Angular單元測試如何只執行指定的測試用例,提升測試速度

Angular項目的規模一旦變大,待執行的單元測試的數目多是海量的。此時在開發新的單元測試時,會遇到須要屏蔽到系統裏已經很是穩定的測試,而只執行正在開發的新單元測試。這個需求如何實現呢?typescript

每一個Angular項目文件夾下都有test.ts, 裏面有一行語句,指定了該項目下哪些ts文件裏的單元測試會執行:數組

const context = require.context('./', true, /\.spec\.ts$/);

默認狀況下,src目錄下全部以.spec.ts結尾的文件裏,包含的單元測試都會被執行。app

若是我想只執行正在開發的新單元測試,而屏蔽到之前開發好的全部單元測試,能夠在require.context返回的結構上作文章。單元測試

只須要添加以下兩行語句:測試

const FILE = ['./app/ngrxdemo/service/unittest-study/demo.spec.ts'];

context.keys().filter( name => !!FILE.includes(name)).map(context);

將須要執行的單元測試文件路徑放到FILE數組裏:ui

命令行運行ng test, 便可觀察到如今只有FILE數組裏指定的一個單元測試文件demo.spec.ts裏的測試用例被執行了:spa


要獲取更多Jerry的原創文章,請關注公衆號"汪子熙":
命令行

相關文章
相關標籤/搜索