Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
V tomto článku se dozvíte, jak správně nakonfigurovat vizuální srovnávací testy Playwright při použití pracovních prostorů Playwright. K neočekávaným selháním testu může dojít, protože snímky playwrightu se mezi místními a vzdálenými prohlížeči liší.
Background
Playwright Test Runner používá hostitelský operační systém jako součást očekávané cesty snímku obrazovky. Pokud testy spouštíte pomocí vzdálených prohlížečů na jiném operačním systému než na hostitelském počítači, testy porovnání vizuálů selžou. Naším doporučením je spustit pouze porovnání vizuálů při použití služby. Pokud ve službě děláte snímky obrazovky, nemusíte je porovnávat s místním nastavením, protože se neshodují.
Konfigurace ignorovanýchSnapshots
Pomocí této možnosti můžeteignoreSnapshots spouštět pouze porovnání vizuálů při použití pracovních prostorů Playwright.
- Nastavte
ignoreSnapshots: truev origináluplaywright.config.ts, který službu nepoužívá. - Nastavit
ignoreSnapshots: falsevplaywright.service.config.ts.
Při používání služby se jeho konfigurace přepíše playwright.config.tsa spustí porovnání vizuálů.
Konfigurace cesty k snímku
Chcete-li nakonfigurovat cesty snímků pro konkrétní projekt nebo celou konfiguraci, můžete nastavit snapshotPathTemplate možnost.
// This path is exactly like the default path, but replaces OS with hardcoded value that is used on the service (linux).
config.snapshotPathTemplate = '{snapshotDir}/{testFileDir}/{testFileName}-snapshots/{arg}{-projectName}-linux{ext}'
// This is an alternative path where you keep screenshots in a separate directory, one per service OS (linux in this case).
config.snapshotPathTemplate = '{testDir}/__screenshots__/{testFilePath}/linux/{arg}{ext}';
Příklad konfigurace služby
Příklad konfigurace služby, která spouští porovnání vizuálů a konfiguruje cestu pro snapshotPathTemplate:
import { defineConfig } from '@playwright/test';
import { createAzurePlaywrightConfig, ServiceOS } from '@azure/playwright';
import { DefaultAzureCredential } from '@azure/identity';
import config from './playwright.config';
/* Learn more about service configuration at https://aka.ms/pww/docs/config */
export default defineConfig(
config,
createAzurePlaywrightConfig(config, {
exposeNetwork: '<loopback>',
connectTimeout: 30000,
os: ServiceOS.LINUX,
credential: new DefaultAzureCredential()
}),
{
ignoreSnapshots: false,
// Enable screenshot testing and configure directory with expectations.
snapshotPathTemplate: `{testDir}/__screenshots__/{testFilePath}/${ServiceOS.LINUX}/{arg}{ext}`,
}
);
Související obsah
- Přečtěte si další informace o porovnání vizuálů Playwright.