Test Coverage หรือความครอบคลุมของการทดสอบ คือการวัดว่าโค้ดของเราได้รับการทดสอบมากน้อยเพียงใด
Coverage Providers
provider | Description |
---|---|
v8 | |
istanbul |
Coverage Setup
json
{
"scripts": {
"test": "vitest",
"coverage": "vitest run --coverage"
}
}
ts
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
coverage: {
reporter: ['text', 'json', 'html'],
},
},
})
Custom
Coverage Reporter
ts
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
coverage: {
reporter: [
// Specify reporter using name of the NPM package
['@vitest/custom-coverage-reporter', { someOption: true }],
// Specify reporter using local path
'/absolute/path/to/custom-reporter.cjs',
],
},
},
})
Coverage Provider
ts
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
coverage: {
provider: 'custom',
customProviderModule: 'my-custom-coverage-provider'
},
},
})
Changing the Default Coverage Folder Location
ts
import { defineConfig } from 'vite'
export default defineConfig({
test: {
coverage: {
reportsDirectory: './tests/unit/coverage'
}
}
})
Ignoring Code
// TODO Ignoring Code
Other Options
Vitest UI
- ติดตั้ง vitest ui
bash
npm i -D @vitest/ui
- run script
bash
vitest ui