У нас есть несколько веб-приложений и apis, развернутых в качестве лазурных веб-приложений, и мы хотели бы автоматизировать тестирование изменений базы данных. Мы думаем о том, чтобы повторить входящий трафик http к другому экземпляру службы azure, чтобы мы были уверены, что изменения совместимы, и мы ничего не нарушаем. Мы видели goreplay, но он в основном предназначен для установки на серверах, но мы развертываем его в облаке. Есть ли другой вариант?Как дублировать трафик с веб-приложения Azure для целей тестирования
ответ
Я не совсем уверен, что вы пытаетесь сделать, но вот несколько вариантов.
Если ваша цель состоит в том, чтобы имитировать много трафика на веб-приложения или набор веб-сервисов, чтобы увидеть, если они не под нагрузкой, вы можете использовать Visual Studio Online's Performance Testing tools. Их нетрудно настроить. Вы можете решить, сколько пользователей вы хотите имитировать и какие URL-адреса они будут ударять. Вы можете выбрать способ увеличения трафика. Вы даже можете записать сценарий и вернуть своих виртуальных пользователей в свое приложение.
Если вы хотите узнать, не изменились ли изменения в базе данных в приложении, я настоятельно рекомендую использовать платформу модульного тестирования для тестирования тестов из уровня приложения. Это, конечно, может включать рефакторинг вашего кода.
Если вы ищете проверку приложений BlackBox своего приложения в браузере, вам необходимо взглянуть на систему автоматизированного тестирования, такую как Selenium. Будьте предупреждены, что для создания всеобъемлющего набора тестов Selenium может потребоваться некоторое время для создания и обслуживания.
Если вы не пытаетесь выполнить ни один из вышеуказанных вариантов, можете ли вы подробнее остановиться на том, что вы пытаетесь сделать?
Мы хотим внедрить непрерывную интеграцию в базу данных, поэтому мы настраиваем проект, и с тех пор, как мы впервые начали работать, у нас есть много изменений, теперь мы хотим начать развертывание этих изменений чаще, но все же мы боимся, что мы что-то сломаем. Мы изучаем возможность получения копии продукции, применения изменений в базе данных с нашим конвейером CI, репликации производственного трафика и мониторинга телеметрии и журналов, чтобы проверить, работает ли после наших изменений все правильно. это может быть даже изменение индекса и, возможно, ухудшит производительность, поэтому мы узнаем, прежде чем идти вживую. – user1075679
Для разработки баз данных я уже думал о интеграции tsqlt, но в нашем опыте мы видели базу данных, которая хороша в qa или модульном тесте, но не работает. Мы также начали с селена, но целью здесь является не проверка взаимодействия с пользовательским интерфейсом, а обнаружение ошибок, возникающих в телеметрии. Может быть, это плохая идея, однако цель состоит в том, чтобы интегрировать базу данных в конвейер и повысить нашу уверенность в производственных развертываниях. – user1075679
Хотелось бы, чтобы что-то вроде goreplay для лазурного. Было бы здорово воспроизводить реальные запросы локально –