Как настроить удаленные браузеры в Karma?

У меня проблемы с пониманием Кармы. Я бы хотел:

  • Настройте несколько хостов в моей сети под управлением Linux, Mac и Windows.
  • Желательно также запустить на Android и iPhone
  • Сделайте их доступными для запуска сквозных тестов через Karma
  • Пусть они запускают тесты в удаленном месте, а не локально

Цель: иметь возможность автоматизировать тесты, которые гарантируют, что наш сайт работает на всех платформах и браузерах, а не только на тех, которые доступны мне локально.

Это возможно? Я изо всех сил пытаюсь найти хорошие руководства по настройке этого материала.


person KarmaNightmare    schedule 08.07.2013    source источник


Ответы (2)


Вы можете запустить сервер веб-драйвера на своих удаленных серверах и настроить karma для использования karma-webdriver-launcher для запуска тестов в браузерах с ваших серверов веб-драйвера.

person josketres    schedule 14.09.2013
comment
Невероятно, сколько времени я просматривал этот ответ. Я хотел бы, чтобы описание настройки веб-драйвера было выделено на основном сайте кармы, так как это очень распространенное сомнение, которое возникает, когда вы впервые обращаетесь к карме. - person cesarpachon; 28.01.2016
comment
Совместимость с Кармой 0.12. Не работает с 3.x или 4.x - person bhantol; 11.04.2019

Я сам некоторое время пользуюсь кармой и думаю, что смогу ответить на некоторые ваши вопросы.

Я не уверен, что вы имеете в виду под настройкой нескольких хостов, но я думаю, вы имеете в виду, что хотите запускать тесты на нескольких разных устройствах (может быть, даже в разных браузерах?).

Все, что вам нужно сделать, это установить тесты и карму на каком-то сервере, к которому вы можете получить удаленный доступ. Запуск Karma с этого сервера должен позволить другим вашим устройствам получить доступ к его экземпляру Karma, просто открыв браузер и введя serverURL: 9876 в адресной строке браузера. Это должно привести к тому, что все тесты, найденные на сервере, будут запускаться в браузере, который открыл страницу.

Если вы хотите увидеть вывод Karma во время тестов, вам придется либо заставить karma выдать HTML с помощью репортера (если вам удастся это сделать, позвоните мне!), использовать репортер junit и постобработать результат. xml, который он сгенерирует, или просто подключитесь к серверу по SSH и посмотрите, что выйдет в консоли.

Если вы используете какое-то регулярное выражение в файле конфигурации karma, которое может найти любой новый код и тестовые файлы, которые вы отправляете на сервер, karma автоматически загрузит эти файлы, когда вы отправляете их на сервер, и повторно запустите все тесты.

На самом деле я занимаюсь этим сам, но я хотел бы создавать отчеты о тестировании в формате HTML вместо того, чтобы публиковать некоторые XML-файлы или использовать SSH и смотреть на вывод командной строки. У меня также есть некоторые проблемы с Istanbul, инструментом покрытия кода, в том, что если вы запускаете тесты в нескольких браузерах одновременно, только в одном из них будет сгенерировано покрытие кода.

person Metareven    schedule 12.09.2013