AWS опубликовала собственный эмулятор облачных программных интерфейсов с открытым исходным кодом. Он позволяет проверять приложения на компьютере разработчика, отдельном сервере разработки или в системе непрерывной интеграции. Учётная запись облачного провайдера не требуется: запросы направляются к локально воспроизводимым ресурсам, а не в облако
Инструмент работает с привычными средствами командной строки и библиотеками разработки: для подключения меняют адрес назначения запросов. Для тестов на языке Rust предусмотрен встроенный режим с отдельным состоянием каждого экземпляра. В Linux доступны готовые пакеты, а для Windows и macOS документация предлагает контейнер. Телеметрия включена по умолчанию, но её можно отключить
Совпадение с поведением настоящих сервисов неполное. Разработчикам предлагают сверять нужные операции с тестами совместимости и опубликованными результатами; сами тесты пока охватывают не все варианты поведения. При необходимости документация рекомендует сравнить работу приложения в эмуляторе и в облаке
Отдельное ограничение касается безопасности: инструмент не предназначен для её проверки и для рабочих нагрузок. Некоторые правила доступа он обрабатывает иначе, чем облачные сервисы, а часть политик вообще не проверяет. Поэтому успешный локальный тест не доказывает корректность разрешений. Перед рабочим запуском приложение и настройки защиты нужно испытать в настоящем облаке
Остаётся вопрос, насколько устойчивой будет поддержка проекта: для команды, которая встроит эмулятор в ежедневные проверки, это столь же важно, как первоначальная совместимость. Наличие собственного инструмента у провайдера привлекательно, но доверие к нему будет зависеть от того, как быстро он начнёт отражать изменения настоящих сервисов
Первоисточник — AWS
Сообщите редакции. Существенные исправления мы отмечаем в материале