執行環境套件管理器打包器測試執行器程式碼檢查格式化指南參考部落格意見回饋

使用 Bun 測試執行器設定程式碼覆蓋率閾值

Bun 的測試執行器內建程式碼覆蓋率報告功能。使用 --coverage 標誌啟用該功能。

terminal
bun test --coverage
Text
test.test.ts:
✓ math > add [0.71ms]
✓ math > multiply [0.03ms]
✓ random [0.13ms]
-------------|---------|---------|-------------------
檔案         | 函式覆蓋率 | 程式碼行覆蓋率 | 未覆蓋的行號
-------------|---------|---------|-------------------
All files    |   50.00 |   66.67 |
 math.ts     |   50.00 |   66.67 |
 random.ts   |   50.00 |   66.67 |
-------------|---------|---------|-------------------

 3 通過
 0 失敗
 3 次 expect() 呼叫

若要設定最低覆蓋率閾值,請將以下內容新增到 bunfig.toml。0.9 的閾值要求覆蓋率報告中的每個檔案,其程式碼行和函式覆蓋率均達到 90%。Bun 會針對每個檔案檢查閾值,而不是針對 All files 的平均值。

bunfig.toml
[test]
# 要求 90% 的程式碼行和函式覆蓋率
coverageThreshold = 0.9

如果測試套件未達到此閾值,bun test 將以非零退出碼退出,以表示失敗。

terminal
bun test --coverage
Text
<測試輸出>
$ echo $?
1 # 這是前一個命令的退出碼

你可以為程式碼行覆蓋率和函式覆蓋率設定不同的閾值。

bunfig.toml
[test]
# 為程式碼行和函式設定不同的閾值
coverageThreshold = { lines = 0.5, functions = 0.7 }

請參閱程式碼覆蓋率。