Lighthouse предоставляет возможность измерять и анализировать производительность веб-страниц через набор аудитов. Каждый аудит оценивает конкретный аспект страницы, влияющий на скорость загрузки и интерактивность. Правильный выбор аудитов позволяет сфокусироваться на наиболее критичных показателях и оптимизировать ресурсы.
1. Performance Audits (Аудиты производительности) Эта категория включает ключевые метрики, измеряющие пользовательский опыт:
2. Best Practices Audits (Аудиты лучших практик) Некоторые аудиты категории «Best Practices» косвенно влияют на скорость:
3. Progressive Web App Audits (PWA) Для веб-приложений PWA проверяет скорость загрузки при медленном соединении и возможность офлайн-доступа, что также влияет на восприятие скорости.
Lighthouse предоставляет возможность гибкой конфигурации аудитов через JavaScript API или JSON-файлы. Пример конфигурации:
const config = {
extends: 'lighthouse:default',
settings: {
onlyAudits: [
'first-contentful-paint',
'largest-contentful-paint',
'speed-index',
'total-blocking-time',
'cumulative-layout-shift'
],
throttlingMethod: 'simulate', // эмуляция медленного соединения
},
};
onlyAudits – ограничение списка аудитов для ускорения
проверки и фокусировки на конкретных метриках.throttlingMethod – выбор метода эмуляции сетевого
соединения: simulate, devtools или
provided.extends позволяет наследовать базовые настройки,
добавляя только необходимые изменения.Сегментация аудитов по критичности:
Использование кастомных аудитов: Lighthouse позволяет создавать собственные аудиты, чтобы проверять специфические требования проекта:
class CustomAudit extends Audit {
static get meta() {
return {
id: 'custom-audit-speed',
title: 'Проверка кастомной скорости',
description: 'Аудит для оценки специфического блока скорости',
requiredArtifacts: ['URL'],
};
}
static audit(artifacts) {
const score = calculateCustomSpeedMetric(artifacts.URL);
return {
score: score / 100,
numericValue: score,
displayValue: `${score} баллов`
};
}
}
Применение кастомных аудитов позволяет фокусироваться на узких местах, которые стандартные проверки не охватывают, например, скорость загрузки динамических компонентов или критических API-запросов.
Выбор аудитов в Lighthouse – это баланс между скоростью анализа и глубиной диагностики. Правильно настроенный набор аудитов позволяет точно определить узкие места и сконцентрироваться на наиболее критичных аспектах производительности.