Skip to content
Vitest 1
Main Navigation PrůvodceAPIKonfiguracePokročilý
1.6.1
0.34.6

čeština

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

čeština

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

Vzhled

Sidebar Navigation

Průvodce

Proč Vitest

Začínáme

Funkce

Workspace

Rozhraní příkazového řádku

Filtrování testů

Reportéři

Pokrytí

Snímky

Mockování

Testování typů

Vitest UI

Režim prohlížeče

Testování ve zdrojovém kódu

Kontext testu

Testovací prostředí

Rozšíření matcherů/porovnávačů

Integrace do IDE

Ladění

Srovnání s jinými testovacími nástroji

Průvodce migrací

Běžné chyby

Zvýšení výkonu

API

Referenční příručka k Test API

Mock funkce

Vi

expect

expectTypeOf

assert

assertType

Konfigurace

Správa konfiguračního souboru pro Vitest

Konfigurace Vitest

Na této stránce

Běžné chyby ​

Nelze nalézt modul './relativní-cesta' ​

Pokud se zobrazí chyba, že modul nelze nalézt, může to mít několik příčin:

    1. Překlep v cestě: Zkontrolujte, zda je cesta k modulu správná a neobsahuje překlepy.
    1. Závislost na baseUrl v tsconfig.json: Vite standardně nepoužívá nastavení tsconfig.json, včetně baseUrl. Pokud na tuto funkcionalitu spoléháte, nainstalujte balíček vite-tsconfig-paths a nakonfigurujte jej ve Vite:
ts
import { defineConfig } from 'vitest/config';
import tsconfigPaths from 'vite-tsconfig-paths';

export default defineConfig({
  plugins: [tsconfigPaths()],
});

Alternativně můžete upravit cestu tak, aby nebyla relativní ke kořenovému adresáři projektu:

diff
- import helpers from 'src/helpers'
+ import helpers from '../src/helpers'
    1. Relativní aliasy: Ujistěte se, že nepoužíváte relativní aliasy. Vite je interpretuje relativně k souboru, ze kterého je import proveden, nikoli ke kořenovému adresáři projektu.
ts
import { defineConfig } from 'vitest/config';

export default defineConfig({
  test: {
    alias: {
      '@/': './src/', 
      '@/': new URL('./src/', import.meta.url).pathname, 
    },
  },
});

Nelze mockovat "./mocked-file.js", protože už byl načten ​

Tato chyba nastane, když je metoda vi.mock volána na modulu, který již byl načten. Vitest tuto chybu vyhazuje, protože toto volání nemá žádný efekt, jelikož se preferují moduly z cache.

Pamatujte, že vi.mock je vždy tzv. hoisted - to znamená, že modul byl načten předtím, než se začal vykonávat testovací soubor - s největší pravděpodobností v setup souboru. Chcete-li tuto chybu opravit, odstraňte import nebo vymažte cache na konci setup souboru - dejte si pozor, že setup soubor a testovací soubor budou v takovém případě odkazovat na různé moduly.

ts
// setupFile.js
import { vi } from 'vitest';
import { sideEffect } from './mocked-file.js';

sideEffect();

vi.resetModules();

Nepodařilo se ukončit worker ​

Tato chyba může nastat, když je použito NodeJS fetch s výchozím nastavením pool: 'threads'. Tento problém je sledován v issue Timeout abort can leave process(es) running in the background #3077.

Jako work-around můžete přepnout na pool: 'forks' nebo pool: 'vmForks'.

Zadejte pool ve svém konfiguračním souboru:

ts
import { defineConfig } from 'vitest/config';

export default defineConfig({
  test: {
    pool: 'forks',
  },
});

Nebo ve skriptech package.json:

diff
scripts: {
-  "test": "vitest"
+  "test": "vitest --pool=forks"
}
Pager
Předchozí stránkaPrůvodce migrací
Další stránkaZvýšení výkonu

Vydáno pod licencí MIT.

Copyright (c) 2024 Mithril Contributors

https://v1.vitest.dev/guide/common-errors

Vydáno pod licencí MIT.

Copyright (c) 2024 Mithril Contributors