Согласованность профиля в headless и headed браузере
Проверяйте профиль в headless и headed сессиях: платформенную идентичность, политику хранения, рендеринг и пользовательские сценарии.
BotBrowser Team
Нужна структурированная документация по теме Платформа?
Эта статья относится к редакционной библиотеке. Для пошаговой настройки, справки и постоянных обновлений переходите сразу в соответствующий раздел docs.
Headless и headed сессии могут использовать один профиль, но иметь разные пути отображения и взаимодействия. BotBrowser поддерживает запуск с профилем и зафиксированный display path; сценарий, хост и результат приложения остаются ответственностью команды. Проверка согласованности должна выполнить поддерживаемый сценарий в обоих режимах и сохранить видимыми входные данные выпуска: версию, хост, службу отображения, графический backend и политику хранения.
TL;DR
- Записывайте браузер, семейство профилей, хост, display path, маршрут и хранение как одну единицу выпуска.
- Сравнивайте один видимый сценарий в headed и headless строках до изменения входных данных.
- Для мобильной и браузерной семьи создавайте отдельные строки, а не переносите результат рабочего стола.
Contents
- Определите поддерживаемую комбинацию
- Что сравнивать
- Фиксируйте display path
- Проверяйте возврат
- Practical conclusion
Определите поддерживаемую комбинацию
BotBrowser документирует запуск headless с профилем и сценарии создания снимков экрана в режиме headed с тем же профилем. Это не гарантирует одинаковое отображение, взаимодействие или рендеринг на разных хостах, графических системах и установленных шрифтах.
Запишите версию BotBrowser, семейство профилей, целевую платформу, хост, режим, путь отображения, маршрут и политику хранения. Выберите сценарий, представляющий production, и зафиксируйте начальное состояние.
Что сравнивать
Проверьте, что страница достигает ожидаемого состояния, элементы управления доступны, форма сохраняет разрешённый ввод, вывод подходит сценарию, а повторный запуск следует политике хранения. Отдельный разбор поведения Worker и OffscreenCanvas есть в материале Согласованность и приватность Worker и OffscreenCanvas.
Затем рассмотрите семейства сигналов: геометрию, графику, язык, часовой пояс, разрешения и идентичность браузера. Одна неизменная характеристика не доказывает согласованность профиля. Когда целевая платформа профиля отличается от системы хоста, эта настройка описана в материале Запуск профилей Windows-браузера на macOS и Linux. О том, как оценивать кроссплатформенную согласованность до развертывания, рассказывает материал Оценка кроссплатформенной согласованности браузера до развертывания.
Фиксируйте display path
Headed зависит от видимого дисплея, а headless может использовать другую службу или backend. Запишите это как часть выпуска. Цель не в одинаковых пикселях на всех хостах, а в понятном принятом результате для сценария и профиля. Проверка приватности в разных графических backend описана в материале Проверка приватности в разных графических backend.
Проверяйте возврат
Определите, какие данные должны сохраняться, а какие очищаться. Перезапустите принятую единицу выпуска и проверьте результат. Для сценария редактирования добавьте возврат, исправление и повторную отправку.
Связанные материалы
Оценка кроссплатформенной согласованности описывает матрицу. Согласованность профилей семейства WebKit описывает семейства браузеров. Проверка взаимодействия в браузере описывает сценарии и откат.
Итоговая проверка
- Сопоставьте браузер и семейство профилей.
- Сравните реальный сценарий в обоих режимах.
- Запишите отображение, backend, хост, цель, маршрут и хранение.
- Проверяйте семейства сигналов, а не одно свойство.
- Добавьте отдельные строки для мобильных целей и целей семейств браузеров.
- Продвигайте малыми группами с готовым откатом.
Для отдельной DRM-матрицы см. границы DRM Widevine и headless-браузера.
Practical conclusion
Сохраняйте браузер, профиль, маршрут и политику хранения как обратимую единицу выпуска. Часть этой единицы, отвечающая за браузер, это идентичность исполняемого файла, а не флаг: единый headless и старый shell различаются тем, что сообщают. Публикуйте видимый результат и границу поддержки, не добавляя учетные данные или содержимое страниц.
Public sources
Эта статья входит в руководство: Поверхности веб-платформы: карта проверки
Похожие статьи
Проверка качества мобильного профиля браузера
ПлатформаСогласованность профилей семейства WebKit
ПлатформаТестирование профилей Android на компьютере и сервере
ПлатформаКроссплатформенные профили: одна идентичность на каждом хосте
ОтпечаткиПроверка приватности в разных графических backend
ПлатформаОценка кроссплатформенной согласованности браузера до развертывания
Выполните ту же проверку в BotBrowser
Загрузите профиль, сохраните внутри браузера те сигналы, о которых только что прочитали, и подтвердите результат на своей машине до раскатки.