Що нового?

Придбаний Дизайн тестов

Інформація про покупку
Тип покупки: Складчина
Ціна: 4334 ГРН
Учасників: 0 з 8
Організатор: Відсутній
Статус: Набір учасників
Внесок: 563.4 ГРН
0%
Основний список
Резервний список

Gadzhi

Модератор
Дизайн тестов

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


Это в теории. А на практике некоторые тестировщики находят дефектов в программе больше, чем другие, в том числе они умеют находить весьма нетривиальные дефекты. Почему? Как им это удаётся? Что за секретные техники они применяют?

Увы, никаких особых приёмов проектирования тестов, о которых не было бы написано в любой книжке, не существует. Эффективные тестировщики применяют те же самые техники, что и все остальные. Разница лишь в том, КАК они их применяют.

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

Мы постоянно будем держать в уме два противоборствующих фактора:

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

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

Часть 1: практика применения техник тест-дизайна
1. Анализ границ и разбиение данных на подобласти.
Это -- основа основ, те самые 20% усилий, которые обеспечивают 80% результата. И вместе с тем, эта по сути самая простая из техник является наиболее сложной с точки зрения практики её применения. Потому что, во-первых, эта техника невероятно многослойная -- если вы нашли какие-то границы, это не значит, что других нет, и дополнительный анализ иногда оказывается очень плодотворным. А во-вторых потому, что эта техника требует больше всего творчества, интуиции, иногда даже везения. То есть -- больше всего практики, потому что только таким путём можно выработать в себе чутьё границ.

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

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

4. Тестовое покрытие: как понять, что тестов достаточно
Тестировщику важно не только уметь придумывать много тестов, но и вовремя остановиться. Это очень непростое решение, учитывая уже упомянутый факт, что сколько ни тестируй, это не гарантирует обнаружения всех дефектов. Тем не менее, в какой-то момент мы должны сказать, в первую очередь себе, что тестирование выполнено "полностью". Для этого требуется некоторый критерий "полноты". И в качестве такого критерия обычно используется покрытие чего-нибудь -- требований, программного кода, модели поведения, модели данных и т.д. Мы рассмотрим различные покрытия и проследим их связь с техниками проектирования тестов.

Часть 2: понимание принципов тест-дизайна
Вторая часть основана на внимательном изучении двух наборов эвристик, описанных в документе "Heuristic Test Strategy Model", созданном Джеймсом Бахом.

5. Product Elements: SFDPOT
При рассмотрении программного продукта можно выделить различные аспекты:

  • Structure: физическое устройство продукта, из чего он состоит;
  • Functions: логическое устройство продукта, что он может делать;
  • Data: какими данными может оперировать продукт;
  • Platform: как продукт взаимодействует с окружением;
  • Operations: как продукт используется;
  • Time: всё, связанное со временем.
Если тестировщик концентрирует внимание только на некоторых аспектах, упуская из внимания остальные, он рискует пропустить серьёзные дефекты. И наоборот, ориентируясь на различные аспекты, тестировщик может создать более разнообразные тесты, что позволит выявить больше разных дефектов. Мы увидим, как применение одних и тех же техник даёт новые результаты, если применять их к различным аспектам.

6. General Test Techniques: FDFS CURS
Последнее занятие будет посвящено обзору различных приёмов проектирования тестов, в том числе тех, которые ранее в явном виде не встречались в ходе тренинга. Мы рассмотрим классификацию техник тест-дизайна, выделив восемь "обобщенных техник":

  • Functions testing
  • Domain testing
  • Flow testing
  • Scenario testing
  • Claims testing
  • User testing
  • Risk testing
  • Stress testing
Для каждой из обобщенных техник будут приведены примеры, а также показано, как можно конструировать новые тесты путём комбинирования обобщенных техник друг с другом.

Стоимость: 6500 + возможная комиссия

Скрытое содержимое. Для просмотра необходимо: 15 оплаченных складчин.
 
Угорі