Покрытие
Покрытие собирает информацию о частях JavaScript и CSS, которые использовались на странице.
Пример использования JavaScript-покрытия для создания отчета Istanbul для загрузки страницы:
примечаниеAPI покрытия поддерживаются только в браузерах на основе Chromium.
const { chromium } = require('playwright');
const v8toIstanbul = require('v8-to-istanbul');
(async () => {
const browser = await chromium.launch();
const page = await browser.newPage();
await page.coverage.startJSCoverage();
await page.goto('https://chromium.org');
const coverage = await page.coverage.stopJSCoverage();
for (const entry of coverage) {
const converter = v8toIstanbul('', 0, { source: entry.source });
await converter.load();
converter.applyCoverage(entry.functions);
console.log(JSON.stringify(converter.toIstanbul()));
}
await browser.close();
})(); Методы
startCSSCoverage
Возвращает, начато ли покрытие
Использование
await coverage.startCSSCoverage(); await coverage.startCSSCoverage(options);
Аргументы
-
optionsОбъект (необязательно)-
resetOnNavigationboolean (необязательно)Нужно ли сбрасывать покрытие при каждом переходе. По умолчанию
true.
-
Возвращаемое значение
startJSCoverage
Возвращает, начато ли покрытие
примечаниеАнонимные скрипты — это скрипты без связанного URL. Это скрипты, которые динамически создаются на странице с помощью
evalилиnew Function. Если reportAnonymousScripts установлено вtrue, у анонимных скриптов будет URL__playwright_evaluation_script__.
Использование
await coverage.startJSCoverage(); await coverage.startJSCoverage(options);
Аргументы
-
optionsОбъект (необязательно)
Возвращаемое значение
stopCSSCoverage
Возвращает массив отчетов о покрытии для всех таблиц стилей
примечаниеПокрытие CSS не включает динамически внедрённые теги стиля без sourceURLs.
Использование
await coverage.stopCSSCoverage();
Возвращаемое значение
- Promise<Массив<Объект>>
stopJSCoverage
Возвращает массив отчетов о покрытии для всех скриптов
примечаниеПо умолчанию JavaScript-покрытие не включает анонимные скрипты. Однако скрипты с sourceURLs отслеживаются.
Использование
await coverage.stopJSCoverage();
Возвращаемое значение
© 2024 Microsoft
Licensed under the Apache License, Version 2.0.
https://playwright.dev/docs/api/class-coverage