Параметризация нагрузочного теста при запуске веб-теста?
В настоящее время я использую WebTest для тестирования системы. Пользователь может проголосовать, а затем не может войти, чтобы изменить свой голос.
WebTest использует список имени пользователя из файла CSV, и для всех учетных записей для тестирования используется пароль по умолчанию.
Поскольку я не хочу видеть, как веб-сайт будет реагировать при одновременном входе большого количества пользователей, мне интересно, как параметризовать нагрузочный тест.
Идеи? Решения?
1 ответ
Я протестировал решение, в котором в течение четырех часов входило бы до нескольких сотен тысяч пользователей.
Мы преобразовали наш нагрузочный тест в кодированный веб-тест, чтобы вызвать конкретную процедуру базы данных, которая выдаст нам следующий логин из списка.
В этой процедуре мы сохранили индекс в таблице и перемещали его по одному каждый раз, когда выдавался новый логин.
Эта хранимая процедура была очень простой, но использует защиту параллелизма базы данных, чтобы убедиться, что пользователи были выданы точно так, как они хранятся в нашей временной таблице.
В идеале вы не хотите помещать вызов блокировки потока (базы данных или файлового ввода-вывода) в свой код нагрузочного теста, поскольку многие виртуальные пользователи совместно используют один и тот же поток. Однако на практике это работало нормально для простой хранимой процедуры, которую мы вызывали.