Rozšíření výchozích reportérů
Můžete importovat reportéry z vitest/reporters a rozšířit je, abyste vytvořili vlastní reportéry.
Rozšíření vestavěných reportérů
Obecně platí, že není nutné vytvářet reportér od začátku. vitest nabízí několik výchozích reportérů, které můžete rozšířit.
ts
import { DefaultReporter } from 'vitest/reporters';
export default class MyDefaultReporter extends DefaultReporter {
// do something
}Samozřejmě, můžete vytvořit reportér i od začátku. Stačí rozšířit třídu BaseReporter a implementovat potřebné metody.
Zde je příklad vlastního reportéru:
ts
// ./custom-reporter.js
import { BaseReporter } from 'vitest/reporters';
export default class CustomReporter extends BaseReporter {
onCollected() {
const files = this.ctx.state.getFiles(this.watchFilters);
this.reportTestSummary(files);
}
}Nebo implementujte rozhraní Reporter:
ts
// ./custom-reporter.js
import { Reporter } from 'vitest/reporters';
export default class CustomReporter implements Reporter {
onCollected() {
// print something
}
}Vlastní reportér pak můžete použít v konfiguračním souboru vitest.config.ts:
ts
import { defineConfig } from 'vitest/config';
import CustomReporter from './custom-reporter.js';
export default defineConfig({
test: {
reporters: [new CustomReporter()],
},
});Exportované reportéry
vitest nabízí několik vestavěných reportérů, které můžete ihned použít.
Vestavěné reportéry:
BasicReporterDefaultReporterDotReporterJsonReporterVerboseReporterTapReporterJUnitReporterTapFlatReporterHangingProcessReporter
Abstraktní reportéry:
BaseReporter
Rozhraní pro reportéry:
Reporter