Файл: Разработка тестового сценария проекта.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 09.11.2023

Просмотров: 106

Скачиваний: 5

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Лабораторная работа №80.

Тема: Разработка тестового сценария проекта.

Цель: Научиться разрабатывать тестовые сценарии проектов, оформлять их результаты.
Теория

Тестирование программного обеспечения — процесс исследования, испытания программного продукта, имеющий своей целью проверку соответствия между реальным поведением программы и её ожидаемым поведением на конечном наборе тестов.

Целью проектирования тестовых вариантов является систематическое обнаружение различных классов ошибок при минимальных затратах времени и стоимости.

Тестирование обеспечивает:

- Обнаружение ошибок;

- Демонстрацию соответствия функций программы ее назначению;

- Демонстрацию реализации требований к характеристикам программы;

- Отображение надежности как индикатора качества программы.
Вариант тестирования, тестовая ситуация (test case) в разработке программного обеспечения ― это формально описанный алгоритм тестирования программы, специально созданный для определения возникновения в программе определённой ситуации, определённых выходных данных. Часто варианты тестирования группируют в тестовые наборы.

Если к программе предъявляются определённые формальные требования, то варианты тестирования составляются таким образом, чтобы были охвачены все эти требования. Для приложений без формальных требований варианты тестирования могут быть созданы, основываясь на типичном поведении программ сходного класса.
Принципы тестирования

- Принцип 1 — Тестирование демонстрирует наличие дефектов (Testing shows presence of defects).

Тестирование только снижает вероятность наличия дефектов, которые находятся в программном обеспечении, но не гарантирует их отсутствия.

- Принцип 2 — Исчерпывающее тестирование невозможно
(Exhaustive testing is impossible).

Полное тестирование с использованием всех входных комбинаций данных, результатов и предусловий физически невыполнимо (исключение — тривиальные случаи).

- Принцип 3 — Раннее тестирование (Early testing).

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

- Принцип 4 — Скопление дефектов (Defects clustering).

Большая часть дефектов находится в ограниченном количестве модулей.

- Принцип 5 — Парадокс пестицида (Pesticide paradox).

Если повторять те же тестовые сценарии снова и снова, в какой-то момент этот набор тестов перестанет выявлять новые дефекты.

- Принцип 6 — Тестирование зависит от контекста (Testing is context depending).

Тестирование проводится по-разному в зависимости от контекста. Например, программное обеспечение, в котором критически важна безопасность, тестируется иначе, чем новостной портал.

- Принцип 7 — Заблуждение об отсутствии ошибок (Absence-of-errors fallacy).

Отсутствие найденных дефектов при тестировании не всегда означает готовность продукта к релизу. Система должна быть удобна пользователю в использовании и удовлетворять его ожиданиям и потребностям.

Состав Test-case

ID тест-кейса.

Это уникальный номер тест-кейсов в системе управления тестированием или в документе. Как правило, все современные системы управления тестированием, такие как Jira, TestRail и Zephyr, автоматически присваивают идентификатор только что созданному тест-кейсу. Таким образом, исключается возможность ошибиться с присвоением уникального номера.

Название тест-кейса.

Чёткое название является обязательным атрибутом для эффективного тест-кейса. Ключевые особенности четкого названия: оно должно быть понятным и коротким. Кроме того, название тест-кейса должно содержать название модуля приложения или функциональную область, которую вы собираетесь проверять.

Описание тест-кейса.

Перед началом тестирования необходимо указать все детали, необходимые для конкретного тест-кейса. Это: тестовые данные, которые будут использоваться

, предусловия (предварительные шаги) и шаги.

Предусловия (предварительные шаги) описывают разные зависимости, необходимые для выполнения теста:

- Любые специальные настройки, которые должны быть сделаны перед выполнением тест-кейса.

- Зависимость от других тест-кейсов: нужно ли запускать тест-кейс до / после какого-либо другого тест-кейса.

- Зависимость от данных пользователя: с какой страницы пользователь должен начать навигацию; должен ли пользователь войти в систему.

Шаги – это путь к ожидаемому результату. Еще одно, о чем следует помнить, шаги в хорошем тест-кейсе хорошо продуманы и понятны. Эти два пункта являются основой для понимания того, как следует составлять шаги для тест-кейсов.

Основные свойства хорошо продуманных шагов:

- Оптимальное количество шагов. Нет необходимости создавать дополнительные шаги. То, что очевидно для вас, не может быть понятным для ваших коллег.

- Один тест-кейс покрывает только одну независимую функциональность. Неправильно проверять разные функциональности в одном тест-кейсе.

- Шаги должны быть легко исполняемыми.

- Шаги должны описывать не просто общую функциональность, в шагах должно быть описание конкретных действий, которые должны быть протестированы.


Наименование

Значение

Приоритет теста

Высокий

Название тестирования/Имя




Резюме испытания




Шаги тестирования

1.

2.

3.

n.

Данные тестирования

---

Ожидаемый результат




Фактический результат




Предпосылки

----

Постусловия

----

Статус (Pass/Fail)




Комментарий

----


Таблица 1 – Test-case

Практическая часть

Задание 1. Вычислить значение выражений. Исходные данные вводятся с клавиатуры. Вывести на экран значение промежуточных выражений и конечно значение.






a = cos2 (x+y)

, где

c

a + b2

d =



Таблица 2 – Значение выражений

Тесты:

Исходные данные

x = 6,4

y = 1,7

k = 5

m = 7

Ожидаемые результаты тестов

a = 0.05931

b = 7.59955

c = 0.65306

d = 88.5253

Таблица 3 – Исходные данные и ожидаемые результаты
Задание 2.

2.1 Вычислить значение выражений. Исходные данные вводятся с клавиатуры.

Написать программу, которая вычисляет значение функции по введенному с клавиатуры аргументу х:





2.2 Проверить работу каждой ветки кода, аналогично заданию 1.
Контрольные вопросы:

1. Что из себя представляет тестирование?

2. Что из себя представляет тестовая ситуация?

3. Перечислите основные виды тестирования.

4. Что обеспечивает тестирование?