Осознанное тестирование
Трехдневный офлайн-тренинг, на котором тестировщики учатся техникам — как находить больше багов за меньшее время и делать проверки, до которых не додумываются джуны и мидлы.
Осознанное тестирование
Трехдневный офлайн-тренинг, на котором тестировщики учатся техникам — как находить больше багов за меньшее время и делать проверки, до которых не додумываются джуны и мидлы.
Участники углубят знания — как генерировать и комбинировать проверки, локализовывать баги и работать с требованиями аналитиков.
Из-за плохих требований легко оставить продукт без жизненно важных функций. Например, можно будет добавить клиента в CRM, но нельзя удалить. На тренинге научимся замечать недостающие фичи с помощью трех техник: «Поиска противоречий», «Выявления неоднозначностей» и «Проверки полноты».
Выявить и исправить противоречия в требованиях аналитика
У сложных продуктов — сотни характеристик. Если тестировать каждую, легко закопаться во второстепенных проверках, и времени на важные гипотезы не останется. Чтобы успевать главное, научимся приоритизировать кейсы и осознанно ими жертвовать.
Придумать достаточно гипотез и успеть их проверить
Чтобы точно понять причину бага, выявляют класс данных, на которых программа не работает. Иногда это можно сделать за несколько секунд, если использовать особенности человеческого зрения и восприятия. На тренинге разучим механики.
Быстро локализовать баг через командную строку, гуглдоку или используя особенности зрения
Разобьем процесс тестирования на составляющие: что тестируем, с какой гранулярностью, на какой стадии разработки, каким способом, что хотим узнать в результате. С помощью такой классификации придумаем новые техники, чтобы протестировать области продукта, на которые не хватает времени и ресурсов.
Подобрать или создать новые способы тестирования под потребность
Выясним, как отличия в типах данных провоцируют баги в интеграциях, каким образом исходно отличные от нуля данные при сохранении превращаются в ноль и почему один и тот же символ весит разное число байт.
Заметить хитрые баги, используя особенности кодировки текста и хранения чисел в базе данных
Автор — Павел Абдюшев,
директор по развитию продуктов HFLabs; 10 лет проработал в тестировании; эксперт команды тестирования в проекте «Веб-выборы»; спикер конференций «ЛАФ» и SQA Days
Кому пригодится тренинг
тест-менеджеры поймут, в какую сторону развивать свой отдел.
Тренинг пригодится всем, кто отвечает за качество продуктов:
тестировщики поднимут уровень в профессии;
аналитики глубже познакомятся с характеристиками качества ПО, научатся составлять ПМИ — программу и методику испытаний. И проверять собственные требования по основным характеристикам качества;
инженеры поддержки второго и третьего уровня поймут проблемы заказчиков и пользователей, научатся быстрее их локализовывать и общаться с тестировщиками на одном языке;
1,5 года
минимальный опыт в тестировании, с которым тренинг будет полезным
Группа на 16 человек, чтобы уделить внимание каждому
После каждого блока теории участники выполняют практические задания, а Павел разбирает решения. Группа компактная, поэтому каждый участник получает обратную связь и успевает задать вопросы.
Программа тренинга
День 3
День 1
День 2
Что такое «качество». Какие бывают характеристики качества.
Характеристики тестов для отбора наиболее сильных и ценных проверок.
В чем суть тестирования как исследования программного обеспечения.
Практика. Классическая игра 2−4-6.
Обсуждаем. Какие когнитивные искажения мешают людям тестировать.
Практика. Командная игра-соревнование на знание типов тестирования.
Фасетная классификация — как выбрать наиболее эффективную методику тестирования.
Практика. Генерация новых методик тестирования на основе фасетной классификации
Синхронизируем основы
Практика. Участники отмечают, какие характеристики покрыты тестами в их проектах. И подберут методы тестирования для непокрытых характеристик.
Техники тест-дизайна и приоритизация проверок
Быстрое тестирование — как тестировать без техник.
Техника «Первый взгляд»
Практика. Тестируем простую программу, которая анализирует треугольники. Но она не так проста.
Обсуждаем. Как отличить баг от фичи и каковы критерии для создания бага в системе учета ошибок.
Техника «Опробуй на своей шкуре» и сценарии использования.
Классы эквивалентности и граничные значения для входных и выходных данных программы.
Практика. Генерируем проверки для функции, которая выделяет код города в номере телефона.
Практика. Тестируем ежедневник.
Границы применимости техник тест-дизайна и их преодоление
Границы применения «Классов эквивалентности».
Сложность программ и способы ее преодоления — логическая и физическая структура программы.
Практика. Составление и приоритизация чек-листа для проверки программы, анализирующей треугольники
Безграничные «Граничные значения» и способы их поиска.
Анализ и выбор данных для тестирования
Как устроено хранение и обработка стандартных типов данных — чисел, строк, дат и списков — внутри программ и баз данных: MySQL, MS SQL и Oracle и PostgreSQL.
Особенности кодировок Win-1251, UTF-8, UTF-16 и UTF-32 для тестирования.
Как разбивать данные на классы эквивалентности с учетом их типов и характеристик.
Типовые ошибки в программах при работе с данными разных типов.
Ошибки представления информации.
Фильтрация и сравнение.
Потеря информации.
Практика. Составление технического чек-листа для тестирования ограничений сохранения данных в базе.
Неявная перетипизация данных и проблемы, которые она вызывает.
Повышаем скорость и эффективность проверок
Практика. Проверка полноты сценариев использования методом раскраски.
Тестирование как поиск проблем в сценариях.
Практика. Адаптируем тест по выбору эталонных данных при объединении клиентов после изменения правил.
Комбинирование параметров и техника pair wise — какие проверки можно комбинировать, а какие нельзя.
Техники быстрой генерации кейсов и быстрой проверки результатов.
Локализация и глобализация ошибок.
Практика. Исследование алгоритма программы методом черного ящика с помощью «Экселя» и командной строки
Работа с требованиями
Ошибки округления.
Трассировка тестирования на цели компании и продукта. Приоритизация гипотез для позитивных и негативных проверок с учетом цели продукта.
Практика. Выбираем 10 наиболее значимых тест-кейсов для проверки функции, которая выделяет код города в номере телефона.
Выявление характеристик объектов тестирования.
Обсуждаем. Какие качества присущи известным предметам.
Роль требований в тестировании ПО. Уровни и характеристики требований.
Маркеры неоднозначности и противоречивости требований.
Что делать, если нет требований?
Модель CRUDL и проверка полноты требований.
Практика. Оцениваем качество требований для показа стишков-пирожков на табло аэропортов по модели CRUDL
Модель расширенного CRUDL.
Особенности тестирования требований, описанных в форме сценариев использования.
Конец занятий
Начало
10–19:00
Чтобы выполнять задания, нужен ноутбук с Win7 и выше, можно в виде виртуальной машины. И программы: Notepad++, MS Excel или Calc (из пакета Open Office), пакет Cygwin в базовой комплектации.
Отзывы участников
Валентина Васильева, QA в HFLabs
Хорошо, что были перерывы, а не непрерывный поток информации на много часов. Получалось сохранять внимание и концентрацию, чтобы разбирать каждый кейс со свежей головой.
Информации много, но ее легко воспринимать за счёт баланса теории и практики, относительно простых примеров.
Кристина Суходол, инженер по сопровождению в HFLabs
Хороший баланс практики и теории — совсем не скучно, не минуточки. Думаю, полезно будет не только тестировщикам, но и ребятам из аналитики и саппорта.
Мне особенно понравились темы о тестировании требований. Наконец-то увидела для этого реальные техники. А еще материал о покрытии кода тестами и фасетной классификации видов тестирования.
Понравилось, что все отвечали на вопросы по очереди, обсуждали решения. Не было шанса отвлечься и заскучать. Здорово, что Павел давал время подумать над решением, прежде чем разбирать с группой.
Заявка на участие
Мы еще не выбрали точные даты, в которые пройдет следующий поток курса. Но можно оставить заявку на участие — напишем, когда откроется запись.