Виды тестирования

Начать. Это бесплатно
или регистрация c помощью Вашего email-адреса
Виды тестирования создатель Mind Map: Виды тестирования

1. По принципам работы с приложением

1.1. Позитивное

1.1.1. Позитивное тестирование направлено на исследование приложения в ситуации, когда все действия выполняются строго по инструкции без каких бы то ни было ошибок, отклонений, ввода неверных данных и т.д. Если позитивные тест-кейсы завершаются ошибками, это тревожный признак - приложение работает неверно в идеальных условиях (и можно предположить, что в неидеальных условиях оно работает ещё хуже). Для ускорения тестирования нескольких позитивных тест-кейсов можно объединить (например, перед отправкой заполнить все поля формы верными значениями) - иногда это может усложнить диагностику, но существенная экономия времени компенсирует этот риск.

1.2. Негативное

1.2.1. Негативное тестирование - направлено на исследование приложений в ситуациях, когда с ним выполняются (некорректные) операции и / или используются данные, новые приводящие к ошибкам (классика жанра - деление на ноль). В реальной жизни таких ситуаций больше (допускаются, злоумышленники осознанно «ломают» приложение, в среде работы приложения возникают проблемы и т.д.), негативных-кейсов оказывается значительно больше, чем позитивных (иногда - в разы или даже тест на порядки). В отличие от позитивных негативных тест-кейсы не стоит объединять, т.к. подобное решение может привести к неверной трактовке поведения и пропуску (необнаружению) дефектов.

2. по фокусировке на уровне архитектуры приложения

2.1. Тестирование уровня представления

2.1.1. сконцентрировано на той части, которая отвечает за взаимодействие с «внешним миром» (как пользователями, так и другими приложениями). Здесь исследуются вопросы удобства использования, скорости отклика интерфейса, совместимости с браузерами, корректности работы интерфейса.

2.2. Тестирование уровня бизнес-логики

2.2.1. (тестирование уровня бизнес-логики) отвечает за проверку основного набора функций приложения и строится на базе ключевых требований к приложению, бизнес-правил и общей проверки функциональности.

2.3. Тестирование уровня данных

2.3.1. (тестирование уровня данных) сконцентрировано на той части приложения, которая отвечает за хранение и некоторую обработку данных (чаще всего - в базе данных или ином хранилище). Здесь особый интерес представляет тестирование данных, проверка соблюдения бизнес-правил, тестирование производительности.

2.4. по целям и задачам

3. по техникам и подходам (подробнее можно почитать у куликова, стр. 82)

3.1. позитивное

3.2. негативное

3.3. на основе опыта тестировщика

3.3.1. иследовательское

3.3.2. свободное

3.4. по степени вмешательства в работу приложения

3.4.1. инвазивное

3.4.2. неинвазивное

3.5. по техникам автоматизации

3.6. на основе знания источников ошибок

3.6.1. Тестирование предугадыванием ошибок

3.6.2. Эвристическая оценка

3.6.3. Мутационное тестирование

3.6.4. Тестирование добавлением ошибок

3.7. на основе выбора входных данных

3.7.1. Тестирование на основе классов эквивалентности

3.7.1.1. (разделение на эквивалентность229) - техника тестирования, направленная на выполнение проверяемых и выполняемых тест-кейсов при достаточном тестовом покрытии. Суть техники включает выявление набора таких тест-кейсов (каждый из которых проверяет одно и то же поведение приложения) и выбор из набора таких тестовых приложений-кейсов с наибольшей вероятностью обнаружения проблемы.

3.7.2. Тестирование на основе граничных условий

3.7.2.1. (анализ граничных значений230) - инструментальная техника тестирования на основе классов эквивалентности, позволяющая выявить специфические значения исследуемых параметров, относящиеся к границам классов эквивалентности. Эта методика расширенного выявления наборов эквивалентных тест-кейсов и выбор таких тест-кейсов, которые обнаруживают проблему с наибольшей вероятностью

3.7.3. Доменное тестирование

3.7.3.1. техника тестирования на основе классов эквивалентности и граничных условий, позволяющая эффективно создавать несколько параметров (факторов) одновременно (в том числе с учётом взаимозависимости этих параметров). Данная техника также приведен подходы к выбору минимального числа показательных тест-кейсов из всего набора тест-кейсов

3.7.4. Попарное тестирование

3.7.4.1. методы тестирования, в которой тест-кейсы строятся по принципу проверки пар значений параметров (аргумент) вместо того, чтобы пытаться проверить все возможные комбинации всех значений всех параметров. Эта методика представляет собой полное тестирование частичного тестирования (n-мудрое тестирование233) и включает в себя полное трудозатраты на тестирование (а иногда и вовсе сделать возможным тестирование в случае, когда количество «всех комбинаций всех параметров» измеряется миллиардами).

