Эта статья была создана с неоценимой помощью нашего коллеги из Лаборатории Касперского, Игоря Щегловитова, инженера QA отдела исследований облачных технологий. Предисловие – от ahriman.
Самая сложность в нагрузочном тестировании — начать его делать. Что нужно, чтобы начать делать нагрузочное тестирование? В общем случае – одна машина и целевой сервис. Этот метод хорош ровно до того момента, как ресурсов одной машины перестанет хватать для генерации нужной нагрузки.
Перестало хватать одной машины – берем две. Три. Десять. Где взять десять машин? Попросить у IT-отдела. Закончив нагрузочное тестирование, уведомить об этом IT-отдел. Через два часа после того, как IT-отдел вернет инфраструктуру в свое владение, обнаруживается [нечто] и инфраструктура нужна снова. Просим опять – и время, которое IT-отдел потратил ранее на развертывание инфраструктуры, внезапно увеличилось (конечно, никто не знает, почему).
Обычная история. Разработчики хотят быстро получить и начать использовать. Нагрузочное тестирование – это процесс итеративный, и наращивание инфраструктуры – тоже. Что, если бы разработчики имели эту инфраструктуру постоянно? Настроенную, по запросу? Выключенную, когда не надо, чтобы платить самый минимум? О том, как развернуть эту инфраструктуру на основе Visual Studio 2013 – в статье. В результате у вас будет всегда доступная готовая инфраструктура для нагрузочного тестирования, которую достаточно включить — и можно приступать к тестированию. В выключенном состоянии оплачиваться будет только хранилище для образов этих машин.