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