Playwright konfigurálása
Alapértelmezetten a TypeScript nem ismeri fel a szolgáltatói (provider) opciókat és a további expect tulajdonságokat. Győződjön meg róla, hogy hivatkozik a @vitest/browser/providers/playwright fájlra, hogy a TypeScript felismerje az egyéni opciók definícióit:
/// <reference types="@vitest/browser/providers/playwright" />Alternatív megoldásként hozzáadhatja a compilerOptions.types mezőhöz is a tsconfig.json fájlban. Ne feledje, hogy bármilyen érték megadása ebben a mezőben letiltja az @types/* csomagok automatikus betöltését.
{
"compilerOptions": {
"types": ["@vitest/browser/providers/playwright"]
}
}A Vitest egyetlen oldalon futtatja az összes tesztet ugyanabban a fájlban. Konfigurálhatja a launch, connect és context tulajdonságokat az instances objektumban:
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
browser: {
instances: [
{
browser: 'firefox',
launch: {},
connect: {},
context: {},
},
],
},
},
})WARNING
A Vitest 3-as verziója előtt ezek az opciók a test.browser.providerOptions tulajdonságban voltak:
export default defineConfig({
test: {
browser: {
providerOptions: {
launch: {},
context: {},
},
},
},
});A providerOptions elavult, helyette az instances használatos.
launch
Ezek az opciók közvetlenül átadódnak a playwright[browser].launch parancsnak. A parancsról és az elérhető argumentumokról bővebben a Playwright dokumentációjában olvashat.
WARNING
A Vitest figyelmen kívül hagyja a launch.headless opciót. Ehelyett használja a test.browser.headless beállítást.
Ne feledje, hogy a Vitest hibakeresési jelzőket ad hozzá a launch.args-hoz, ha a --inspect engedélyezve van.
connect 3.2.0+
Ezek az opciók közvetlenül átadódnak a playwright[browser].connect parancsnak. A parancsról és az elérhető argumentumokról bővebben a Playwright dokumentációjában olvashat.
WARNING
Mivel ez a parancs egy meglévő Playwright szerverhez csatlakozik, minden launch opció figyelmen kívül lesz hagyva.
context
A Vitest minden tesztfájlhoz új kontextust hoz létre a browser.newContext() meghívásával. Ezt a viselkedést egyéni argumentumok megadásával konfigurálhatja.
TIP
Ne feledje, hogy a kontextus minden tesztfájlhoz létrehozásra kerül, nem minden egyes teszthez, mint a Playwright tesztfuttatóban.
WARNING
A Vitest mindig true értékre állítja az ignoreHTTPSErrors-t, ha a szerver HTTPS-en keresztül fut, és 'allow' értékre a serviceWorkers-t az MSW általi modul-mockolás támogatásához.
Ajánlott továbbá a test.browser.viewport használata ahelyett, hogy itt adná meg, mivel ez elveszhet, ha a tesztek fej nélküli módban futnak.
actionTimeout 3.0.0+
- Alapértelmezett: nincs időtúllépés, 1 másodperc 3.0.0 előtt
Ez az érték konfigurálja azt az alapértelmezett időtúllépést, ameddig a Playwright vár, amíg az összes akadálymentességi ellenőrzés sikeresen lefut, és a művelet ténylegesen befejeződik.
A műveleti időtúllépést műveletenként is konfigurálhatja:
import { page, userEvent } from '@vitest/browser/context';
await userEvent.click(page.getByRole('button'), {
timeout: 1_000,
});