Методы тестирования ПО
Введение
Принципы тестирования
Разница между отладкой и тестированием
Виды тестирования ПО
Виды тестирования ПО
По запуску кода на исполнение
По доступу к коду и архитектуре приложения
По степени автоматизации
По уровню детализации приложения
По (убыванию) степени важности тестируемых функций
По принципам работы с приложением
Тест-кейс (тестовый сценарий)
Задание
155.70K

Лекция 1. Методы тестирования ПО

1. Методы тестирования ПО

2. Введение

Тестирование ПО – процесс
анализа программного средства и
сопутствующей документации с
целью выявления дефектов и
повышения качества продукта.

3. Принципы тестирования

Тестирование показывает наличие дефектов
Исчерпывающее тестирование невозможно
Раннее тестирование
Скопление дефектов
Парадокс пестицида
Тестирование зависит от контекста
Заблуждение об отсутствии ошибок

4. Разница между отладкой и тестированием

Отладка – это деятельность разработки для
нахождения, анализа и исправления
дефектов. Последующее подтверждающее
тестирование проверяет, устранены ли
дефекты.
Тестирование является частью отладки,
поскольку в рамках тестирования мы сами
не можем исправить дефекты.

5. Виды тестирования ПО

Классификация тестирования
По запуску кода
на исполнение
По доступу к коду
и архитектуре
приложения
По степени
автоматизации
Статичное
Метод белого
ящика
Ручное
Динамическое
Метод черного
ящика
Автоматизирован
ное
Метод серого
ящика

6. Виды тестирования ПО

Классификация тестирования
По уровню
детализации
приложения
По (убыванию) степени
важности тестируемых
функций
По принципам
работы с
приложением
Модульное
«Дымовое»
Позитивное
Интеграционн
ое
Критического
пути
Негативное
Системное
Расширенное
Приемочное

7. По запуску кода на исполнение

Статическое тестирование – процесс тестирования,
который проводится для верификации практически
любого артефакта разработки: программного кода
компонент, требований, системных спецификаций,
функциональных спецификаций, документов
проектирования и архитектуры программных систем
и их компонентов. (без запуска приложения)
Динамическое тестирование – тестирование
проводится на работающей системе, не может быть
осуществлено без запуска программного кода
приложения. (с запуском приложения)

8. По доступу к коду и архитектуре приложения

Тестирование белого ящика – метод тестирования
ПО, который предполагает полный доступ к коду
проекта.
Тестирование черного ящика – метод тестирования
ПО, который не предполагает доступа (полного или
частичного) к системе. Основывается на работе
исключительно с внешним интерфейсом
тестируемой системы.
Тестирование серого ящика – метод тестирования
ПО, который предполагает частичный доступ к коду
проекта (комбинация White Box и Black Box методов).

9. По степени автоматизации

Ручное – это процесс проверки программного
обеспечения вручную, без использования автоматических
инструментов. Тестировщик самостоятельно
взаимодействует с программой, проверяя ее
работоспособность и корректность выполнения задач.
(тест-кейсы выполняет человек)
Автоматизированное – это использование
специализированных программ и инструментов для
автоматизации процесса тестирования. Тестировщик
разрабатывает набор тестовых сценариев, которые
выполняются автоматически. (тест-кейсы частично или
полностью выполняет специальное инструментальное
средство)

10. По уровню детализации приложения

Модульное (unit тесты) – проводится для какого-либо одного
логически выделенного и изолированного элемента системы в
коде. Например, модуль авторизации в систему.
Интеграционное – проводится тестирование подсистемы,
состоящей из нескольких модулей, например, тестирование
того, как мы из корзины можем оплатить товары
Системное – проводится на полной системе, с целью проверки
системы на соответствия требованиям
Приёмочное – проводится на этапе сдачи готового продукта/его
готовой части заказчику. Цель – определение готовности
продукта. Обычно тестируется основной функционал.

11. По (убыванию) степени важности тестируемых функций

Дымовое – проверка самой важной, самой ключевой
функциональности, неработоспособность которой
делает бессмысленной саму идею использования
приложения.
Критического пути – направлено для проверки
функциональности, используемой обычными
пользователями во время их повседневной деятельности.
Расширенное – направлено на исследование всей
заявленной в требованиях функциональности. Проводится
нестандартное тестирование – попытка сломать ПО.

12. По принципам работы с приложением

Позитивное – тестирование, при котором
используются только корректные данные и все
действия с приложением выполняются строго по
инструкции без никаких недопустимых действий.
Негативное – тестирование приложения, при
котором используются некорректные данные и
выполняются некорректные операции, потенциально
приводящие к ошибкам.

13. Тест-кейс (тестовый сценарий)

Test Case #
Приоритет теста
Название
тестирования/Имя
Резюме испытания
Шаги тестирования
ТС_01
Высокий
Тестирование успешного входа в систему
Этот тест проверяет возможность успешного входа
пользователя в систему с валидными учетными данными
1.
Открыть страницу входа.
2.
Ввести имя пользователя.
3.
Ввести пароль.
4.
Нажать кнопку «Войти».
Данные тестирования
Имя пользователя: "user1", Пароль: "password123".
Ожидаемый результат
Пользователь успешно вошел в систему и попал на
домашнюю страницу
Фактический результат
Пользователь получил сообщение об ошибке при входе
Предусловия
Пользователь должен быть зарегистрирован в системе
Постусловия
Пользователь должен быть разлогинен из системы
Статус
(Pass/Fail)
Комментарии
Faill
Тест провален из-за недоступности сервера

14. Задание

Сделать кроссворд по данной лекции на 10 слов
(сдать в электронном формате на СДО)
Сделать краткий конспект данной лекции
English     Русский Правила