Курс нацелен на IT-специалистов, занимающихся тестированием программного обеспечения, а в особенности на начинающих менеджеров и специалистов по автоматизации тестирования.
Знания и умения, полученные в результате обучения
По окончании курса слушатели будут обладать:
-
Знанием наиболее современных методологий разработки ПО, основанных на RUP (IBM Rational Unified Process) и гибких технологиях, таких как SCRUM и экстремальное программирование;
-
Пониманием основных терминов и понятий, связанных с процессом оптимизации тестирования;
-
Умением определять наиболее затратные места в процессе тестирования;
-
Пониманием основных направлений и возможностей автоматизации тестирования;
-
Знанием основных технологий оптимизации и автоматизации процесса тестирования;
-
Возможностью оценивать целесообразность применения различных методов оптимизации тестирования;
-
Знанием основных CASE-средств для автоматизации тестирования и основных методов оценки целесообразности их применения;
-
Основами планирования процесса автоматизации;
-
Пониманием основ документирования процесса оптимизации;
-
Знанием основных методологий внедрения, управления и контроля за процессом оптимизации и автоматизации тестирования;
-
Возможностью применять на практике простейшие методы оптимизации тестирования;
-
Умением автоматизировать несложные тестовые процедуры
-
Основными методами оценки рисков автоматизации;
-
Возможностью оценивать фактические результаты оптимизации и автоматизации процесса тестирования.
Программа курса
Модуль 1. Введение в оптимизацию тестирования
В модуле определяются цель курса и ожидаемые результаты его изучения. Рассматриваются основные термины и понятия, которые необходимы для правильного понимания материала курса. Указываются основные проблемы, которые связаны с тестированием программного обеспечения, и описываются объективные и субъективные источники этих трудностей. Определяются главные цели, задачи и направления оптимизации и автоматизации тестирования.
Темы
-
Цель курса
-
Основные термины и понятия
-
Источники сложности процесса тестирования
-
Цели и задачи оптимизации тестирования
-
Важнейшие направления оптимизации
Модуль 2. Методы оптимизации управления процессом тестирования
Рассматриваются задачи и особенности управления процессом тестирования и методам его оптимизации. Особое внимание уделяется типичным проблемам в управлении процессом тестирования и возможностям оптимизации управления с целью преодоления этих проблем. Кроме этого, рассматриваются приёмы стандартизации процесса управления и оптимизации его планирования, в частности за счёт сбора и анализа метрик процесса, а также направлениям и методам его автоматизации. Значительное внимание уделяется также вопросам оптимизации управления ресурсами и методам оптимизации документирования процесса управления.
Темы
-
Особенности управления процессом тестирования
-
Возможности оптимизации процесса управления тестированием
-
Унификация и стандартизация процесса управления
-
Оптимизация планирования
-
Оптимизация управления ресурсами
-
Оптимизация документирования
Лабораторная работа 1: Определение требований к процессу управления тестированием
-
Определение основных метрик процесса;
-
Определение основных требований к процессу управления.
Лабораторная работа 2: Оценка основных рисков к процессу тестирования
-
Выделение основных рисков процесса тестирования;
-
Анализ и ранжирование рисков;
-
Определение основных методов преодоления рисков.
Самостоятельная практическая работа 1: Оценка состава и распределения ролей в группе тестирования
-
Определение задач тестирования и предполагаемого объёма работ;
-
Определение требований к персоналу;
-
Выделение ролей;
-
Определение состава и распределение ролей.
Самостоятельная практическая работа 2: Самостоятельная разработка раздела плана тестирования
-
Определение задач и основных требований к процессу тестирования;
-
Определение критериев и метрик тестирования;
-
Определение технологии и методики тестирования;
-
Анализ рисков и основных методов их преодоления;
-
Оценка требуемых ресурсов;
-
Разработка графика проведения работ;
-
Написание плана тестирования.
Модуль 3. Методы уменьшения объёма тестирования
Рассматриваются основные методы и направления оптимизации тестирования за счёт уменьшения объёма тестирования. Рассматриваются такие методы как раннее начало тестирования (на примере тестирования требований к ПО), уменьшение количества тестов за счёт выделения оптимального числа классов эквивалентных тестов, выделение критичной функциональности от второстепенной функциональности, а также делегирование части работ по тестированию.
Темы
-
Тестирование и анализ требований
-
Выделение классов эквивалентности
-
Определение критичной функциональности
-
Вовлечение заказчика
-
Аутсорсинг тестирования
Лабораторная работа 3: Тестирование примера требований к системе
-
Определение целей и задач тестирования требований;;
-
Определение методики тестирования требований;
-
Тестирование требований.
Лабораторная работа 4: Выделение класса эквивалентных тестов
-
Определение критериев и выбор методики выделения классов эквивалентности;
-
Предварительное выделение классов эквивалентности;
-
Анализ выделенных классов эквивалентности.
Самостоятельная практическая работа 3: Выделение критичной функциональности текстового редактора
-
Формулировка критериев и определение методики выделения;
-
Выделение критичной функциональности;
-
Обоснование и анализ проведённого выделения.
Самостоятельная практическая работа 4: Определение видов тестирования, которые могут выполняться методом аутсорсинга на примере текстового редактора
-
Формулировка критериев и методика выделения видов тестирования;
-
Определение видов тестирования, которые могут выполняться методом аутсорсинга;
-
Обоснование и анализ проведённого выделения.
Модуль 4. Методы ускорения тестового цикла
В модуле рассматривается типичный тестовый цикл и методы его ускорения. Основной упор делается на организационных и методологических приёмах сокращения временных затрат на выполнение тестового цикла, в частности рассматриваются наиболее распространённые технологии быстрого (agile) тестирования и основные предпосылки их применения, равно как и ограничения по их применению.
Темы
-
Тестовый цикл.
-
Основные методы сокращения временных затрат.
-
Технология быстрого тестирования.
Самостоятельная практическая работа 5: Подготовка и проведение автоматизированного теста.
-
Изучение объекта тестирования;
-
Определение цели и методологии тестирования;
-
Разработка автоматизированного теста;
-
Выполнение автоматизированного теста.
Самостоятельная практическая работа 6: Тестирование приложения «Калькулятор» методом быстрого тестирования
-
Изучение объекта тестирования;
-
Разработка плана тестирования;
-
Проведение тестирования.
Модуль 5. Средства автоматизации процесса тестирования
В модуле изучаются основные направления и возможности автоматизации тестирования. Уделяется значительное внимание каждому из основных направлений автоматизации, рассматриваются возможности и ограничения автоматизации и делается обзор наиболее распространённых в настоящее время CASE-средств в области автоматизации тестирования.
Темы
-
Автоматизация управления
-
Автоматизация документирования
-
Автоматизация отдельных видов тестирования
-
Автоматизация анализа кода
-
Автоматизация генерации тестов
-
Автоматизация генерации входных и выходных данных
-
Комплексная автоматизация процесса тестирования
-
Управление качеством
Самостоятельная практическая работа 7: Разработка и проведение автоматизированного теста функциональности текстового редактора:
-
Изучение объекта тестирования;
-
Изучение и подготовка тестовой платформы;
-
Разработка автоматизированного теста;
-
Выполнение теста;
-
Фиксация результатов тестирования.
Модуль 6. Практические аспекты автоматизации
В модуле изучаются практические вопросы автоматизации тестирования. В частности, рассматриваются методы оценки, которые направлены на определение целесообразности и предполагаемой эффективности внедрения средств автоматизации тестирования. Особое внимание уделяется оценкам возникающих рисков, методам планирования и управления собственно процессом автоматизации. Отдельно рассматривается комплекс вопросов, связанных с разработкой, внедрением и сопровождением автоматизированной тестовой платформы. В ходе выполнения и анализа практических работ отрабатываются и закрепляются практические навыки автоматизации процесса тестирования.
Темы
-
Оценка целесообразности и эффективности автоматизации
-
Оценка рисков автоматизации
-
Планирование и управление автоматизацией процесса тестирования
-
Выбор инструментов для автоматизации процесса тестирования
-
Простейшие методы автоматизации
-
Автоматизация наиболее критичных видов тестирования
-
Формирование автоматизированной тестовой платформы
Самостоятельная практическая работа 8: Выбор метрики эффективности:
-
Определение стандартных метрик эффективности;
-
Оценка применимости выбранных метрик;
-
Определение методик сбора и анализа метрик эффективности.
Самостоятельная практическая работа 9: Самостоятельная разработка раздела плана по автоматизации процесса тестирования:
-
Изучение проблемы в существующем процессе тестирования;
-
Определение возможности и целесообразности автоматизации данного процесса тестирования с целью решения описанной проблемы;
-
Разработка раздела плана автоматизации с оценкой предполагаемой эффективности внедрения принятого решения.
Самостоятельная практическая работа 10: Самостоятельная разработка критерия выбора баг-трекинговой системы:
-
Определение критериев выбора баг-трекинговой системы;
-
Сравнительный анализ ряда баг-трекинговых систем;
-
Выбор и обоснование выбора баг-трекинговой системы.
Самостоятельная практическая работа 11: Разработка скрипта для проведения теста:
-
Изучение проекта теста;
-
Определение сценария выполнения теста;
-
Разработка скрипта для автоматизированного выполнения теста;
-
Разработка входных и выходных наборов данных
Самостоятельная практическая работа 12: Определение наиболее критичных видов тестирования
-
Определение критериев критичности тестирования;
-
Выделение и ранжирование критичных видов тестирования.
Модуль 7. Обобщение изученных вопросов
Модуль посвящён заключительному обзору и обобщению изученного материала, а также ответам на вопросы слушателей. Также описывается и разъясняется методика проведения итогового тестирования слушателей и критерии выставления итоговых оценок.
Темы
-
Заключение
-
Описание процедуры итогового тестирования
-
Вопросы
Итоговый тест по тематике курса