Файл: На тему подходы и ограничения(Описание предметной области).pdf
Добавлен: 06.04.2023
Просмотров: 114
Скачиваний: 1
- тестирование производительности;
- нагрузочное тестирование;
- стресс-тестирование;
- объемное тестирование;
- тестирование безопасности;
- тестирование совместимости;
- тестирование на восстановление
- Тестирование стабильности;
- юзабилити-тестирование;
- тестирование на соответствие;
- тестирование локализации. [3]
Ниже будут рассмотрены виды тестирования более подробно.
1. Альфа-тестирование.
Это наиболее распространенный тип тестирования, используемый в индустрии программного обеспечения. Целью этого тестирования является выявление всех возможных проблем или дефектов перед выпуском его на рынок или для пользователя.
Альфа-тестирование проводится в конце фазы разработки программного обеспечения, но до бета-тестирования. Тем не менее, незначительные изменения дизайна могут быть сделаны в результате такого тестирования. Альфа-тестирование проводится на стороне разработчика. Для этого типа тестирования может быть создана внутренняя виртуальная пользовательская среда.
2. Приемочные испытания.
Приемка осуществляется клиентом и определяет отвечает ли конечный результат требованиям бизнеса и сделана ли она в соответствии с потребностями конечного пользователя. Клиент принимает программное обеспечение только тогда, когда все функции и возможности работают должным образом.
Это последний этап тестирования, после которого программное обеспечение запускается в производство. Оно также называется пользовательским приемочным тестированием.
3. Специальное тестирование.
Само название предполагает, что это тестирование проводится на специальной основе, то есть без ссылки на контрольный пример, а также без какого-либо плана или документации для такого типа тестирования. Цель этого вида тестирования найти дефекты и сломать приложение.
Специальное тестирование является неофициальным способом поиска дефектов и может быть выполнено любым участником проекта. Трудно идентифицировать дефекты без тестового случая, но иногда возможно, что дефекты, обнаруженные во время специального тестирования, могли не быть идентифицированы с использованием существующих тестовых случаев. [4, 7]
4. Тестирование доступности.
Цель тестирования доступности определить, доступно ли программное обеспечение или приложение для людей с ограниченными возможностями. Проводятся различные проверки, такие как размер шрифта для визуально отключенных, цвет и контрастность для дальтонизма и т. д.
5. Бета-тестирование.
Бета-тестирование является формальным типом тестирования программного обеспечения, которое проводится заказчиком. Он выполняется в реальной среде перед выпуском продукта на рынок для реальных конечных пользователей.
Бета-тестирование проводится для того, чтобы убедиться в отсутствии серьезных сбоев в программном обеспечении или продукте, и оно удовлетворяет бизнес-требованиям с точки зрения конечного пользователя. Бета-тестирование заканчивается успешно, когда клиент принимает программное обеспечение.
Обычно это тестирование выполняется конечными пользователями или другими лицами. Это финальное тестирование перед выпуском приложения для коммерческих целей. Обычно бета-версия выпущенного программного обеспечения или продукта ограничена определенным количеством пользователей в определенной области.
Таким образом, конечный пользователь фактически использует программное обеспечение и делится обратной связью с компанией. Затем компания предпринимает необходимые действия перед выпуском программного обеспечения по всему миру. [4]
6. Внутреннее тестирование.
Всякий раз, когда ввод или данные вводятся во внешнем приложении, они сохраняются в базе данных, и тестирование такой базы данных называется тестированием базы данных или внутренним тестированием. Существуют различные базы данных, такие как SQL Server, MySQL, Oracle и т. д. Тестирование базы данных включает в себя тестирование структуры таблицы, схемы, хранимой процедуры, структуры данных и так далее.
В серверном тестировании интерфейс не задействован, тестеры напрямую подключены к базе данных с соответствующим доступом, и тестеры могут легко проверить данные, выполнив несколько запросов к базе данных. Во время этого внутреннего тестирования могут быть выявлены такие проблемы, как потеря данных, взаимоблокировка, повреждение данных и т. д. Эти проблемы крайне важны для исправления до того, как система перейдет в производственную среду.
7. Тестирование совместимости браузеров.
Это подтип тестирования совместимости и выполняется группой тестирования. Тестирование совместимости браузера выполняется для веб-приложений и гарантирует, что программное обеспечение может работать одинаково в различных браузерах и операционных системах.
8. Тестирование обратной совместимости.
Это тип тестирования, который проверяет, работает ли недавно разработанное или обновленное программное обеспечение с более старой версией среды или нет. Если какое-либо программное обеспечение обновляется, оно должно хорошо работать поверх предыдущей версии этого программного обеспечения.
9. Тестирование черного ящика.
Внутренний дизайн системы не рассматривается в этом типе тестирования. Тесты основаны на требованиях и функциональности. [7]
10. Тестирование граничных значений.
Этот тип тестирования проверяет поведение приложения на граничном уровне. Тестирование проводится для проверки наличия дефектов на граничных значениях. Тестирование граничного значения используется для тестирования другого диапазона чисел. Существует верхняя и нижняя границы для каждого диапазона, и тестирование проводится на этих граничных значениях.
Если для тестирования требуется диапазон значений от 1 до 500, то тестирование граничных значений выполняется для значений 0, 1, 2, 499, 500 и 501.
11. Тестирование веток.
Это тип тестирования белого ящика, который проводится во время модульного тестирования. Тестирование ветвей, само название предполагает, что код тщательно тестируется путем обхода каждой ветке (при использовании систем управления кодом).
12. Сравнительное тестирование.
Сравнение сильных и слабых сторон продукта с его предыдущими версиями или другими подобными продуктами называется сравнительным тестированием.
13. Тестирование на совместимость.
Это тип тестирования, в котором проверяется, как программное обеспечение ведет себя и работает в другой среде, веб-серверах, оборудовании и сетевой среде. Тестирование совместимости гарантирует, что программное обеспечение может работать в другой конфигурации, другой базе данных, разных браузерах и их версиях. Тестирование на совместимость выполняется командой тестирования. [7]
14. Тестирование компонентов.
В основном это выполняется разработчиками после завершения модульного тестирования. Компонентное тестирование включает тестирование нескольких функциональных возможностей в виде единого кода, и его цель состоит в том, чтобы определить, существует ли какой-либо дефект после соединения этих нескольких функциональных возможностей друг с другом.
15. Сквозное тестирование.
Подобно системному тестированию, сквозное тестирование включает тестирование всей прикладной среды в ситуации, которая имитирует реальное использование, например, взаимодействие с базой данных, использование сетевых коммуникаций или взаимодействие с другим оборудованием, приложениями или системами.
16. Эквивалентное разбиение.
Это метод тестирования черного ящика. Во время этого разделения эквивалентности выбирается набор групп, и для тестирования выбираются несколько значений или чисел. Понятно, что все значения из этой группы генерируют одинаковый результат.
Целью этого тестирования является удаление избыточных тестовых случаев в определенной группе, которая генерирует тот же результат, но не дефект.
Предположим, что приложение принимает значения в диапазоне от -10 до +10, поэтому с помощью эквивалентного разделения значения, выбранные для тестирования, равны нулю, одному положительному значению, одному отрицательному значению. Таким образом, Эквивалентное разбиение для этого теста: -10 до -1, 0 и от 1 до 10.
17. Тестирование примеров.
Это означает тестирование в реальном времени. Пример тестирования включает сценарий в реальном времени, а также сценарии, основанные на опыте тестировщиков.
18. Исследовательское тестирование.
Исследовательское тестирование — это неформальное тестирование, проводимое командой тестирования. Целью этого тестирования является изучение приложения и поиск дефектов, которые существуют в приложении. Иногда может случиться так, что во время этого теста обнаруженный серьезный дефект может даже вызвать системный сбой.[7]
Методика поисковых испытаний выполняется без документации и контрольных примеров.
20. Функциональное тестирование.
Этот тип тестирования игнорирует внутренние детали и фокусируется только на выводе, чтобы проверить, соответствует ли он требованиям или нет. Это тестирование типа «черного ящика», ориентированное на функциональные требования приложения.
21. Тестирование графического интерфейса пользователя.
Цель этого тестирования состоит в том, чтобы проверить интерфейс на соответствие бизнес-требованиям. Ожидаемый графический интерфейс приложения упоминается в подробных документах проекта и на экранах макета графического интерфейса пользователя.
Это тестирование включает в себя размер кнопок и поля ввода, представленные на экране, выравнивание всего текста, таблиц и содержимого таблиц.
Он также проверяет меню приложения, после выбора различных пунктов, также проверяет, что страница не колеблется, и выравнивание остается тем же после наведения мыши на меню или подменю.
22. Тестирование инкрементной интеграции
Инкрементное интеграционное тестирование — это восходящий подход к тестированию, то есть постоянное тестирование приложения при добавлении новой функциональности. Функциональные возможности и модули приложения должны быть достаточно независимыми, чтобы тестировать отдельно. Это делают программисты или тестировщики.
23. Интеграционное тестирование.
Тестирование всех интегрированных модулей для проверки объединенной функциональности после интеграции называется интеграционным тестированием. Модули, как правило, представляют собой модули кода, отдельные приложения, клиентские и серверные приложения в сети и т. д. Этот тип тестирования особенно важен для клиент-серверных и распределенных систем.
24. Нагрузочное тестирование.
Это тип нефункционального тестирования, и целью нагрузочного тестирования является проверка того, какую максимальную рабочую нагрузку может выдержать система без какого-либо снижения производительности. [7]
Нагрузочное тестирование помогает определить максимальную емкость системы при определенной нагрузке и любых проблемах, которые вызывают снижение производительности программного обеспечения. Нагрузочное тестирование выполняется с использованием таких инструментов, как JMeter, LoadRunner, WebLoad, SilkPerformer и т.д.
25. Тестирование мутаций.
Мутационное тестирование — это тип тестирования белого ящика, в котором изменяется исходный код одной из программ и проверяется, могут ли существующие тестовые примеры идентифицировать эти дефекты в системе. Изменения в исходном коде программы очень минимальны, так что они не влияют на все приложение, только конкретная область, оказывающая влияние, и соответствующие тестовые примеры должны быть в состоянии идентифицировать эти ошибки в системе.
26. Нефункциональное тестирование.
Это тип тестирования, для которого в каждой организации есть отдельная команда, которую обычно называют командой по нефункциональному тестированию или командой по производительности.
Нефункциональное тестирование включает в себя тестирование нефункциональных требований, таких как нагрузочное тестирование, стресс-тестирование, безопасность, объем, тестирование восстановления и т. д. Цель данного тестирования — убедиться, достаточно ли быстрое время отклика программного обеспечения или приложения в соответствии с бизнес требованиями.
Загрузка любой страницы или системы не должна занимать много времени и должна выдерживать пиковую нагрузку. [7]
27. Тестирование производительности
Этот термин часто используется взаимозаменяемо с «стрессовым» и «нагрузочным» тестированием. Тестирование производительности проводится для проверки соответствия системы требованиям к производительности. Для этого тестирования используются разные инструменты производительности и нагрузки.
28. Регрессионное тестирование