O runner de testes do Bun suporta relatórios de cobertura de código integrados através da flag --coverage.
sh
bun test --coveragetxt
test.test.ts:
✓ math > add [0.71ms]
✓ math > multiply [0.03ms]
✓ random [0.13ms]
-------------|---------|---------|-------------------
File | % Funcs | % Lines | Uncovered Line #s
-------------|---------|---------|-------------------
All files | 66.67 | 77.78 |
math.ts | 50.00 | 66.67 |
random.ts | 50.00 | 66.67 |
-------------|---------|---------|-------------------
3 pass
0 fail
3 expect() callsPara definir um limite mínimo de cobertura, adicione a seguinte linha ao seu bunfig.toml. Isso requer que 90% do seu código seja coberto por testes.
toml
[test]
# para exigir 90% de cobertura em nível de linha e função
coverageThreshold = 0.9Se sua suíte de testes não atingir esse limite, bun test sairá com um código de saída diferente de zero para sinalizar uma falha.
sh
bun test --coveragetxt
<saída do teste>
$ echo $?
1 # este é o código de saída do comando anteriorLimites diferentes podem ser definidos para cobertura em nível de linha e em nível de função.
toml
[test]
# para definir limites diferentes para linhas e funções
coverageThreshold = { lines = 0.5, functions = 0.7 }Consulte Docs > Test runner > Coverage para documentação completa sobre relatórios de cobertura de código no Bun.