Skip to content
Vitest 1
Main Navigation ÚtmutatóAPIKonfigurációHaladó
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

Útmutató

Miért a Vitest?

Első lépések

Funkciók

Munkaterület

Parancssori felület

Tesztszűrés

Reporterek

Lefedettség

Pillanatképek

Mockolás

Típusok tesztelése

Vitest UI

Böngésző mód

Forráskódba épített tesztelés

Tesztkörnyezet

Tesztkörnyezet

Egyezésvizsgálók kiterjesztése

IDE integrációk

Hibakeresés

Összehasonlítás más tesztfuttatókkal

Migrálási útmutató

Gyakori hibák

A teljesítmény javítása

API

Teszt API Dokumentáció

Mock függvények

Vi

expect

expectTypeOf

assert

assertType

Konfiguráció

A Vitest konfigurációs fájl beállítása

Vitest konfigurálása

Ezen az oldalon

Forráskódba épített tesztelés ​

A Vitest lehetővé teszi a tesztek futtatását közvetlenül a forráskódban, az implementációval egyidejűleg, hasonlóan a Rust modul tesztjeihez.

Ezáltal a tesztek ugyanabban a hatókörben futhatnak, mint az implementáció, és tesztelhetik a privát állapotokat exportálás nélkül. Emellett gyorsabb visszajelzést biztosít a fejlesztés során.

Beállítás ​

A kezdéshez helyezz egy if (import.meta.vitest) blokkot a forrásfájl végére, és írj bele néhány tesztet. Például:

ts
// src/index.ts

// az implementáció
export function add(...args: number[]) {
  return args.reduce((a, b) => a + b, 0);
}

// forráskódba ágyazott tesztek
if (import.meta.vitest) {
  const { it, expect } = import.meta.vitest;
  it('add', () => {
    expect(add()).toBe(0);
    expect(add(1)).toBe(1);
    expect(add(1, 2, 3)).toBe(6);
  });
}

Állítsd be a includeSource konfigurációt a Vitest számára, hogy a src/ könyvtárban lévő fájlokat is tartalmazza:

ts
// vite.config.ts
/// <reference types="vitest" />
import { defineConfig } from 'vite';

export default defineConfig({
  test: {
    includeSource: ['src/**/*.{js,ts}'], 
  },
});

Ezután elkezdheted a tesztelést!

bash
$ npx vitest

Éles (Production) build ​

Az éles buildhez be kell állítanod a define opciókat a konfigurációs fájlban, hogy a bundler el tudja végezni a halott kód eltávolítását. Például a Vite-ben:

ts
// vite.config.ts
/// <reference types="vitest" />
import { defineConfig } from 'vite';

export default defineConfig({
  test: {
    includeSource: ['src/**/*.{js,ts}'],
  },
  define: {
    'import.meta.vitest': 'undefined', 
  }, 
});

Más Bundlerek ​

unbuild
ts
// build.config.ts
import { defineBuildConfig } from 'unbuild';

export default defineBuildConfig({
  replace: {
    'import.meta.vitest': 'undefined', 
  }, 
  // other options
});

További információ: unbuild

rollup
ts
// rollup.config.js
import replace from '@rollup/plugin-replace'; 

export default {
  plugins: [
    replace({
      'import.meta.vitest': 'undefined', 
    }), 
  ],
  // other options
};

További információ: Rollup

TypeScript ​

A import.meta.vitest TypeScript támogatásához add hozzá a vitest/importMeta elemet a tsconfig.json fájl types tömbjéhez:

json
// tsconfig.json
{
  "compilerOptions": {
    "types": [
      "vitest/importMeta"
    ]
  }
}

A teljes példáért lásd a test/import-meta könyvtárat.

Megjegyzések ​

Ez a funkció a következő esetekben hasznos:

  • Egységteszteléshez kis hatókörű függvényekhez vagy segédeszközökhöz
  • Prototípus készítéséhez
  • Beágyazott állításokhoz

Javasoljuk, hogy használj külön tesztfájlokat az összetettebb tesztekhez, például komponensek vagy E2E tesztelés esetén.

Pager
Előző oldalBöngésző mód
Következő oldalTesztkörnyezet

A MIT licenc alapján kiadva.

Copyright (c) 2024 Mithril Contributors

https://v1.vitest.dev/guide/in-source

A MIT licenc alapján kiadva.

Copyright (c) 2024 Mithril Contributors