November 2, 2020

Программа QA

Осознанное тестирование. Ниже приведены знания, необходимые для комфортной работы на позиции QA.

Junior:

  • Фундаментальные понятия:
    • Основные понятия тестирования и качества ПО
    • Почему тестирование необходимо?
    • Что такое тестирование?
    • Семь принципов тестирования
    • Основной процесс тестирования
    • Психология тестирования
    • Кодекс этики
    • Верификация и валидация
    • QA, QC и тестирование
    • Цели тестирование
    • Роль тестирования в процессе разработке ПО
    • Жизненный цикл разработки ПО (SDLC), стадии
    • Другое
  • Модели / методологии разработки ПО:
    • Основные модели разработки ПО
    • Каскадная модель (Waterfall model)
    • V-модель
    • Итеративная модель (Iterative Model)
    • Инкрементальная модель (Incremental Model)
    • Спиралевидная модель (Spiral Model)
  • Типы и уровни тестирования:
    • Функциональное тестирование
    • Нефункциональное тестирование
    • Тестирование связанное с изменениями
    • Структурное тестирование (white-box)
    • Уровни тестирования
  • Тестовая докумментация:
    • Виды документации
    • Тест-план, стратегия
    • Чек-лист, Тест-кейс
    • Баг-репорты
    • Уровни требований
    • Тестирование документации
  • Введение в проект, алгоритм действий:
    • Креды, доступы
    • Флоу тестирования на проекте
    • Взаимодействие с командой
    • Взаимодействие с заказчиком
    • Тестовое окружение
    • Требование к тестированию
    • Релизная политика проекта
    • Скоуп задач на итерацию, релиз
  • Техники тест-дизайна
    • Категории техник
    • Динамические
    • Статические
    • Исчерпывающее тестирование
    • Black-box
      • Классы эквивалентности
      • Граничные значения
      • Таблица принятия решения
      • Причина/следствие (Cause-Effect Graphing)
      • State-Transition
      • Use case
    • Попарный перебор
    • Experience-based
      • Предугадывание ошибки
      • Исследовательское тестирование
      • Checklist-based
    • White-box
      • Строковое покрытие (Statement Coverage)
      • Покрытие пути (Path Coverage)
      • Покрытие решения (Branch/Decision Coverage)
      • Покрытие условия (Condition Coverage)
  • Приоритизация:
    • Приоритизация тестов и распределение усилий в процессе тестирования
    • Управление дефектами
  • Инструменты управления проектами и тестированием:
    • Работа с Jira
    • Работа с TestRail
    • Интеграция систем

Middle:

  • Процесс тестирования:
    • Планирование тестирования
    • Мониторинг и контроль тестирования
    • Анализ тестирования
    • Проектирование тестов
    • Реализация тестов
    • Выполнение тестов
    • Определение критериев выхода и отчетности
    • Критерии входа и выхода
    • Активности по завершению тестирования
    • Разделение обязанностей Менеджер - Тестировщик
  • Метрики в тестировании:
    • Определение и использование метрик тестирования
  • Планирование тестирования и эстимация:
    • Оценка затрат на тестирование
    • Гибкая эстимация
    • Техники эстимации
  • Тестовые отчёты:
    • Виды отчётностей
  • Риск менеджмент:
    • Тестирование, основанное на рисках
    • Методы тестирования, основанного на рисках
    • Виды рисков

Senior:

  • Навыки управления:
    • Матрица ролей и эскалаций
    • Пути для формирования команды
    • Пути мотивации сотрудников
  • Автоматизация тестирования. Базовая теория:
    • Что такое автоматизация тестирования
    • Какие задачи решает автоматизация тестирования, зачем нужна автоматизация тестирования
    • Цели автоматизации тестирования
    • Преимущества автоматизации
    • Недостатки автоматизации
    • Тесты, которые должны быть автоматизированы
    • Тесты, которые не нужно автоматизировать
    • Классическая пирамида тестирования
    • Перевернутая пирамида тестирования
    • Unit testing
    • Integration testing
    • UI testing
  • Остальные виды тестирования. Базовая теория:
    • Нагрузочное тестирование
    • Тестирование безопасности
    • Е2Е тестирование
    • Регрессионное тестирование
    • Функциональное тестирование
    • Приемочное тестирование
    • Тестовая стратегия и этапы(порядок) внедрения автоматизации на проекте
    • Фигура тестирования для fronend проекта
    • Фигура тестирования для backend проекта
  • Фреймворки средств автоматизации:
    • Языки программирования
    • Фреймворки
    • Критетрии выбора инструментов (сообщество и поддержка, требование заказчика, цели и специфика проекта, языки программирования на которых написан проект)
  • CI/CD:
    • Понятие CI/CD
    • Инструменты CI (Jenkins, TeamCity, TFS)
    • Разница между Continuous Integration, Continuous Delivery и Continuous Deployment