Как организовать тестирование в браузере Safari на операционной системе Windows?

Ответ

Нативные браузеры Safari и macOS тесно интегрированы. Официальный Safari для Windows не поддерживается с 2012 года, поэтому прямое тестирование невозможно.

Доступные стратегии:

  1. Использование облачных сервисов для кросс-браузерного тестирования (предпочтительный метод):

    • Преимущества: Доступ к реальным браузерам Safari на различных версиях macOS без покупки оборудования.
    • Популярные сервисы: BrowserStack, Sauce Labs, LambdaTest.
    • Пример настройки для BrowserStack через Selenium:
      
      from selenium import webdriver
      from selenium.webdriver.common.keys import Keys

    desired_cap = { 'os': 'OS X', 'os_version': 'Monterey', 'browserName': 'Safari', 'browser_version': '15.0', 'name': 'Safari Test on macOS Monterey' # Название теста } driver = webdriver.Remote( command_executor='https://USERNAME:ACCESS_KEY@hub.browserstack.com/wd/hub', desired_capabilities=desired_cap ) driver.get("https://www.example.com")

    ... действия теста ...

    driver.quit()

  2. Установка macOS на виртуальную машину (VM):

    • Инструменты: VMware, VirtualBox (требуется образ macOS).
    • Недостатки: Требует значительных ресурсов ПК, может нарушать лицензионное соглашение Apple (EULA).
  3. Локальные эмуляторы/симуляторы (ограниченная применимость):

    • Для чего: Частичная проверка отображения. Не заменяет тестирование на реальном Safari.
    • Пример: Инструменты разработчика в других браузерах (режим эмуляции Safari).

Рекомендация: Для профессионального тестирования используйте облачные сервисы. Они обеспечивают доступ к актуальным и legacy версиям Safari на разных версиях macOS, что критически важно для веб-разработки.

Ответ 18+ 🔞

Ну вот, опять эти яблочные придурки со своей вертикальной интеграцией, блядь. Safari на Windows? Да он там сдох ещё в 2012-м, как дохлая муха на подоконнике! Официально — нихуя не протестируешь. Но мы ж не лыком шиты, есть же способы, хоть и с приключениями, ёпта.

Как же всё-таки на это посмотреть, не покупая макбук за полтора овердохуища?

  1. Облачные сервисы — наш главный козырь, блядь.

    • Что за магия: Ты сидишь на своём убогом ПК, а где-то там, в далёком дата-центре, крутится настоящий мак с настоящим Сафари. И ты им рулишь, как своим. Красота, ебать мои старые костыли!
    • Куда бежать: BrowserStack, Sauce Labs, LambdaTest — вот твои новые друзья.
    • Вот, смотри, как это выглядит в коде (не трогай его, он святой):
      
      from selenium import webdriver
      from selenium.webdriver.common.keys import Keys

    desired_cap = { 'os': 'OS X', 'os_version': 'Monterey', 'browserName': 'Safari', 'browser_version': '15.0', 'name': 'Safari Test on macOS Monterey' # Подписывай, а то потом не разберёшь, что тестил } driver = webdriver.Remote( command_executor='https://USERNAME:ACCESS_KEY@hub.browserstack.com/wd/hub', desired_capabilities=desired_cap ) driver.get("https://www.example.com")

    ... а тут ты уже своё колдунство делаешь ...

    driver.quit()

  2. Виртуальная машина — путь страданий для мазохистов.

    • Инструменты: VMware, VirtualBox... и образ macOS, который ты, конечно же, легально приобретёшь, да?
    • Подводный камень: Жрёт ресурсы, как не в себя, тормозит, и ещё с юридической точки зрения это серая зона, если не чёрная. Лицензия Apple — тот ещё документ, её читать страшнее, чем "Муму" в оригинале.
  3. Локальные эмуляторы — для самых наивных.

    • На что годится: Ну, глянуть, не едет ли вёрстка совсем уж пиздец как. Это как смотреть на фотографицию супа вместо того, чтобы его есть. Вкус не узнаешь, блядь.
    • Где искать: В хроме или фаерфоксе есть режим разработчика, там можно выбрать "Safari". Но это пиздёж, чистой воды. Настоящий Сафари — он другой, со своими тараканами.

Итог, блядь: Если ты не готов стать полупидором, который возится с виртуалками, — плати за BrowserStack или ему подобных. Это самый быстрый и честный способ добраться до этой мартышлюшки Safari на разных версиях мака. Иначе будешь как Герасим — молчать и мучаться, потому что нихуя не проверил, а пользователи потом начнут орать.