Skip to content
Vitest 3
Main Navigation Przewodnik & APIKonfiguracjaTryb przeglądarkiZaawansowane API
3.2.0
2.1.9
1.6.1
0.34.6

Polski

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

Polski

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

Wygląd

Sidebar Navigation

Wprowadzenie

Dlaczego Vitest

Pierwsze kroki

Funkcje

Konfiguracja Vitest

API

Dokumentacja API testowego

Funkcje Mock

Vi

expect

expectTypeOf

assert

assertType

Przewodnik

Interfejs Wiersza Poleceń

Filtrowanie testów

Projekty testowe

Reportery

Pokrycie kodu

Migawki

Mockowanie

Równoległość

Typy testów

Interfejs użytkownika Vitest

Testy w kodzie źródłowym

Kontekst Testu

Adnotacje testowe

Środowisko testowe

Rozszerzanie matcherów

Integracje z IDE

Debugowanie

Typowe błędy

Przewodnik migracji

Migracja do Vitest 3.0

Migracja z Jest

Wydajność

Profilowanie wydajności testów

Poprawa wydajności

Tryb przeglądarkowy

Zaawansowane API

Porównania z innymi narzędziami do uruchamiania testów

Na tej stronie

Równoległość ​

Równoległe uruchamianie plików ​

Domyślnie Vitest uruchamia pliki testowe równolegle. W zależności od wybranej opcji pool, Vitest wykorzystuje różne mechanizmy do równoległego uruchamiania plików testowych:

  • forks (domyślnie) i vmForks uruchamiają testy w oddzielnych procesach potomnych.
  • threads i vmThreads uruchamiają testy w oddzielnych wątkach roboczych.

Zarówno "procesy potomne", jak i "wątki robocze" są określane jako "workery". Możesz skonfigurować liczbę uruchamianych workerów za pomocą opcji minWorkers i maxWorkers, lub bardziej precyzyjnie, poprzez konfigurację poolOptions.

W przypadku dużej liczby testów, ich równoległe uruchamianie zazwyczaj przyspiesza proces, choć zależy to również od specyfiki projektu, środowiska oraz stanu izolacji. Aby wyłączyć równoległe uruchamianie plików, możesz ustawić opcję fileParallelism na false. Aby dowiedzieć się więcej o możliwych usprawnieniach wydajności, zapoznaj się z Przewodnikiem po wydajności.

Równoległe uruchamianie testów ​

W przeciwieństwie do plików testowych, Vitest uruchamia testy wewnątrz pojedynczego pliku sekwencyjnie. Oznacza to, że testy w jednym pliku testowym będą wykonywane w kolejności, w jakiej zostały zdefiniowane.

Vitest wspiera opcję concurrent, która umożliwia równoległe uruchamianie testów. Jeśli ta opcja jest ustawiona, Vitest grupuje testy oznaczone jako współbieżne w tym samym pliku (liczba jednocześnie uruchomionych testów zależy od opcji maxConcurrency) i uruchamia je za pomocą Promise.all.

Vitest nie wykonuje żadnej zaawansowanej analizy ani nie tworzy dodatkowych workerów do uruchamiania tych testów. Oznacza to, że wydajność twoich testów poprawi się tylko wtedy, gdy w dużym stopniu opierają się one na operacjach asynchronicznych. Na przykład, poniższe testy nadal będą uruchamiane jeden po drugim, mimo że określono opcję concurrent. Wynika to z ich synchronicznego charakteru:

ts
test.concurrent('the first test', () => {
  expect(1).toBe(1);
});

test.concurrent('the second test', () => {
  expect(2).toBe(2);
});

Jeśli chcesz uruchomić wszystkie testy równolegle, możesz ustawić opcję sequence.concurrent na true.

Pager
Poprzednia stronaMockowanie
Następna stronaTypy testów

Opublikowano na licencji MIT.

Copyright (c) 2021-Present Vitest Team

https://vitest.dev/guide/parallelism

Opublikowano na licencji MIT.

Copyright (c) 2021-Present Vitest Team