Главная
» LINUX
»
Как запустить Safari на Linux: удаленный доступ и параметры WebKit
Как запустить Safari на Linux: удаленный доступ и параметры WebKit
Компания Apple не предлагает официальную версию Safari для Linux. Последняя версия для Windows, Safari 5.1.7, вышла в 2010 году и устарела. Используйте удалённый Mac для просмотра Safari или сборку WebKit от Playwright для тестирования на Linux; WebKit — это не Safari.
Схема, а не поиск пакетов в реальном времени: Apple не публикует актуальную сборку Safari для Linux.
Выберите метод, который соответствует вашей цели.
Ваша цель
Использовать
Что вы получаете
Откройте или протестируйте сайт в реальном браузере Safari.
Удалённая сессия браузера macOS
Safari, запущенный на Mac и управляемый из Linux.
Запуск автоматической проверки браузера в Linux
Playwright WebKit
Сборка браузера на основе WebKit, а не брендированный Safari.
Просматривайте веб-страницы обычным способом в Linux.
Поддерживаемый браузер Linux, например Firefox или Chromium.
Поддерживаемый браузер с обновлениями для Linux.
Чтобы проверить работу Safari, наличие расширений, поддержку мультимедиа или конкретную версию браузера, протестируйте его в реальном Safari на macOS. Linux WebKit может выявлять проблемы с движком, но не может сертифицировать браузер Apple.
Используйте настоящую сессию Safari из Linux.
Сервис для тестирования браузеров — это простой вариант, не требующий Mac. BrowserStack Live предлагает облачные сессии браузера и включает Safari в список поддерживаемых браузеров. Ознакомьтесь с обзором Live и текущим списком браузеров; доступные версии macOS и Safari могут меняться.
Откройте панель управления удалённого браузера. Войдите в сервис, предоставляющий доступ к Safari для macOS. В селекторе устройств или браузеров выберите настольную версию macOS и доступную версию Safari.
Начните сессию и откройте свой сайт. Введите адрес общедоступного веб-сайта в удаленном окне браузера. Браузер работает на удаленном компьютере Mac; компьютер с Linux только отображает и управляет этой сессией.
Удалённая сессия позволяет рабочему столу Linux управлять браузером, работающим на macOS; эта схема не является скриншотом BrowserStack.
Добраться до местной строительной площадки
Если сайт работает только на вашей машине с Linux, удалённый браузер не сможет самостоятельно подключиться к localhost. Используйте локальный тестовый туннель сервиса. Официальная настройка BrowserStack поддерживает для этой цели исполняемый файл командной строки Linux:
Скопируйте ключ доступа из настроек вашей учетной записи. В терминале перейдите в папку, содержащую извлеченный исполняемый файл, и выполните следующую команду:
./BrowserStackLocal --key YOUR_ACCESS_KEY
Замените заполнитель своим собственным ключом и держите терминал открытым во время тестирования. Затем запустите или перезапустите сессию Live с включенным локальным тестированием и введите свой локальный адрес, например http://localhost:3000, . Остановите туннель с помощью команды Ctrl+Cпосле завершения. Относитесь к ключу доступа как к паролю и не вставляйте его в публичный код и не делитесь им.
Локальный тестовый туннель направляет трафик с сайта разработки в удаленный браузер; это концептуальное представление, а не панель управления сервисом.
Запустите WebKit локально с помощью Playwright
Для автоматизированных тестов, запускаемых в Linux или в Linux CI, Playwright может установить свою сборку WebKit. В системе с Python 3 создайте виртуальное окружение, установите Playwright и загрузите соответствующий исполняемый файл браузера:
Минимальный скрипт на Python может запустить этот браузер и загрузить страницу:
from playwright.sync_api import sync_playwright
with sync_playwright() as p:
browser = p.webkit.launch()
page = browser.new_page()
page.goto("https://example.com")
print(page.title())
browser.close()
Запустите скрипт с помощью Python. Если браузер сообщает об отсутствии системных библиотек, установите зависимости WebKit для вашего дистрибутива или следуйте руководству Playwright по установке браузера и системным требованиям . Повторно запустите команду установки браузера после обновления Playwright, если изменилась требуемая сборка браузера.
Playwright WebKit — это отдельный тестовый браузер для Linux, а не окно Safari, показанное рядом с ним на этой схеме.
Playwright's WebKit — это модифицированная сборка из исходных кодов WebKit, а не фирменный Safari, и она может содержать изменения, предшествующие изменениям в Safari. Некоторые аспекты работы также различаются в зависимости от операционной системы. Для более точного соответствия Safari Playwright рекомендует использовать WebKit на macOS, особенно для воспроизведения видео.
Почему Wine и старый установщик Safari — неудачный выбор
Старый способ запуска Safari через Wine использовалась для Windows, а не для современной сборки Linux. Apple называет Safari 5.1.7, выпущенный в 2010 году, устаревшим. Wine не может добавить недостающие исправления безопасности или современные функции Safari. Избегайте неофициальных зеркал установщика и никогда не используйте этот браузер для конфиденциальных учетных записей. Если вы сохраняете его для исторического тестирования, изолируйте его от повседневного просмотра веб-страниц и данных.
Быстрое устранение неполадок
Удалённая сессия не может открыть localhost: убедитесь, что локальный туннель всё ещё работает, в рабочей сессии включено локальное тестирование, и ваш сервер разработки прослушивает порт, указанный в URL.
Playwright WebKit не запускается: проверьте наличие отсутствующих библиотек Linux и воспользуйтесь инструкциями по установке системных зависимостей для вашего дистрибутива.
Тест WebKit пройден успешно, но Safari по-прежнему показывает неудовлетворительные результаты: повторите тест в реальном Safari на macOS. Различия между двумя средами могут заключаться в обновлениях браузера и особенностях платформы.