{"id":14291,"url":"\/distributions\/14291\/click?bit=1&hash=257d5375fbb462be671b713a7a4184bd5d4f9c6ce46e0d204104db0e88eadadd","hash":"257d5375fbb462be671b713a7a4184bd5d4f9c6ce46e0d204104db0e88eadadd","title":"\u0420\u0435\u043a\u043b\u0430\u043c\u0430 \u043d\u0430 Ozon \u0434\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u043d\u0438\u0447\u0435\u0433\u043e \u0442\u0430\u043c \u043d\u0435 \u043f\u0440\u043e\u0434\u0430\u0451\u0442","buttonText":"","imageUuid":""}

Классификация видов тестирования: Часть 3

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

Всем привет! Меня зовут Георгий, я CEO FIRETMS. Сегодня я продолжу цикл статей о классификации видов тестирования программного обеспечения.

Содержание цикла:

  • Виды тестирования в зависимости от цели тестирования
  • Виды тестирования по методу выполнения теста
  • Уровни тестирования
  • Виды интеграционного тестирования
  • Виды приемочного тестирования
  • Виды тестирования производительности (нагрузочное)

Часть 3:

  • Типы "черного ящика" или спецификационного тестирования

  • Типы тестирования белого ящика или структурного тестирования
  • Виды тестирования, основанные на опыте или планировании
  • Другие типы тестирования программного обеспечения

Типы "черного ящика" или спецификационного тестирования

25. Разделение на эквивалентные классы

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

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

26. Анализ граничных значений

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

27. Тестирование с использованием таблиц решений

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

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

28. Тестирование с использованием графов причина-следствие

Это тип тестирования программного обеспечения, который использует графическое представление ввода и вывода. Ввод является причиной, а вывод - следствием. Цель этого метода - создание минимально возможного количества тестовых случаев для максимального покрытия тестами с использованием графов причина-следствие.

29. Тестирование состояний

Это тип тестирования, основанный на модели состояний, при котором приложение тестируется на основе изменения состояния приложения при изменении ввода.

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

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

Типы тестирования белого ящика или структурного тестирования

31. Тестирование отчетности

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

32. Тестирование ветвлений

Это мера процентного соотношения выполненных точек решения (например, условий if-else) от общего числа точек решения в приложении.

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

Оно включает в себя тестирование результатов условий, то есть значений ИСТИНА или ЛОЖЬ. Для получения 100% покрытия условий требуется покрыть каждое условие для обоих результатов ИСТИНА и ЛОЖЬ с использованием тестовых скриптов. Следовательно, для n условий, нам понадобится 2n тестовых скриптов.

34. Тестирование множественных условий

Оно включает в себя тестирование различных комбинаций исходов условий. Для 100% покрытия нам понадобится 2^n тестовых скриптов. Это очень трудоемко, и очень сложно достичь 100% покрытия с помощью этой техники.

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

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

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

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

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

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

Цель состоит в выявлении слабых программ в приложении, которые могут привести к ошибкам.

38. Проверка циклов

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

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

39. Опытное тестирование

Техники опытного тестирования полностью основаны на опыте или интуиции тестировщика. Две его наиболее распространенные формы – это адхок и исследовательское тестирование.

40. Адхок-тестирование

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

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

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

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

До новых встреч! Подписывайтесь на этот блог, впереди заключительная часть данного цикла

0
1 комментарий
Виктория Улько

Я о некоторых видах даже не знала 🤔… Спасибо.

Ответить
Развернуть ветку
-2 комментариев
Раскрывать всегда