3.7.5. Тестирование на основе ортогональных массивов

3.8. на основе среды выполнения

3.8.1. тестирование в процессе разработки

3.8.2. операционное тестирование

3.9. тестирование на основе кода

3.9.1. тестирование по потоку управления

3.9.2. тестирование по потоку данных

3.9.3. тестирование по диаграмме или таблице состояний

3.9.4. аудит кода

3.10. на основе структур кода

3.10.1. тестирование на основе выражений

3.10.2. тестирование на основе ветвей

3.10.3. тестирование на основе условий

3.10.4. тестирование на основе комбинаций условий

3.10.5. тестирование на основе отдельных условий, порождающих ветвление («решающих условий»)

3.10.6. тестирование на основе решений

3.10.7. тестирование на основе путей

3.11. тестирование на основе поведения приложения

3.11.1. Тестирование по таблице принятия решений

3.11.2. Тестирование по диаграмме или таблице состояний

3.11.3. Тестирование по спецификациям

3.11.4. Тестирование по моделям поведения приложения

3.11.5. Тестирование на основе вариантов использования

3.11.6. Параллельное тестирование

3.11.7. Тестирование на основе случайных данных

3.11.8. A/B-тестирование

4. нефункциональное

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

4.1.1. Что такое нагрузочное тестирование?

4.2. стрессовое тестирование

4.2.1. Стресс тестирование

4.3. тстирование стабильности

4.3.1. Тестирование стабильности — Википедия

4.4. объемное тестирование

4.4.1. - IBS AppLine

4.5. тестирование установки

4.5.1. Про Тестинг - Тестирование - Виды Тестирования ПО - Тестирование Установки

4.6. тестирование удобства использования

4.6.1. Про Тестинг - Тестирование - Виды Тестирования ПО - Тестирование удобства пользования

4.7. тстирование на отказ и восстановление

4.7.1. Про Тестинг - Тестирование - Виды Тестирования ПО - Тестирование на отказ и восстановление

4.8. конфигурационное тестирование

4.8.1. Про Тестинг - Тестирование - Виды Тестирования ПО - Конфигурационное Тестирование

5. Виды тестирования

6. По запуску кода на исполнение

6.1. Статическое

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

6.2. Динамическое

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

7. По доступу и коду и архитектуре

7.1. Белый ящик

7.1.1. https://habr.com/ru/post/422283/

7.2. Серый ящик

7.2.1. https://quality-lab.ru/blog/key-principles-of-gray-box-testing/

7.3. Черный ящик

7.3.1. https://quality-lab.ru/blog/key-principles-of-black-box-testing/

8. По уровню детализации

8.1. Модульное тестирование

8.1.1. Про Тестинг - Тестирование - Уровни Тестирования ПО - Компонентное или Модульное тестирование - Component or Unit Testing

8.2. Интеграционное тестирование

8.2.1. Про Тестинг - Тестирование - Уровни Тестирования ПО - Интеграционное тестирование - Integration Testing

8.3. Системное тестирование

8.3.1. Про Тестинг - Тестирование - Уровни Тестирования ПО - Системное тестирование - System Testing

8.4. Приемочное (у куликова нет, но выделяется в другой литературе)

8.4.1. https://www.appline.ru/services/dopolnitelnie-uslugi/priemochnoe-testirovanie#:~:text=%D0%9F%D1%80%D0%B8%D0%B5%D0%BC%D0%BE% D1% 87% D0% BD% D0% BE% D0% B5% 20% D1% 82% D0% B5% D1% 81% D1% 82% D0% B8% D1% 80% D0% BE% D0% B2% D0% B0% D0% BD% D0% B8% D0% B5% 20% E2% 80% 93% 20% D1% 8D% D1% 82% D0% BE% 20% D0% BA% D0% BE% D0% BC% D0% BF% D0% BB% D0% B5% D0% BA% D1% 81% D0% BD% D0% BE% D0% B5% 20% D1% 82% D0% B5% D1% 81% D1% 82% D0% B8% D1% 80% D0% BE% D0% B2% D0% B0% D0% BD% D0% B8% D0% B5,% D0% BF% D0% BE% D0% BA% D1% 80 % D1% 8B% D0% B2% D0% B0% D1% 8E% D1% 89% D0% B8% D1% 85% 20% D0% BE% D1% 81% D0% BD% D0% BE% D0% B2 % D0% BD% D1% 8B% D0% B5% 20% D0% B1% D0% B8% D0% B7% D0% BD% D0% B5% D1% 81% 2D% D0% BE% D0% BF% D0 % B5% D1% 80% D0% B0% D1% 86% D0% B8% D0% B8% 20% D1% 81% D0% B8% D1% 81% D1% 82% D0% B5% D0% BC% D1 % 8B.

