Главная Обратная связь Поможем написать вашу работу!

Дисциплины:

Архитектура (936)
Биология (6393)
География (744)
История (25)
Компьютеры (1497)
Кулинария (2184)
Культура (3938)
Литература (5778)
Математика (5918)
Медицина (9278)
Механика (2776)
Образование (13883)
Политика (26404)
Правоведение (321)
Психология (56518)
Религия (1833)
Социология (23400)
Спорт (2350)
Строительство (17942)
Технология (5741)
Транспорт (14634)
Физика (1043)
Философия (440)
Финансы (17336)
Химия (4931)
Экология (6055)
Экономика (9200)
Электроника (7621)






Тестирование производительности. Стрессовое и нагрузочное тестирование



Понятие тестирования ПО. Цели и задачи

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

Существует два метода обоснования корректности ПО:

1. Формальный. Он подразумевает, что производится последовательное доказательство корректности работы ПО при помощи ряда аксиом и формальных процедур.

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

Тестирование ПО подразделяется на три уровня:

1. Модульное тестирование – тестируется минимально возможный для тестирования компонент, например, отдельный класс, или метод. Часто оно осуществляется самими разработчиками ПО.

2. Интеграционное тестирование – тестируются интерфейсы между компонентами, подсистемами и системами.

3. Системное тестирование – тестируется интегрированная система на её соответствие требованиям.

Понятие отладки

Отладка – это отслеживание и устранение ошибок программирования в приложении при его разработке.

Отличие отладки от тестирования в том, что цель тестирования – это определение наличия ошибок, а цель отладки – их локализация и устранение.

Процесс отладки включает в себя:

1. действия, направленные на выявление ошибки (тестирование);

2. диагностику и локализацию ошибок (определение характера и местоположения ошибок);

3. внесения исправлений в программу целью устранения ошибок.

Помимо встроенного отладчика, представляющего средства отладки в интерактивном режиме, существуют также средства для организации программной отладки – это стандартные классы .NET – Debug и Trace.

Статическое и динамическое тестирование

Тестирование ПО делится на статическое и динамическое.

Главной задачей статического тестирования является нахождение недостатков уже на фазе проектирования программы и спецификации. Во время статического тестирования можно также проверять различные свойства системы.



Проведение статического тестирования может значительно снизить затраты на разработку ПО и уменьшить время, необходимое на его разработку.

Инструменты статического анализа уведомляют о таких недостатках программы, как, например, непригодный программный код, неописанные переменные и т.д.

Динамическое тестирование делится на:

- функциональное

- структурное

Функциональные методы, известные как BlackBox (тестирование методом «черного ящика»), или тестирование входов/выходов.

Приданной методике интересно не само ПО, а лишь входы и выходы, то есть фактические результаты его работы.

При структурном тестировании применяемые тесты исходят из внутренней структуры ПО, и по-другому этот процесс называется WhiteBox (тестирование методом «белого ящика»). Таким методом пользуются, как правило, разработчики. Методы структурного тестирования являются типичными методами модуль-тестирования, при котором тестируются только компоненты ПО.

Подходы к классификации тестирования ПО

Существует несколько подходов (видов) классификации тестирования ПО.

По объекту тестирования:

1. functional testing – функциональное тестирование

2. performance testing (load, stress, stability, endurance, soak testing) – тестированиепроизводительности



3. usability testing – тестирование удобства пользования

4. userinterfacetesting – тестирование взаимодействия с пользователем

5. security testing – тестирование безопасности

6. localization testing – тестирование локализации

7. compatibility testing – тестирование совместимости

По знанию системы:

1. Методом черного ящика

2. Методом белого ящика

3. Методом серого ящика

По степени изолированности компонентов:

1. Модульное

2. Интеграционное

3. Системное

По времени проведения:

1. Альфа-тестирование

2. Бета-тестирование

Тестирование производительности. Стрессовое и нагрузочное тестирование

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

Сюда входят:

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

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

 


Просмотров 796

Эта страница нарушает авторские права




allrefrs.ru - 2021 год. Все права принадлежат их авторам!