Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТРПО_01_Шакиров_МО-317.docx
Скачиваний:
127
Добавлен:
31.03.2021
Размер:
260.33 Кб
Скачать

Министерство науки и высшего образования РФ

Федеральное государственное бюджетное образовательное

учреждение высшего образования

«Уфимский государственный авиационный технический университет»

Факультет информатики и робототехники

Кафедра вычислительной математики и кибернетики

Отчет по лабораторной работе №1

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

по дисциплине

«Технология разработки программного обеспечения»

Выполнил:

студент группы МО-317

Шакиров А.Р.

Проверил:

старший преподаватель

Тугузбаев Гаяз Ахтямович

Уфа 2020

Оглавление

Теоретические сведения 3

1. Тестовые проверки 4

2. Дополнительное тестирование 9

3. Ответы на контрольные вопросы 13

Вывод 14

Цель:

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

Задачи:

  1. Изучить теоретические сведения.

  2. Выполнить практическое задание по лабораторной работе.

  3. Оформить отчёт и ответить на контрольные вопросы.

Теоретические сведения

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

Конечной целью тестирования является предоставление пользователю качественного программного обеспечения (ПО).

Качество (Quality) – степень, с которой компонент, система или процесс соответствует зафиксированным требованиям и/или ожиданиям и нуждам пользователя или заказчика.

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

Процесс тестирования как процесс поиска дефектов сводится к следующей последовательности действий:

  1. Узнаем ожидаемый результат.

  2. Узнаем фактический результат.

  3. Сравниваем ожидаемый и фактический результаты.

Источником ожидаемого результата является спецификация – детальное описание того, как должно работать ПО.

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

  1. Тестовые проверки

Ниже представлен перечень видов тестовых проверок, их определений и композиций тестов в таблице 1.1.

Таблица 1.1

Тестовые проверки для различных видов тестирования

Объект тестирования: Мобильное приложение «Импорт расписания УГАТУ»

Вид тестирования

Краткое определение вида тестирования

Тестовые проверки

1

2

3

Functional Testing

Тестирование, основанное на сравнительном анализе спецификации и функциональности

компонента или системы.

В техническом задании были указаны следующие функции:

1. Настройка под пользователя – выбор группы, факультета, временного промежутка для импортирования расписания.

2. Импорт расписания на календарь устройства.

3. Очистка внесенных записей с календаря устройства.

Функции были реализованы следующим образом:

  1. На главном экране выбор группы и факультета осуществляется через системный графический компонент прокручиваемого списка, а выбор временного промежутка с помощью выпадающего списка.

Продолжение таблицы 1.1

1

2

3

  1. Импорт расписания осуществляется получение данных расписания с сайта УГАТУ с последующим добавлением записей в календарь средствами Calendar Provider API.

  2. Очистка раннее внесенных записей осуществляется удалением календаря средствами Calendar Provider API.

Safety Testing

Тестирование 

программного продукта с целью определить его способность при использовании оговоренным

образом оставаться в рамках приемлемого риска причинения вреда 

здоровью, бизнесу, собственности или окружающей среде.

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

Security Testing

Тестирование с целью

оценить защищенность программного продукта от внешних воздействий (от

проникновений).

При попытке использования не оговоренным образом или использовании не предусмотренных команд происходит возврат к началу сценария. Защита от сетевых атак не предусмотрена.

Compatibility Testing

Проверка работоспособности приложения в различных средах (операционные системы, их типа, версии и разрядность).

Данное приложение разработано для операционной системы Android. Гарантирована работа для версии ОС выше 7.0. Контент

Продолжение таблицы 1.1

1

2

3

отображается одинаково и работает на всех устройствах без перебоев в функционировании и ошибок в верстке, а также с одинаково корректной читабельностью контента.

GUI Testing

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

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

Usability Testing

Тестирование с целью определения степени понятности, легкости в изучении и использовании,

привлекательности программного продукта для пользователя при условии

использования в заданных условиях эксплуатации (на этом уровне обращают

внимание на визуальное оформление, навигацию, логичность, наличие обратной связи и др.).

  1. На стартовом экране в списке групп выбрать необходимую группу.

  2. В выпадающем списке выбрать нужный временной промежуток (семестр).

  3. После нажатия на кнопку «Импорт» та блокируется до завершения операции импорта.

  4. По завершению импорта выводится уведомление о результате.

Accessibility Testing

Тестирование, которое

определяет степень легкости, с которой пользователи с ограниченными

способностями могут использовать систему или ее компоненты.

Средства ОС позволяют увеличивать размер шрифта.

Продолжение таблицы 1.1

1

2

3

Internationalization Testing

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

Не реализовано в процессе разработки.

Performance Testing

Процесс тестирования с целью определения производительности программного продукта.

Проверка при устойчивом интернет-соединении прошла успешно.

Stress Testing

Вид тестирования

производительности, оценивающий систему или компонент на граничных

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

Система сохраняет работоспособность и обеспечивает восстановление своих функций при возникновении следующих внештатных ситуаций:

  1. При возникновении ошибки импорта удаляются ранее внесенные записи в календарь.

  2. При недостатке оперативной памяти на устройстве отдельные модули приложения выгружаются из ОЗУ в ПЗУ средствами операционной системы.

Negative Testing

Тестирование, в рамках которого применяются сценарии, которые соответствуют внештатному поведению тестируемой системы.

При использовании не предусмотренных команд или некорректных сообщений происходит возврат к началу сценария.

Продолжение таблицы 1.1

1

2

3

Black Box Testing

Тестирование системы без знания внутренней структуры и компонентов системы (у тестировщика нет доступа к внутренней структуре и коду приложения либо в процессе тестирования он не обращается к ним).

Не предусмотрено в процессе разработки.

Automated Testing

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

Не предусмотрено в процессе разработки.

Unit/Component Testing

Тестируются отдельные

части (модули) системы.

Не предусмотрено в процессе разработки.

Integration Testing

Тестируется взаимодействие между отдельными модулями.

Программное обеспечение не предусматривает наличие дополнительных модулей и является целостным.