Учебники

Тип тестирования программного обеспечения

Что такое тип тестирования программного обеспечения?

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

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

Список из 100 типов Типов тестирования программного обеспечения вместе с определениями. Необходимо прочитать для любого специалиста по обеспечению качества.

Типы тестирования программного обеспечения

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

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

  3. Активное тестирование: тип тестирования, состоящий из введения тестовых данных и анализа результатов выполнения. Обычно проводится командой тестирования.

  4. Agile Testing: практика тестирования программного обеспечения, которая следует принципам гибкого манифеста, делая упор на тестирование с точки зрения клиентов, которые будут использовать систему. Это обычно выполняется командами QA. Подробнее о гибком тестировании

  5. Возрастное тестирование: тип тестирования, который оценивает способность системы выполнять в будущем. Процесс оценки проводится группами тестирования.

  6. Специальное тестирование: тестирование выполняется без планирования и документирования — тестировщик пытается «сломать» систему путем случайного опробования ее функциональных возможностей. Это выполняется командой тестирования. Подробнее о специальном тестировании

  7. Альфа-тестирование: тип тестирования программного продукта или системы, проводимый на сайте разработчика. Обычно это выполняется конечными пользователями. Подробнее об альфа-тестировании

  8. Подтверждение тестирования: тип тестирования, состоящий в проверке, подтверждают ли условия требования продукта. Это выполняется командой тестирования.

  9. Тестирование API: Техника тестирования похожа на модульное тестирование в том смысле, что она нацелена на уровень кода. Api Testing отличается от Unit Testing тем, что обычно это задача QA, а не задача разработчика. Подробнее о тестировании API

  10. Тестирование всех пар: комбинаторный метод тестирования, который проверяет все возможные дискретные комбинации входных параметров. Это выполняется командами тестирования.

  11. Автоматическое тестирование. Техника тестирования, использующая инструменты автоматического тестирования для управления настройкой среды, выполнением теста и составлением отчетов о результатах. Он выполняется компьютером и используется внутри команд тестирования. Подробнее об автоматизированном тестировании

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

  13. Тестирование с обратной совместимостью: метод тестирования, который проверяет поведение разработанного программного обеспечения в старых версиях тестовой среды. Это выполняется командой тестирования.

  14. Бета-тестирование: финальное тестирование перед выпуском приложения для коммерческих целей. Обычно это делается конечными пользователями или другими.

  15. Тестирование производительности: метод тестирования, в котором используются типичные наборы программ и данных, предназначенные для оценки производительности компьютерного оборудования и программного обеспечения в заданной конфигурации. Это выполняется командами тестирования. Подробнее о тестировании производительности

  16. Интеграционное тестирование большого взрыва: техника тестирования, которая интегрирует отдельные программные модули только тогда, когда все готово. Это выполняется командами тестирования.

  17. Тестирование двоичной переносимости: метод, который проверяет исполняемое приложение на переносимость между системными платформами и средами, обычно на соответствие спецификации ABI. Это выполняется командами тестирования.

  18. Тестирование граничных значений: методика тестирования программного обеспечения, в которой тесты предназначены для включения представителей граничных значений. Это выполняется командами тестирования QA. Подробнее о граничном тестировании

  19. Интеграционное тестирование снизу вверх: В интеграционном тестировании снизу вверх сначала разрабатываются модули на самом низком уровне, а другие модули, относящиеся к «основной» программе, интегрируются и тестируются по одному. Это обычно выполняется командами тестирования.

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

  21. Тестирование ширины: набор тестов, который реализует полную функциональность продукта, но не тестирует функции в деталях. Это выполняется командами тестирования.

  22. Тестирование черного ящика: метод тестирования программного обеспечения, который проверяет функциональность приложения, не имея специальных знаний о коде / внутренней структуре приложения. Тесты основаны на требованиях и функциональности. Это выполняется командами QA. Подробнее о тестировании черного ящика

  23. Тестирование на основе кода: метод тестирования, использующий тестовые среды (такие как xUnit), которые позволяют выполнять модульные тесты, чтобы определить, работают ли различные разделы кода, как ожидается, при различных обстоятельствах. Это выполняется командами разработчиков.

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

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

  26. Компонентное тестирование: методика тестирования, похожая на модульное тестирование, но с более высоким уровнем интеграции — тестирование проводится в контексте приложения, а не просто путем непосредственного тестирования определенного метода. Может быть выполнен командами тестирования или разработки.

  27. Тестирование конфигурации: метод тестирования, который определяет минимальную и оптимальную конфигурацию аппаратного и программного обеспечения, а также эффект добавления или изменения ресурсов, таких как память, дисководы и процессор. Обычно это выполняется инженерами Performance Testing. Подробнее о тестировании конфигурации

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

  29. Тестирование на соответствие: тип тестирования, который проверяет, была ли система разработана в соответствии со стандартами, процедурами и руководящими принципами. Обычно это выполняется сторонними компаниями, которые предлагают бренд «Certified OGC Compliant».

  30. Параллельное тестирование: многопользовательское тестирование, направленное на определение эффектов доступа к одному и тому же коду приложения, модулю или записям базы данных. Обычно это делают инженеры. Подробнее о параллельном тестировании

  31. Тестирование соответствия: процесс тестирования соответствия реализации спецификации, на которой она основана. Это обычно выполняется командами тестирования. Подробнее о тестировании на соответствие

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

  33. Тестирование преобразования: Тестирование программ или процедур, используемых для преобразования данных из существующих систем для использования в системах замены. Это обычно выполняется командами QA.

  34. Тестирование покрытия решений: тип тестирования программного обеспечения, при котором каждое условие / решение выполняется путем установки его в значение true / false. Это обычно делается командами автоматизации тестирования.

  35. Разрушающее испытание: тип испытания, при котором испытания проводятся до отказа образца, чтобы понять структурные характеристики образца или поведение материала при различных нагрузках. Это обычно выполняется командами QA. Подробнее о разрушающем тестировании

  36. Тестирование зависимостей: тип тестирования, который проверяет требования приложения к уже существующему программному обеспечению, начальным состояниям и конфигурации для поддержания надлежащей функциональности. Это обычно выполняется командами тестирования.

  37. Динамическое тестирование: термин, используемый в разработке программного обеспечения для описания тестирования динамического поведения кода. Обычно это выполняется командами тестирования. Подробнее о динамическом тестировании

  38. Тестирование предметной области: метод тестирования белого ящика, который содержит проверки того, что программа принимает только допустимые данные. Обычно это делается командами разработчиков программного обеспечения, а иногда и командами автоматизации тестирования.

  39. Тестирование обработки ошибок: тип тестирования программного обеспечения, который определяет способность системы правильно обрабатывать ошибочные транзакции. Это обычно выполняется командами тестирования.

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

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

  42. Исследовательское тестирование: методика тестирования черного ящика выполняется без планирования и документации. Это обычно выполняется ручными тестерами. Подробнее о поисковом тестировании

  43. Эквивалентное тестирование с разделением: методика тестирования программного обеспечения, которая делит входные данные программного блока на разделы данных, из которых могут быть получены контрольные примеры. это обычно выполняется командами QA. Подробнее о тестировании эквивалентных разделов

  44. Тестирование с внедрением неисправности: элемент комплексной стратегии тестирования, которая позволяет тестировщику сконцентрироваться на способе, которым тестируемое приложение может обрабатывать исключения. Это выполняется командами QA.

  45. Формальная проверка Тестирование: Акт подтверждения или опровержения правильности предполагаемых алгоритмов, лежащих в основе системы в отношении определенной формальной спецификации или свойства, с использованием формальных методов математики. Это обычно выполняется командами QA.

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

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

  48. Тестирование Gorilla: техника тестирования программного обеспечения, которая фокусируется на интенсивном тестировании одного конкретного модуля. Это выполняется командами по обеспечению качества, обычно при полном тестировании.

  49. Тестирование «серого ящика»: комбинация методологий тестирования «черного ящика» и «белого ящика»: тестирование программного обеспечения в соответствии с его спецификацией, но с использованием некоторых знаний его внутренней работы. Это может быть выполнено командами разработчиков или тестировщиков.

  50. Тестирование «стеклянного ящика»: аналогично тестированию «белого ящика», основанного на знании внутренней логики кода приложения. Это выполняется командами разработчиков.

  51. Тестирование программного обеспечения с графическим интерфейсом: процесс тестирования продукта, который использует графический интерфейс пользователя, чтобы убедиться, что он соответствует его письменным спецификациям. Обычно это делается командами тестирования. Подробнее о тестировании программного обеспечения с графическим интерфейсом

  52. Глобализационное тестирование: метод тестирования, который проверяет надлежащую функциональность продукта с любыми настройками культуры / локали, используя каждый тип возможного международного ввода. Это выполняется командой тестирования. Подробнее о тестировании глобализации

  53. Гибридное интеграционное тестирование: техника тестирования, которая сочетает в себе методы интеграции сверху вниз и снизу вверх, чтобы использовать преимущества такого рода тестирования. Это обычно выполняется командами тестирования.

  54. Интеграционное тестирование . Этап тестирования программного обеспечения, при котором отдельные программные модули объединяются и тестируются в группе. Это обычно проводится командами тестирования. Подробнее о тестировании интеграции

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

  56. Установка / удаление Тестирование: работа по обеспечению качества, которая фокусируется на том, что нужно будет сделать клиентам для успешной установки и установки нового программного обеспечения. Это может включать в себя полное, частичное или обновление процессов установки / удаления и обычно выполняется инженером по тестированию программного обеспечения совместно с менеджером конфигурации.

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

  58. Межсистемное тестирование: методика тестирования, которая фокусируется на тестировании приложения для обеспечения правильного взаимодействия между приложениями. Обычно это делается командами тестирования.

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

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

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

  62. Loop Testing: метод тестирования белого ящика, который выполняет циклы программы. Это выполняется командами разработчиков. Подробнее о циклическом тестировании

  63. Скриптовое тестирование вручную: метод тестирования, при котором тестовые примеры разрабатываются и проверяются группой перед ее выполнением. Это делается командами ручного тестирования.

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

  65. Модельно-ориентированное тестирование . Применение модельно-ориентированного проектирования для проектирования и выполнения необходимых артефактов для проведения тестирования программного обеспечения. Это обычно выполняется командами тестирования. Подробнее о тестировании на основе моделей

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

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

  68. Нефункциональное тестирование: техника тестирования, которая фокусируется на тестировании программного приложения на его нефункциональные требования. Может проводиться инженерами по производительности или командами ручного тестирования. Подробнее о нефункциональном тестировании

  69. Отрицательное тестирование: также известный как «тест на неудачу» — метод тестирования, при котором цель тестирования — показать, что компонент или система не работает. Это выполняется ручными или автоматизированными тестерами. Подробнее о негативном тестировании

  70. Эксплуатационное тестирование: методика тестирования, проводимая для оценки системы или компонента в его операционной среде. Обычно это выполняется командами тестирования. Узнайте больше о тестировании

  71. Тестирование ортогональных массивов: систематический, статистический способ тестирования, который может применяться при тестировании пользовательского интерфейса, тестировании системы, регрессионном тестировании, тестировании конфигурации и тестировании производительности. Это выполняется командой тестирования. Подробнее о тестировании ортогональных массивов

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

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

  74. Параллельное тестирование: методика тестирования, цель которой — убедиться, что новое приложение, которое заменило более старую версию, установлено и работает правильно. Проводится командой тестирования. Подробнее о параллельном тестировании

  75. Тестирование пути: типичное тестирование белого ящика, цель которого — удовлетворить критерии покрытия для каждого логического пути в программе. Обычно это выполняется командой разработчиков. Подробнее о тестировании пути

  76. Тестирование на проникновение: метод тестирования, который оценивает безопасность компьютерной системы или сети путем имитации атаки из вредоносного источника. Обычно они проводятся специализированными компаниями по тестированию на проникновение. Подробнее о тестировании на проникновение

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

  78. Квалификационное тестирование: тестирование на соответствие спецификациям предыдущего выпуска, обычно проводимое разработчиком для потребителя, чтобы продемонстрировать, что программное обеспечение соответствует указанным требованиям.

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

  80. Регрессионное тестирование: тип тестирования программного обеспечения, который стремится выявить программные ошибки после внесения изменений в программу (например, исправления ошибок или новых функций) путем повторного тестирования программы. Это выполняется командами тестирования. Подробнее о регрессионном тестировании

  81. Тестирование восстановления: методика тестирования, которая оценивает, насколько хорошо система восстанавливается после сбоев, сбоев оборудования или других катастрофических проблем. Это выполняется командами тестирования. Подробнее о восстановительном тестировании

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

  83. Тестирование безопасности: процесс определения того, что информационная система защищает данные и поддерживает функциональные возможности, как предполагалось. Это может быть выполнено группами тестирования или специализированными компаниями по тестированию безопасности. Подробнее о тестировании безопасности

  84. Тестирование работоспособности: техника тестирования, которая определяет, достаточно ли эффективна новая версия программного обеспечения, чтобы принять ее для серьезного тестирования. Это выполняется командами тестирования. Подробнее о тестировании вменяемости

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

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

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

  88. Статическое тестирование: форма тестирования программного обеспечения, когда программное обеспечение фактически не используется, оно проверяет главным образом на работоспособность кода, алгоритма или документа. Он используется разработчиком, который написал код. Подробнее о статическом тестировании

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

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

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

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

  93. Структурное тестирование: метод тестирования белого ящика, который учитывает внутреннюю структуру системы или компонента и гарантирует, что каждый оператор программы выполняет свою функцию. Это обычно выполняется разработчиками программного обеспечения.

  94. Системное тестирование . Процесс тестирования интегрированной аппаратно-программной системы для проверки соответствия системы указанным требованиям. Он проводится группами тестирования как в среде разработки, так и в целевой среде. Подробнее о тестировании системы

  95. Системная интеграция Тестирование: процесс тестирования, который осуществляет сосуществование программной системы с другими. Это обычно выполняется командами тестирования. Подробнее о тестировании системной интеграции

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

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

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

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

  3. Тестирование пользовательского интерфейса: тип тестирования, выполняемый для проверки удобства использования приложения. Это выполняется командами тестирования. Подробнее о тестировании пользовательского интерфейса