9. По (убыванию) степени важности тестируемых функций

9.1. Дымовое тестирование (высокая важность)

9.1.1. Про Тестинг - Тестирование - Виды Тестирования ПО - Дымовое тестирование или Smoke Testing

9.1.2. ВАЖНО! Очень распространённая проблема! Из-за особенности перевода на русский язык под термином «приёмочное тестирование» часто может пониматься как «smoke test»{76} , так и «acceptance test»{84} , которые изначально не имеют между собою ничего общего. Возможно, в том числе поэтому многие тестировщики почти не используют русский перевод «дымовое тестирование», а так и говорят — «смоук-тест».

9.2. Тестирование критического пути (средняя важность)

9.2.1. направлено на исследование функциональности, используемой типичными пользователями в типичной повседневной деятельности. Как видно из определения в сноске к русскоязычной версии термина, сама идея позаимствована из управления проектами и трансформирована в контексте тестирования в основном: большинство пользователей, которые чаще всего используют некое подмножество функций приложения. Именно эти функции и нужно проверить, как только мы убедились, что приложение «в принципе работает» (дымовой тест прошёл успешно). Если по каким-то причинам приложение не выполняет эти функции или выполняет их некорректно, очень многие пользователи не смогут достичь множества своих целей. Пороговое значение метрики успешного прохождения «теста критического пути» уже немного ниже, чем в дымовом тестировании, но всё равно достаточно высоко (как правило, порядка 70–80–90 % — в зависимости от сути проекта).

9.2.2. Тест критического пути - QA evolution

9.3. Расширенное тестирование (низкая важность)

9.3.1. Направлено на исследование всей заявленной в требованиях функциональности - даже той, которая низко проранжирована по степени важности. При этом здесь также учитывается, какая функциональность является пояснительной, а какая - поясняется. Но при наличии достаточного количества времени и используемых ресурсов тесткейсы этого уровня могут включать даже самые низкоприоритетные требования. Использование одного направленного действия в рамках данного теста на использование нетипичных, маловероятных, экзотических случаев использования функций и свойств приложения, вызывающих на уровнях уровней. Пороговое значение метрики успешного прохождения расширенного тестирования ниже, чем в тесте критического пути (иногда можно увидеть даже значения в диапазоне 30–50%

9.4. По принципам работы с приложением

10. по степени формализации

10.1. Тестирование на основе тест-кейсов

10.2. Исследовательское тестирование

10.2.1. (исследовательское тестирование154) - частично формализованный, в рамках которого тестировщик работает с приложением по выбранной сценарию {143}, который, в свою очередь, дорабатывается в процессе выполнения с целью более полного исследования приложения. Ключевым фактором успеха при выполнении исследовательского тестирования именно работа по сценарию, не выполнение разрозненных бездумных операций.

10.3. Свободное (интуитивное) тестирование

10.3.1. полностью неформализованный подход, в котором не предполагается использования ни тест-кейсов, ни чек-листов, ни сценариев — тестировщик полностью опирается на свой профессионализм и интуицию (experience-based testing159) для спонтанного выполнения с приложением действий, которые, как он считает, могут обнаружить ошибку. Этот вид тестирования используется редко и исключительно как дополнение к полностью или частично формализованному тестированию в случаях, когда для исследования некоторого аспекта поведения приложения (пока?) нет тест-кейсов.

11. по целям и задачам

11.1. позитивное

11.2. негативное

11.3. функциональное

11.4. нефункциональное

11.5. инсталяционное

11.6. регресионное

11.7. повторное

11.8. приемочное

11.9. операционное

11.10. тестирование удобства использования

11.11. тестирование доступности

11.12. тестирование интерфейса

11.13. тестирование безопасности

11.14. тестирование интернационализации

11.15. тестирование локализации

11.16. тестирование совместимости

11.17. тестирование данных

11.18. тестирование использования ресурсов

11.19. сравнительное тестирование

11.20. демонстрационное тестирование

11.21. исчерпывающее тестирование

11.22. тестирование надежности

11.23. тестирование восстанавливаемости

11.24. тестирование отказоустойчивости

11.25. тестирование производительности

11.26. По принципам работы с приложением

11.27. A/B-тестирование

11.28. по целям и задачам

12. функциональное

12.1. функциональное тестирование

12.1.1. Про Тестинг - Тестирование - Виды Тестирования ПО - Функциональное тестирование

12.2. тестирование безопасности

12.2.1. Про Тестинг - Тестирование - Виды Тестирования ПО - Тестирование безопасности

12.3. тестирование взаимодействия

12.3.1. Про Тестинг - Тестирование - Виды Тестирования ПО - Тестирование взаимодействия

12.4. тестирование взаимодействия