stringtranslate.com

Нагрузочное тестирование

Испытание железнодорожного моста под нагрузкой, 1883 г.

Нагрузочное тестирование — это процесс предъявления требований к конструкции или системе и измерения ее реакции.

Нагрузочное тестирование программного обеспечения

Термин «нагрузочное тестирование» [1] или стресс-тестирование используется по-разному в профессиональном сообществе по тестированию программного обеспечения . Нагрузочное тестирование обычно относится к практике моделирования ожидаемого использования программного обеспечения путем имитации одновременного доступа к программе нескольких пользователей. [2] Таким образом, это тестирование наиболее актуально для многопользовательских систем; часто построенных с использованием модели клиент/сервер, таких как веб-серверы. Однако другие типы программных систем также могут быть подвергнуты нагрузочному тестированию. Например, текстовый процессор или графический редактор можно заставить прочитать чрезвычайно большой документ; или финансовый пакет можно заставить сгенерировать отчет на основе данных за несколько лет. Наиболее точное нагрузочное тестирование имитирует фактическое использование, в отличие от тестирования с использованием теоретического или аналитического моделирования.

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

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

Цели нагрузочного тестирования: - убедиться, что система соответствует контрольным показателям производительности; - определить предельную нагрузку системы; - проверить, как продукт реагирует на простои, вызванные нагрузкой.

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

  • 25 виртуальных пользователей (VUsers) входят в систему, просматривают элементы и затем выходят из системы
  • 25 VUsers входят в систему, добавляют товары в корзину, оформляют заказ и выходят из системы
  • 25 VUsers входят в систему, возвращают ранее купленные товары и выходят из системы
  • 25 VUsers просто входят в систему без какой-либо последующей активности

Аналитик тестирования может использовать различные инструменты нагрузочного тестирования для создания этих VUsers и их действий. После запуска теста и достижения им устойчивого состояния приложение тестируется при нагрузках 100 VUser, как описано выше. Затем производительность приложения можно отслеживать и фиксировать.

Специфика плана или сценария нагрузочного тестирования , как правило, различается в разных организациях. Например, в маркированном списке выше первый элемент может представлять 25 VUsers, просматривающих уникальные элементы, случайные элементы или выбранный набор элементов в зависимости от разработанного плана или сценария тестирования. Однако все планы нагрузочного тестирования пытаются имитировать производительность системы в диапазоне ожидаемых пиковых рабочих процессов и объемов. Критерии прохождения или провала нагрузочного теста (критерии прохождения/провала) также, как правило, различаются в разных организациях. Стандартов, определяющих приемлемые метрики производительности нагрузочного тестирования, не существует.

Распространенное заблуждение заключается в том, что программное обеспечение для нагрузочного тестирования предоставляет возможности записи и воспроизведения, как инструменты регрессионного тестирования . Инструменты нагрузочного тестирования анализируют весь стек протоколов OSI , тогда как большинство инструментов регрессионного тестирования фокусируются на производительности графического интерфейса пользователя . Например, инструмент регрессионного тестирования будет записывать и воспроизводить щелчок мыши по кнопке в веб-браузере, но инструмент нагрузочного тестирования будет отправлять гипертекст, который отправляет веб-браузер после того, как пользователь нажимает кнопку. В многопользовательской среде инструменты нагрузочного тестирования могут отправлять гипертекст для нескольких пользователей, при этом каждый пользователь имеет уникальный идентификатор входа, пароль и т. д.

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

Нагрузочное тестирование особенно важно, если приложение, система или услуга будут регулироваться соглашением об уровне обслуживания или SLA.

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

Термин «нагрузочное тестирование» часто используется как синоним параллельного тестирования , тестирования производительности программного обеспечения , тестирования надежности и объемного тестирования для определенных сценариев. Все это типы нефункционального тестирования , которые не являются частью функционального тестирования, используемого для проверки пригодности для использования любого данного программного обеспечения.

Тестирование физической нагрузки

Символ, используемый в геотехнических чертежах