Бонус !!! Всегда приятно знать несколько дополнительных

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

  2. Объемное тестирование: тестирование, которое подтверждает, что любые значения, которые могут стать большими со временем (например, накопленные значения, журналы и файлы данных), могут быть учтены программой и не приведут к прекращению работы программы или ухудшению ее работы каким-либо образом , Обычно его проводит инженер-исполнитель. Читайте больше на объемном тестировании

  3. Тестирование на уязвимость. Тип тестирования, который касается безопасности приложений и имеет целью предотвратить проблемы, которые могут повлиять на целостность и стабильность приложения. Это может быть выполнено внутренними командами тестирования или передано сторонним компаниям. Подробнее о тестировании уязвимостей

  4. Тестирование «белого ящика»: техника тестирования, основанная на знании внутренней логики кода приложения и включающая такие тесты, как охват операторов кода, ветвей, путей, условий. Это выполняется разработчиками программного обеспечения. Подробнее о тестировании белой коробки

  5. Тестирование рабочих процессов. Скриптовое сквозное тестирование, которое дублирует конкретные рабочие процессы, которые, как ожидается, будут использоваться конечным пользователем. Это обычно проводится командами тестирования. Подробнее о тестировании рабочих процессов

На этом список заканчивается. Надеюсь, вам понравилось это читать.