Skip to content
Vitest 3
Main Navigation Průvodce & APIKonfiguraceRežim prohlížečePokročilé API
3.2.0
2.1.9
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

Úvod

Proč Vitest

Začínáme

Funkce

Konfigurace Vitestu

API

Testovací reference API

Mockovací funkce

Vi

expect

expectTypeOf

assert

assertType

Průvodce

Rozhraní příkazového řádku

Filtrování testů

Testovací projekty

Generátory zpráv

Pokrytí kódu

Snímky

Mockování

Paralelní zpracování

Typové testování

Vitest UI

Testování přímo ve zdrojovém kódu

Testovací kontext

Anotace testů

Testovací prostředí

Rozšíření matcherů

Integrace s IDE

Ladění

Běžné chyby

Průvodce migrací

Migrace na Vitest 3.0

Migrace z Jest

Výkon

Profilování výkonu testů

Zlepšení výkonu

Režim prohlížeče

Rozšířené API

Srovnání

Na této stránce

Běžné chyby ​

Nelze najít modul './relative-path' ​

Pokud se objeví chyba, že modul nelze najít, může to mít několik příčin:

    1. Chybně zadaná cesta. Zkontrolujte, zda je cesta správná.
    1. Používáte baseUrl ve vašem tsconfig.json souboru. Vite standardně nezohledňuje tsconfig.json. Pokud na tomto chování závisíte, budete pravděpodobně muset nainstalovat vite-tsconfig-paths.
ts
import { defineConfig } from 'vitest/config';
import tsconfigPaths from 'vite-tsconfig-paths';

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

Alternativně přepište cestu tak, aby nebyla relativní vůči kořenovému adresáři:

diff
- import helpers from 'src/helpers'
+ import helpers from '../src/helpers'
    1. Máte definované relativní aliasy. Vite je interpretuje jako relativní k souboru, ze kterého se importuje, nikoli ke kořenovému adresáři.
ts
import { defineConfig } from 'vitest/config';

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

Nepodařilo se ukončit worker ​

K této chybě může dojít, když je fetch v NodeJS použit s výchozím pool: 'threads'. Tento problém je sledován v issue Timeout abort can leave process(es) running in the background #3077.

Jako dočasné řešení můžete přepnout na pool: 'forks' nebo pool: 'vmForks'.

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

export default defineConfig({
  test: {
    pool: 'forks',
  },
});
bash
vitest --pool=forks

Segfaulty a chyby nativního kódu ​

Při spouštění nativních modulů NodeJS v režimu pool: 'threads' se mohou objevit záhadné chyby pocházející z nativního kódu, například:

  • Segmentation fault (core dumped)
  • thread '<unnamed>' panicked at 'assertion failed
  • Abort trap: 6
  • internal error: entered unreachable code

V těchto případech nativní modul pravděpodobně není sestaven tak, aby byl vláknově bezpečný. Jako dočasné řešení můžete přepnout na pool: 'forks', který spouští testovací případy v několika node:child_process namísto několika node:worker_threads.

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

export default defineConfig({
  test: {
    pool: 'forks',
  },
});
bash
vitest --pool=forks
Pager
Předchozí stránkaLadění
Další stránkaPrůvodce migrací

Vydáno pod licencí MIT.

Copyright (c) 2021-Present Vitest Team

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

Vydáno pod licencí MIT.

Copyright (c) 2021-Present Vitest Team