1 Flashcards
Тестирование. Цель тестирования
Тестирование – проверка соответствия между ожидаемым и фактическим поведением программы.
Цель – предоставление актуальной информации о соответствии производимого продукта требованиям.
Тест план.
Документ описывающий весь объем работ по тестированию, начиная с описания объекта тестирования, стратегии, расписания, критериев начала и окончания тестирования, до необходимого в процессе тестирования оборудования, спец. Знаний, а также оценки рисков с вариантами их разрешения.
Структура:
1) Введение (что делаем, зачем, для кого)
2) Объем работ (что тестировать, что нет)
3) Критерии качества и приемлемости
4) Критические факторы успеха
5) Оценка рисков
6) Ресурсы
7) Тестовая документация
8) Стратегия тестирования (входные критерии, методы/типы/уровни тестирования)
9) График тестирования
Тест кейс
Набор хорошо понятных и продуманных шагов, выполняемых для проверки конкретной функции или функциональности ПО.
Структура:
1. Идентификатор
2. Приоритет
3. Ссылка на требования
4. Название модуля
5. Заглавие
6. Предусловия
7. Шаги
8. Ожидаемый результат
Чек лист
Список проверок, который показывает что надо тестировать и содержит в себе результаты проверок. Отличается от тест кейса степенью подробности, нет подробных шагов.
Когда использовать Чек лист, а когда Тест кейс?
- Зависит от желания заказчика (например, с тест кейсами проект более прозрачен)
Сложный проект - ТК Легкий – Чек лист
Длительный – ТК Короткий – Чек лист
Баг
Несоответствие производимого продукта требованиям прямым или косвенным.
Прямые – ТЗ, спецификации, макеты.
Косвенные – неописанное, на основе опыта, конкурентов)
Баг репорт. Локализация бага
1) Заголовок (что,где,при каких условиях)
2) Предусловия
3) Шаги
4) Ожидаемый результат
5) Фактический результат
6) Входные данные (логин, пароль и т.д.)
7) Серьезность и Приоритет
8) Вложения (скрины, видео, логи)
9) Данные об окружении (версия, сборка)
Локализация бага
1) Минимальные шаги для воспроизведения
2) Вызван бэкэнд или фронтэнд
3) Обширность влияния (одна кнопка или все)
4) Окружение, ОС, браузеры
Приоритет (priority)
Приоритет – бизнес
Серьезность (severity)
Серьезность – работоспособность приложения
Техники тест дизайна
Этап на котором создаются/проектируются тест сьюты/тест кейсы в соответствии с определенными ранее критериями качества и целями тестирования
1) Разделение на классы эквивалентности
2) Анализ граничных значений
3) Метод попарного тестирования
4) Таблица принятия решений
5) Диаграмма состояний и переходов
6) Диаграмма пользовательских ролей
7) Предугадывание ошибок
8) Исследовательское тестирование
Класс эквивалентности
Набор данных, обработка которых приводит к одному и тому же результату.
Разделение на классы эквивалентности
Техника при которой функционал (диапазон возможных входных значений) разделяется на группы значений эквивалентных по воздействию на систему.
Анализ граничных значений
Направлено на проверку поедания системы на рыночных значениях входных данных (границы классов эквивалентности). На каждой границе диапазона проверяется 3 значения: граничное, значение до и значение после.
Метод попарного тестирования
Формирование таких наборов данных, в которых каждое тестируемое значение, каждого из проверяемых параметров, хотя бы единожды сочетается с каждым тестируемым значением всех остальных проверяемых параметров.
Цели:
– Обеспечить хорошее тестовое покрытие
– Выявить наибольшее количество багов на минимальном наборе тестов
Таблица принятия решений
Техника, позволяющая наглядно изобразить комбинаторику условий из ТЗ.
Вертикаль – условия и действия
Горизонталь – значения (правила)
Диаграмма состояний и переходов
Техника визуализации ТЗ. Показывает, как некий объект переходит из одного состояния в другое.
Диаграмма пользовательских ролей
Предугадывание ошибок
это метод тестирования, основанный на предыдущем опыте, который тестировщик использует, чтобы угадать проблемные области приложения.
Для угадывания ошибок можно использовать следующие факторы:
-Уроки, извлеченные из прошлых релизов
-Интуиция тестировщика
-Предыдущие дефекты
-Производственные проверки
-Контрольный список проверок
-Отчеты о рисках приложения
-Общие правила тестирования
Исследовательское тестирование
Его нужно применять в ситуациях:
Когда мы не знаем продукт. Мы изучаем его, как обычный пользователь. Например, нам дали новый проект и его нужно изучить: прокликать и узнать, какой там функционал.
Когда нам не нужна или у нас нет документации. Мы используем исследовательское тестирование, когда нет времени писать тест-кейсы или сроки горят, или нам приказали не писать документацию
Когда нет времени. Если дают сайт или программу и говорят (образно), что есть 15 минут, чтоб найти 100 багов и нет времени ни создавать тест-кейсы, ни писать репорты, тебе просто нужно срочно тестировать и проверять качество — это исследовательское тестирование.
Виды тестирования
-Функциональное
-Нефункциональное
-Связанные с изменениями
-По запуску
-По знанию о системе
-По степени автоматизации
-По времени проведения
-По позитивности
-По исполнению сценария
Функциональное тестирование
Главная цель это проверка реализуемости функциональных требований приложения, т.е. возможность приложения решать поставленные на него задачи (безопасность, взаимодействие, и функциональность)
Представлена на всех уровнях тестирования:
- Модульном (Unit)
- Интеграционном
- Системном
- Приемочном (клиент)
Уровни тестирования
- Модульном (Unit)
- Интеграционном
- Системном
- Приемочном (клиент)
Нефункциональное тестирование
Проверка на соответствие нефункциональным требованиям:
- Удобство
- Масштабируемость
- Производительность (load, stress,recovery,volume)
- Безопасность
- Совместимость
- Надежность
- Юзер интерфейс
- Локализация/интернационализация
Тестирование связанное с изменениями
1.Smoke (запускается ли) – новый билд
2.Sanity (основная функциональность) – стабильный билд
3.Re-test (исправлен ли баг)
4.Regression (ничего не сломалось после исправления бага, добавления новой функциональности о всем приложении)
Виды тестирования по запуску
- Динамическое
- Статическое (без запуска кода – код ревью)
Виды тестирования по знанию о системе
- Black box (без доступа к коду)
- White box (с доступом)
- Gray box (база данных)
Виды тестирования по степени автоматизации
- Ручное
-Авто
-Полуавто