Skip to content
Vitest 3
Main Navigation Útmutató & APIKonfigurációBöngésző módHaladó API
3.2.0
2.1.9
1.6.1
0.34.6

magyar

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
čeština

magyar

English
简体中文
繁體中文
Español
Français
Русский
Português – Brasil
Deutsch
日本語
한국어
Italiano
Polski
Türkçe
čeština

Megjelenés

Sidebar Navigation

API

Node API

Haladó API

Vitest API

TestProject

TestSpecification

Test Task API

TestCase

TestSuite

TestModule

TestCollection

Plugin API

Futtató API

Jelentők

Feladat metaadatok

Útmutató

Tesztfuttatás

Jelentéskészítők kiterjesztése

Egyéni Pool

Vitest konfigurálása

Teszt API Referencia

Ezen az oldalon

Jelentéskészítők kiterjesztése ​

WARNING

Ez egy haladó API. Ha csak a beépített jelentéskészítőket szeretné konfigurálni, olvassa el a "Jelentéskészítők" útmutatót.

A jelentéskészítőket importálhatja a vitest/reporters modulból, és kiterjesztheti őket egyéni jelentéskészítők létrehozásához.

Beépített jelentéskészítők kiterjesztése ​

Általában nem szükséges a jelentéskészítőt a nulláról létrehozni. A vitest számos alapértelmezett jelentéskészítővel érkezik, amelyeket kiterjeszthet.

ts
import { DefaultReporter } from 'vitest/reporters';

export default class MyDefaultReporter extends DefaultReporter {
  // végezzen el valamit
}

Természetesen létrehozhatja a jelentéskészítőt a nulláról is. Egyszerűen csak terjessze ki a BaseReporter osztályt, és implementálja a szükséges metódusokat.

És itt van egy példa egy egyéni jelentéskészítőre:

ts
import { BaseReporter } from 'vitest/reporters';

export default class CustomReporter extends BaseReporter {
  onCollected() {
    const files = this.ctx.state.getFiles(this.watchFilters);
    this.reportTestSummary(files);
  }
}

Vagy implementálja a Reporter interfészt:

ts
import type { Reporter } from 'vitest/node';

export default class CustomReporter implements Reporter {
  onCollected() {
    // írjon ki valamit
  }
}

Ezután használhatja a saját jelentéskészítőjét a vitest.config.ts fájlban:

ts
import { defineConfig } from 'vitest/config';
import CustomReporter from './custom-reporter.js';

export default defineConfig({
  test: {
    reporters: [new CustomReporter()],
  },
});

Jelentett feladatok ​

A jelentéskészítők által kapott feladatok helyett javasolt inkább a Jelentett Feladatok API használata.

Ehhez az API-hoz a vitest.state.getReportedEntity(runnerTask) hívásával férhet hozzá:

ts
import type { Reporter, RunnerTestFile, TestModule, Vitest } from 'vitest/node';

class MyReporter implements Reporter {
  private vitest!: Vitest;

  onInit(vitest: Vitest) {
    this.vitest = vitest;
  }

  onFinished(files: RunnerTestFile[]) {
    for (const file of files) {
      // megjegyzendő, hogy a régi feladat implementáció "file" helyett "module"-t használt
      const testModule = this.vitest.state.getReportedEntity(
        file
      ) as TestModule;
      for (const task of testModule.children) {
        //                          ^?
        console.log('finished', task.type, task.fullName);
      }
    }
  }
}

Exportált jelentéskészítők ​

A vitest néhány beépített jelentéskészítővel érkezik, amelyeket azonnal használhat.

Beépített jelentéskészítők: ​

  1. BasicReporter
  2. DefaultReporter
  3. DotReporter
  4. JsonReporter
  5. VerboseReporter
  6. TapReporter
  7. JUnitReporter
  8. TapFlatReporter
  9. HangingProcessReporter

Alap absztrakt jelentéskészítők: ​

  1. BaseReporter

Interfész jelentéskészítők: ​

  1. Reporter
Pager
Előző oldalTesztfuttatás
Következő oldalEgyéni Pool

A MIT licenc alapján kiadva.

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/advanced/reporters

A MIT licenc alapján kiadva.

Copyright (c) 2021-Present Vitest Team