it-swarm.com.ru

Нагрузка против стресс-тестирования

В чем разница между нагрузочным и стресс-тестированием?

78
Neeta

Википедия on нагрузочное тестирование (жирный шрифт мой):

[...] Обычно проводится нагрузочный тест, чтобы понять поведение системы при определенной ожидаемой нагрузке. Эта загрузка может быть ожидаемым числом одновременных пользователей в приложении, выполняющих определенное количество транзакций в течение установленной продолжительности. Этот тест выдаст время отклика всех важных бизнес-критических транзакций. [...]

и на стресс-тестирование :

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

Итак, суть в следующем: если вы тестируете нормальную, ожидаемую нагрузку (вы знаете, что система будет одновременно использоваться до 100 пользователями), это нагрузочное тестирование. Но когда вы хотите определить, как система ведет себя при экстремальной нагрузке (DoS, эффект Slashdot ) и когда она ломается, это стресс-тестирование.

104
Tomasz Nurkiewicz

Термины «стресс-тестирование» и «нагрузочное тестирование» часто используются инженерами-тестировщиками взаимозаменяемо, но на самом деле они совершенно разные. 

Стресс-тестирование  

В стресс-тестировании мы пытаемся сломать тестируемую систему, перегружая ее ресурсы или отбирая у нее ресурсы (в этом случае это иногда называют отрицательным тестированием). Главная цель этого безумия - убедиться, что система выходит из строя и изящно восстанавливается - это качество известно как восстанавливаемость. ИЛИ Стресс-тестирование - это процесс, на котором тестируемая программа/система (SUT) подвергается сокращению ресурсов, а затем проверяется поведение SUT с помощью стандартных функциональных тестов. Идея этого состоит в том, чтобы выявить проблемы, которые не появляются в нормальных условиях. Например, многопоточная программа может нормально работать в нормальных условиях, но в условиях ограниченной доступности ЦП, проблемы синхронизации будут другими, и SUT выйдет из строя. Наиболее распространенными типами системных ресурсов, сокращенными при стресс-тестировании, являются процессор, внутренняя память и пространство на внешнем диске. При проведении стресс-тестирования обычно называют инструменты, сокращающие эти три ресурса, EatCPU, EatMem и EatDisk соответственно.

Хотя с другой стороны нагрузочное тестирование

В случае нагрузочное тестирование нагрузочное тестирование - это процесс подвергания SUT тяжелым нагрузкам, обычно путем симуляции нескольких пользователей (с помощью Load Runner), где «пользователи» могут означать людей-пользователей или виртуальных/программных пользователей. Наиболее распространенный пример нагрузочного тестирования включает одновременное попадание тысяч пользователей в веб-или сетевое приложение. Обычно это достигается с помощью программы, которая имитирует пользователей. Существуют две основные цели нагрузочного тестирования: определить рабочие характеристики SUT и определить, изменится ли SUT изящно или нет. 

В случае веб-сайта вы должны использовать нагрузочное тестирование, чтобы определить, сколько пользователей ваша система может обработать и при этом иметь достаточную производительность, а также определить, что происходит с экстремальной нагрузкой - будет ли веб-сайт генерировать сообщение «слишком занят» для пользователи, или веб-сервер будет падать в огне? 

16
user2197712

Нагрузочное тестирование: Нагрузочное тестирование предназначено для тестирования системы путем постоянного и неуклонного увеличения нагрузки на систему до достижения порогового значения.

Пример Например, для проверки работоспособности приложения электронной почты его можно залить 1000 пользователей одновременно. Теперь 1000 пользователей могут запускать транзакции электронной почты (чтение, отправка, удаление, пересылка, ответ) различными способами. Если мы берем одну транзакцию на пользователя в час, то это будет 1000 транзакций в час. Моделируя 10 транзакций на пользователя, мы могли бы загрузить тестовый почтовый сервер, занимая его 10000 транзакций в час.

Стресс-тестирование: При стресс-тестировании различные действия по перегрузке существующих ресурсов избыточными заданиями выполняются в попытке сломать систему.

Пример: Например, текстовый процессор, такой как Writer1.1.0 от OpenOffice.org, используется для разработки писем, презентаций, электронных таблиц и т.д. Цель нашего стресс-тестирования - загрузить его с избытком персонажи.

Для этого мы будем многократно вставлять строку данных, пока она не достигнет своего порогового значения для обработки большого объема текста. Как только размер символа достигнет 65 535 символов, он просто откажется принимать больше данных. Результат стресс-тестирования на Writer 1.1.0 приводит к тому, что он не падает при стрессе и корректно обрабатывает ситуацию, что обеспечивает правильную работу приложения даже в жестких стрессовых условиях.

9
Rehan Ali

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

-> В нагрузочном тестировании мы измеряем производительность системы в зависимости от количества пользователей. Во время стресс-тестирования мы измеряем точку останова системы.

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

 .Total number of users.

 .Response Time

 .Through Put

Некоторые параметры для проверки состояния серверов/приложений.

-> Во время стресс-тестирования идет тестирование приложения на неожиданную нагрузку. Это включает

 .Vusers

 .Think-Time

Пример:

Если приложение создано для 500 пользователей, то для нагрузочного тестирования мы проверяем до 500 пользователей, а для стресс-тестирования - более 500.

3
Rahul D

Нагрузочное тестирование = установка определенного количества нагрузки на сервер на определенное время. 100 одновременных пользователей за 10 минут. Обеспечение стабильности программного обеспечения. Стресс-тестирование = постоянное увеличение нагрузки до сбоя программного обеспечения. 10 одновременных пользователей увеличиваются каждые 2 минуты, пока сервер не выйдет из строя.

Для сравнения с поднятием тяжестей: вы «максимально» увеличиваете свой вес, чтобы увидеть, что вы можете сделать за 1 повтор (стресс-тестирование), а затем на регулярных тренировках вы делаете 85% от максимального значения за 3 подхода по 10 повторений (нагрузочное тестирование).

2
DMart

Нагрузочное тестирование: - Нагрузочное тестирование предназначено для тестирования системы путем постоянного и неуклонного увеличения нагрузки на систему до достижения порогового значения.

Стресс-тестирование: - При стресс-тестировании различные действия по перегрузке существующих ресурсов избыточными заданиями выполняются в попытке сломать систему.

Основная разница как под

нажмите здесь, чтобы увидеть точную разницу

0
Unnati Mistry

Нагрузочное тестирование: Большое количество пользователей Стресс-тестирование: Слишком много пользователей, слишком много данных, слишком мало времени и слишком мало места

0
user7756768