Многие типы машин, двигателей, [3] конструкций, [4] и моторов [5] проходят испытания под нагрузкой. Нагрузка может быть при назначенной безопасной рабочей нагрузке (SWL), полной нагрузке или при повышенном уровне нагрузки. Регулирующий контракт, техническая спецификация или метод испытания содержат подробности проведения испытания. Целью испытания под механической нагрузкой является проверка того, что все составные части конструкции, включая материалы, крепления основания, подходят для задачи и нагрузки, на которую она рассчитана.

Применяются несколько видов нагрузочного тестирования

В Положении о поставке оборудования (безопасности) 1992 года Великобритании указано, что испытание под нагрузкой проводится до первого ввода оборудования в эксплуатацию. Испытание производительности подразумевает безопасную рабочую нагрузку (SWL) или другую указанную нагрузку в течение определенного времени в регулирующем методе испытаний, спецификации или контракте. В соответствии с Положением о подъемных операциях и подъемном оборудовании 1998 года Великобритании испытание под нагрузкой после первоначального испытания требуется, если заменяется основной компонент, если элемент перемещается из одного места в другое или по указанию компетентного лица.

Система зарядки автомобиля

Нагрузочный тест можно использовать для оценки состояния аккумулятора автомобиля . Тестер состоит из большого резистора, сопротивление которого аналогично сопротивлению стартера автомобиля , и измерителя для считывания выходного напряжения аккумулятора как в незагруженном, так и в нагруженном состоянии. При использовании тестера сначала проверяется напряжение разомкнутой цепи аккумулятора. Если напряжение разомкнутой цепи ниже спецификации (12,6 вольт для полностью заряженного аккумулятора), аккумулятор сначала заряжается. После считывания напряжения разомкнутой цепи аккумулятора прикладывается нагрузка. При применении он потребляет примерно такой же ток, который потреблял бы стартер автомобиля во время запуска. Исходя из указанных ампер холодного запуска аккумулятора, если напряжение под нагрузкой падает ниже определенной точки, аккумулятор неисправен. Нагрузочные тесты также используются на работающих автомобилях для проверки выходной мощности генератора автомобиля .

Смотрите также

Ссылки

  1. ^ Цзян, Чжэнь Мин; Хассан, Ахмед Э. (2015). «Обзор нагрузочного тестирования крупномасштабных программных систем». Труды IEEE по программной инженерии . 41 (11). IEEE: 1091–1118.
  2. ^ Уэскотт, Боб (2013). Книга о производительности каждого компьютера, Глава 6: Нагрузочное тестирование . CreateSpace . ISBN 978-1482657753.
  3. ^ Харпер, Дэвид; Девин Мартин, Гарольд Миллер, Роберт Гримли и Фредерик Грейнер (2003), Проектирование сверхмощной газовой турбины 6C, ASME Turbo Expo 2003, совместно с Международной конференцией по совместному производству электроэнергии 2003 года, т. 2: Turbo Expo 2003, Атланта, Джорджия: ASME 1., стр. 833–841, ISBN 978-0-7918-3685-9, получено 2013-07-14{{citation}}: CS1 maint: несколько имен: список авторов ( ссылка )
  4. ^ Рейнс, Ричард; Гарнье, Жак (2004), 23-я Международная конференция по оффшорной механике и арктической инженерии, том 1, части a и B, 23-я Международная конференция по оффшорной механике и арктической инженерии, том 1, Ванкувер, Британская Колумбия: ASME, стр. 621–631, doi :10.1115/OMAE2004-51343, ISBN 978-0-7918-3743-6, получено 2013-07-14
  5. ^ ОПРЕДЕЛЕНИЕ НАГРУЗКИ И ЭФФЕКТИВНОСТИ ЭЛЕКТРОДВИГАТЕЛЯ (PDF) , т. DOE/GO-10097-517, Министерство энергетики США, 2010, ISBN 978-0-9709500-6-2, получено 2013-07-14

Внешние ссылки