Что такое тестирование на выдержку? Определение, значение, примеры

Тестирование на выдержку

Тестирование на выдержку — это тип нефункционального тестирования, который используется для измерения производительности программного приложения при огромном объеме нагрузки в течение длительного периода времени. Цель тестирования на выдержку — убедиться, что программное приложение выдерживает большие объемы использования, и проверить, что произойдет, если оно выйдет за рамки проектных ожиданий.

На изображении ниже показан цикл тестирования, показывающий, на каком этапе выполняется тестирование на выдержку (Тип теста производительности) выполняется в приложении.

Тестирование на выдержку

В этом типе тестирования в основном отслеживается использование памяти приложением в системе. Оно тестируется на уровне системы, чтобы выяснить, выдержит ли система очень высокий объем использования, и увидеть, что произойдет, если выйти за рамки ее проектных ожиданий.

Зачем проводить тестирование на выдержку?

Система может вести себя нормально при использовании в течение 2 часов, но когда одна и та же система используется непрерывно в течение 10 часов или более, она может выйти из строя или вести себя ненормально/случайно/может привести к сбою. Чтобы предсказать такой отказ, проводится тестирование на выдержку.

Когда проводить тестирование на выдержку?

Испытание на выдержку следует проводить в следующих случаях:

  1. Прежде чем сборка будет развернута на клиенте, то есть перед выпуском любого приложения на конкретной платформе, она должна пройти успешную серию нагрузочных тестов при высоких или эквивалентных уровнях трафика. После этого проводится испытание на выдержку. Это помогает нам определить, как запустить какое-либо конкретное приложение в течение длительного периода времени. Если в течение периода, т. е. когда система находится в режиме Soak, будут обнаружены такие проблемы, как утечки/повреждения памяти, о них следует немедленно сообщить.
  2. Лучшее время для тестирования на выдержку — выходные, поскольку приложение должно находиться в рабочем состоянии в течение дня или ночи. Это полностью зависит от ограничений ситуации тестирования. Испытания на выдержку являются одним из наиболее важных требований соответствия, которые каждая компания должна строго соблюдать.

Стратегия тестирования на выдержку

Тестирование на выдержку в течение длительного сеанса — это стратегия, при которой система находится под нагрузкой в ​​течение более длительного времени.

Простой пример: пользователь остается в системе в течение многих часов, выполняя ряд бизнес-транзакций. Таким образом создается много данных. На систему/сервер базы данных может быть большая нагрузка, что может привести к остановке/сбою системы/сервера базы данных.

При длительном тестировании на выдержку действия в течение нескольких дней (скажем, 30 дней) выполняются в ограниченные сроки (скажем, 2 дня). Количество транзакций в этот ограниченный период времени должно соответствовать или превышать количество транзакций за несколько дней. В центре внимания должно быть количество обработанных транзакций. Наиболее важной частью тестирования на выдержку является проверка доступной памяти ЦП и объема памяти, которая будет использоваться. Нам нужно записывать использование памяти в начале и в конце теста на выдержку. При необходимости, использование памяти такими средствами, как Java Виртуальные машины также важны и требуют мониторинга.

Ниже приведены еще несколько проверок, которые должен выполнить любой пользователь/тестер перед началом тестирования на выдержку:

а) Мониторинг потребления ресурсов базы данных.

б) Мониторинг потребления ресурсов сервера (за исключением использования ЦП).

в) Тест на выдержку должен выполняться с реалистичным параллельным доступом пользователей.

Характеристики испытаний на выдержку

Стандартный метод испытания на выдержку должен иметь следующие характеристики:

  • Продолжительность большинства испытаний на выдерживание часто определяется имеющимся временем.
  • Любое приложение должно работать без перерыва, если оно требует длительного периода времени.
  • Он должен охватывать все сценарии, согласованные заинтересованными сторонами.
  • В большинстве случаев каждая система имеет регулярный период окна обслуживания, и время между такими периодами окна является ключевым фактором для определения объема теста на выдержку.

ПРИМЕРЫ испытаний на выдержку

  • В случае банковского домена, когда имеется большой объем данных от продавцов, тестер будет непрерывно нагружать систему на период от 70 до 150 часов, чтобы проверить, как приложение ведет себя в течение этого периода загрузки.
  • Предположим, что имеется 33,000 60 входов в систему, которые необходимо провести через систему, это соответствует семи с половиной дням активности. В этом случае 70–6-часовое испытание на выдержку можно начать к вечеру пятницы, около XNUMX:XNUMX, и завершить его может Monday утро в 6 утра. Только при таком тесте можно будет наблюдать любое ухудшение характеристик в контролируемых условиях.
  • В случае с видеоиграми Mobile приложения и т. д. предполагают оставление игры или приложения в работающем состоянии на длительный период времени в различных режимах работы, таких как холостой ход, пауза на титульном экране и т. д., чтобы выяснить, может ли приложение справиться с постоянно ожидаемой нагрузкой. .

Распространенные проблемы, наблюдаемые во время тестирования на выдержку

  1. Распределение памяти (утечки памяти, которые в конечном итоге могут привести к кризису памяти или ошибкам округления, которые проявляются только со временем).
  2. Использование ресурсов базы данных (неспособность закрыть курсоры базы данных при некоторых условиях, что в конечном итоге может привести к остановке всей системы).
  3. Это также может привести к ухудшению производительности, т. е. к тому, чтобы время отклика после длительного периода постоянной активности было таким же хорошим, как и в начале теста.
  4. Неспособность закрыть соединения между уровнями многоуровневой системы при некоторых обстоятельствах, что может привести к остановке некоторых или всех модулей системы.
  5. Постепенное ухудшение времени отклика некоторых функций, поскольку внутренние структуры данных становятся менее эффективными во время длительного тестирования.

Резюме

  • In Программная инженерия, Тестирование на выдержку проводится для того, чтобы определить, может ли тестируемое приложение выдержать непрерывную нагрузку.
  • Это своего рода тест производительности.
  • Это помогает системе определить, выдержит ли она очень большой объем использования.
  • В этом типе тестирования в основном отслеживается использование памяти приложением в системе.
  • Проверки, которые должен выполнить любой пользователь/тестер перед началом тестирования на выдержку, включают:
  • Отслеживайте потребление ресурсов базы данных.
  • Отслеживайте потребление ресурсов сервера (за исключением использования ЦП).
  • Тест на выдержку должен выполняться с реалистичным параллельным доступом пользователей.