Selenium для мониторинга доступности

Моя компания отслеживает производительность и доступность веб-сайтов и мобильных приложений с помощью функционального тестирования в облаке; мы стремимся расширить нашу технологию, включив в нее тесты Selenium. Мы используем системы RoR для периодического удаленного запуска наших функциональных тестов из нескольких мест, сохраняя данные в mysql для целей отчетности/предупреждения.

Мы планируем включить Selenium RC на каждом из наших серверов мониторинга для выполнения удаленных тестов. Мы можем перейти к запуску тестов с нескольких машин в каждом месте (т. е. с разными вариантами ОС или в целях масштабируемости).

Поскольку у нас уже есть контроллер для управления запуском наших тестов в разных местах, будет ли Grid излишним или необходимостью?

Любые другие предложения?


person Craig    schedule 10.03.2011    source источник


Ответы (1)


Что ж, Grid на самом деле не управляет (как в расписании) различными запусками тестов, это просто набор удаленных элементов управления (RC), подключенных к концентратору, который распределяет тесты между машинами, на которых запущены разные RC, когда запрашивается их выполнение. .

Что касается масштабируемости, если вы имеете в виду стресс-нагрузочное тестирование, то я предлагаю другой инструмент (что-то вроде JMeter), это можно сделать с помощью Selenium, но для этого потребуется большое количество RC, подключающихся к одному серверу, что, вероятно, может потребовать несколько машин. работает много RC каждый. RC довольно требовательны к ресурсам, если вам нужно их много (для стресс-тестирования).

Однако запуск разных ОС и браузеров из разных мест не должен быть проблемой, если вы укажете соответствующие профили для каждого, я бы сказал, что это будет лучшим/основным использованием Selenium (кроме регрессионного тестирования во время разработки).

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

person Argote    schedule 10.03.2011
comment
Имеет смысл. Таким образом, мы изначально (с одним сервером в каждом месте) можем использовать нашу текущую систему планирования для вызова RC для запуска сценариев, а затем, когда мы увеличим количество серверов в каждом месте, мы можем использовать Grid для распределения тестов в каждом месте. Мы будем проводить несколько тестов на различных сайтах в режиме 24x7, поэтому нам необходимо решить проблему масштабируемости. Это похоже на регрессионное тестирование в производстве для целей мониторинга доступности. Нагрузочного тестирования пока нет в меню, но мы рассмотрим JMeter, когда столкнемся с ним. - person Craig; 10.03.2011