Konfigurace Playwrightu
TypeScript ve výchozím nastavení nerozpoznává nastavení poskytovatelů a další vlastnosti expect. Ujistěte se, že odkazujete na @vitest/browser/providers/playwright, aby TypeScript mohl získat definice pro vlastní možnosti:
/// <reference types="@vitest/browser/providers/playwright" />Alternativně můžete tento odkaz přidat do pole compilerOptions.types ve vašem souboru tsconfig.json. Upozorňujeme, že jakékoli specifikování v tomto poli zakáže automatické načítání balíčků @types/*.
{
"compilerOptions": {
"types": ["@vitest/browser/providers/playwright"]
}
}Vitest používá jednu stránku ke spuštění všech testů v rámci jednoho souboru. V sekci instances lze konfigurovat vlastnosti launch, connect a context:
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
browser: {
instances: [
{
browser: 'firefox',
launch: {},
connect: {},
context: {},
},
],
},
},
})WARNING
Před Vitest 3 byly tyto možnosti umístěny ve vlastnosti test.browser.providerOptions:
export default defineConfig({
test: {
browser: {
providerOptions: {
launch: {},
context: {},
},
},
},
});providerOptions je zastaralé a místo něj se doporučuje použít instances.
launch
Tyto volby jsou přímo předávány příkazu playwright[browser].launch. Více informací o příkazu a dostupných argumentech naleznete v dokumentaci Playwright.
WARNING
Vitest bude ignorovat nastavení launch.headless. Místo toho použijte test.browser.headless.
Upozorňujeme, že Vitest přidává ladicí příznaky do launch.args, pokud je povoleno --inspect.
connect 3.2.0+
Tyto volby jsou přímo předávány příkazu playwright[browser].connect. Více informací o příkazu a dostupných argumentech naleznete v dokumentaci Playwright.
WARNING
Protože se tento příkaz připojuje k existujícímu serveru Playwright, jakékoli možnosti launch budou ignorovány.
context
Vitest vytváří nový kontext pro každý testovací soubor pomocí volání browser.newContext(). Toto chování můžete konfigurovat uvedením vlastních argumentů.
TIP
Všimněte si, že kontext je vytvořen pro každý testovací soubor, nikoli pro každý test, jako je tomu v testovacím runneru Playwright.
WARNING
Vitest vždy nastaví ignoreHTTPSErrors na true, pokud je váš server obsluhován přes HTTPS, a serviceWorkers na 'allow' pro podporu mockování modulů přes MSW.
Doporučujeme také použít test.browser.viewport namísto jeho specifikace zde, protože se ztratí, když testy běží v bezhlavém režimu.
actionTimeout 3.0.0+
- Výchozí: bez výchozího časového limitu, 1 sekunda před 3.0.0
Tato hodnota konfiguruje výchozí časový limit, po který Playwright čeká, dokud neprojdou všechny kontroly přístupnosti a akce není skutečně dokončena.
Časový limit akce můžete také konfigurovat individuálně pro každou akci:
import { page, userEvent } from '@vitest/browser/context';
await userEvent.click(page.getByRole('button'), {
timeout: 1_000,
});