Процесс тестирования, Разработка тест-кейсов - Тестирование программного обеспечения
Тестирование представляет собой процесс проверки того, насколько программное обеспечение соответствует требованиям, заявленным заказчиком. Он осуществляется в специальных, искусственно создаваемых ситуациях посредством наблюдения за работой программного обеспечения. Такого рода искусственно построенные ситуации называют тестовыми или просто тестами.
Разработка тестов происходит на основе проверяемых требований и критерия полноты тестирования. Разработанные тесты формируются в тест-кейс (набор тестов) и выполняются на ПО, которое нужно протестировать. После прогона всех тестов анализируется результат, в результате чего можно выявить ошибки в программе.
Процесс тестирования схематично показан на рисунке 2.
Рисунок 2. Процесс тестирования.
Разработка тест-кейсов
Тест-кейс (тестовый случай) - это минимальный элемент тестирования (одна проверка), содержащий в себе описание конкретных действий, условий и параметров, которые направленны на проверку какой-либо функциональности. Набор тест-кейсов называется тестовым набором (test suite).
Тест-кейсы позволяют тестировщикам провести проверку продукта без полного ознакомления с документацией. При условии, что созданный тест-кейс удобен в поддержке, то, написанный один раз, он позволит сэкономить большое количество времени и усилий тестировщиков. Подробные тест-кейсы также способны существенно снизить вариативность выполнения тестов различными тестировщиками, что повышает качество тестирования.
Атрибуты тест-кейса.
Тест-кейс должен включать в себя:
- - Уникальный идентификатор тест-кейса. Этот идентификатор необходим для удобства организации и навигации по тестовым наборам. - Название. В названии должна отражаться основная идея тест-кейса, цель данной проверки. - Предусловия. Список шагов, не имеющих прямого отношения к проверяемому функционалу, которые необходимо выполнить до начала теста. Например, для тест-кейса "Заказ товара" предусловием может быть шаг "авторизоваться на сайте", если на данном сайте заказать товар может только авторизованный пользователь. - Шаги. Описание последовательности действий, которая должна привести к ожидаемому результату. - Ожидаемый результат. Поведение системы, предусмотренное требованиями. Один тест-кейс проверяет одну конкретную функцию, поэтому ожидаемый результат может быть только один. - Статус кейса. Проставляется в соответствии с тем, соответствует ли фактический результат ожидаемому. Тест-кейс может иметь один из трех статусов:
- - Положительный, если фактический результат совпадает с ожидаемым результатом. - Отрицательный, если фактический результат не совпадает с ожидаемым результатом. Если статус кейса отрицательный-найдена ошибка. - Выполнение теста блокировано, если после одного из шагов продолжение теста невозможно. В этом случае так же, найдена ошибка.
Требования к тест-кейсу
- - Для измерения покрытия требований, требования к продукту должны быть проанализированы и впоследствии разбиты на пункты. Если тест-кейсы покрывают все требования, то может быть дан положительный или отрицательный ответ о реализации данного требования в продукте. - Тест является хорошим в случае, когда он может обеспечить высокую вероятность обнаружения ошибки. Показать, что в программе полностью отсутствуют ошибки невозможно, поэтому процесс тестирования должен быть направлен на выявление прежде не найденных ошибок. - Четкие, однозначные формулировки шагов. Описание шагов для прохождения тест-кейса должно содержать всю необходимую информацию, но при этом тест-кейс не должен быть слишком детализирован. Например, если тест-кейс содержит такие шаги, как авторизация, в описании необходимо указывать логин и пароль, но не нужно указывать в каком углу экрана находится окно авторизации. - Отсутствие зависимостей тест-кейсов. Если тесты связанны между собой, становится проблематичным изменение, дополнение или удаление конкретного тест-кейса, появляется необходимость изменять связанные с ним тесты. Более того, взаимосвязанные тесты обладают конкретный сценарием от перехода одного теста к другому. Это приведет к тому что не все сценарии перехода от одного теста к другому будут протестированы и появляется вероятность пропустить баг. - Ожидаемый результат необходимо прогнозировать заранее и прописывать его в тест-кейсе. Если ожидаемый результат не определить заранее, может возникнуть ситуация, когда тестировщик видит то, что он хочет увидеть. При заранее определенном результате тестировщику необходимо только сравнить ожидаемый результат с фактическим. - Необходимо уделять внимание не только тестам, которые проверяют правильные данные, но и тем тестам, которые проверяют работу программы при неправильных, непредусмотренных данных. Большое количество ошибок связано именно с теми действиями пользователя, которые не предусмотрены программой. - Также необходимо проверять, не делает ли программа то, чего не должна. Нужно производить проверку на нежелательные побочные эффекты.
В таблице 1 приведен пример тест-кейса, отвечающего вышеописанным требованиям.
Таблица 1. Пример тест-кейса.
Тест PGU-1: ВСВ. Избранные услуги | |||
Описание теста: цель, сценарий и исходное состояние программы: Проверка работы функциональности "Избранные услуги" | |||
#: |
Шаги: |
Ожидаемая реакция: |
Execution Status: |
1 |
Авторизоваться на портале. |
Авторизация прошла успешно. |
Пройден |
2 |
Перейти в версию для слабовидящих, кликнув на соответствующую иконку в левом верхнем углу. |
Открылась главная страница портала в версии для слабовидящих. |
Пройден |
3 |
Перейти в каталог услуг, открыть любую карточку услуги. |
Карточка услуги открыта успешно. |
Пройден |
4 |
Нажимаем "Добавить услугу" внизу страницы. |
Попап "Услуга успешно добавлена в избранные. Вы можете перейти к ней из Личного кабинета". |
Пройден |
5 |
Повторяем шаги 3-4 несколько раз. |
Шаги выполнены успешно, результаты соответствуют ожидаемым. |
Пройден |
6 |
Переходим в Личный кабинет. |
По умолчанию открывается раздел "Мои услуги". Отображается пронумерованный список добавленных услуг в порядке их добавления. |
Пройден |
7 |
Проверяем переход на карточку услуги из списка избранных услуг. |
Переход происходи корректно. |
Пройден |
8 |
Переходим обратно в ЛК. Отмечаем галочкой любую услугу. |
Появилась кнопка "Удалить" внизу страницы. |
Пройден |
9 |
Нажимаем кнопку "Удалить" |
Попап "Услуга успешно удалена из избранных.". Услуга пропала из списка избранных услуг. |
Пройден |
10 |
Поочередно удаляем остальные услуги. |
Удаление прошло корректно. |
Пройден |
Execution type: |
Вручную | ||
Estimated exec. duration (min): |
10.00 | ||
Приоритет: |
Medium | ||
Execution Details | |||
Версия (сборка) |
3.0.111 /2.10.31 | ||
Тестировщик |
\n Этот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script | ||
Execution Result: |
Пройден | ||
Execution Mode: |
Вручную |
Данный тест-кейс содержит следующие обязательные атрибуты:
- - Уникальный идентификатор тест-кейса: PGU-1 - Название: ВСВ. Избранные услуги - Предусловия: в данном тест-кейсе предусловием является авторизация на портале. Непосредственно к тесту авторизация не относится (авторизацию на портале проверяет отдельный тест-кейс), но без авторизации данная проверка невозможна. - Шаги. - Ожидаемый результат. - Статус кейса. - История редактирования: в тест-кейсе указана информация о том, кто проходил тест, в какое время и в рамках какой сборки.
Данный тест-кейс отвечает требованиям, изложенным выше. Шаги сформулированы однозначно, содержат необходимую, но не лишнюю информацию, ожидаемый результат четкий и однозначный.
Похожие статьи
-
Данная глава посвящена решению таких задач, как выявление теоретических основ тестирования, классификация и описание видов тестирования, анализ и...
-
Классификация видов тестирования - Тестирование программного обеспечения
При тестировании программного продукта применяется огромное количество различных видов тестов. Наиболее широкую и подробную классификацию предложил автор...
-
Общие сведения о тестировании Данный раздел посвящен проведению тестирования клиентского приложения. Тестирование для серверной части системы не...
-
Преимущества, которые дает тестировщику автоматизация тестирования: - Исключен "человеческий фактор". Существует некоторая гарантия того, что не один...
-
Автоматизированное тестирование программного обеспечения - это процесс проверки программного обеспечения, который включает в себя такие шаги как запуск,...
-
При работе над проектом разрабатывались два основных компонента системы: база данных (далее - БД) и интерфейс клиентского приложения. Затем необходимо...
-
Для того, чтобы вынести решение об оправданности или неоправданности внедрения автоматизированного тестирования вместо ручного, необходимо...
-
В то время как цель проекта заключалась в оценке эффективности автоматизации тестирования функционала ядра, работа стала своего рода подведением итогов...
-
В течении года от команды разработчиков пришло 6 пакетов, содержащих изменения в ядре программы. Для каждого пакета составлялось в среднем от 1-ого до...
-
Компания MERA Networks - является одним из крупнейших мировых поставщиков услуг в сфере информационно-коммуникационных технологий. MERA предлагает...
-
Для того чтобы выполнить автоматическое тестирование с использованием Cucumber, прежде всего необходимо иметь представление о структуре инструмента и...
-
Тестируемый программный продукт является высокопроизводительным приложением, которое предоставляет возможность создания и настройки сетей беспроводного...
-
Выбор средств реализации информационной системы Названные в параграфе 1.4. настоящей работы задачи могут быть решены тремя типами средств автоматизации:...
-
Важнейшим вопросом при создании САПР после формализации процесса проектирования является вопрос отображения проектно-конструкторской деятельности...
-
На данный момент существует множество аналогов данного приложения, можно выделить такие как стандартный проводник Windows и Total Commander. Заказчику...
-
Методологии тестирования - Тестирование программного обеспечения
Существуют различные методологии динамического тестирования ПО. В зависимости от наличия у тестировщика доступа к исходному коду программы, выделяют...
-
Тестирование - Разработка и сопровождение программного обеспечения
Тестирование - ряд мероприятий, связанных с различного рода испытаниями объекта тестирования с целью установления соответствия или несоответствия его...
-
Тестирование программного продукта - Разработка информационно-справочной системы "Аптека"
В настоящее время для установления соответствия программного продукта заданным правилам построения, техническим условиям и заданиям на них, для...
-
Структура системы В ходе разработки выпускной квалификационной работы использовались базы данных, созданные в среде MySQL Workbench, и создано клиентское...
-
В работе использовались следующее программное обеспечение для решения поставленных задач: AutoCAD, ANSYS Workbench, ANSYS Icepak. Система AutoCAD...
-
Вирусы и антивирусное программное обеспечение
Реферативная часть Что такое вирус? Один из известных "докторов" Д. Н Лозинский дал определение вируса на примере клерка. Представим себе аккуратного...
-
Оптимизатор - Разработка программного средства, позволяющего оптимизировать SQL-скрипты
Задача оптимизатора в рамках данной дипломной работы - исправлять части SQL-кода, которые могут приводить к дополнительным тратам памяти и ресурсов. На...
-
Базы данных (БД) составляют в настоящее время основу компьютерного обеспечения информационных процессов, входящих практически во все сферы человеческой...
-
При перезагрузке Raspbery счетчик counter сбрасывается и файлы начинают перезаписываться. Для того, чтобы обойти данную проблему воспользуемся переносом...
-
После выполнения задачи по Подбору и анализу литературы, настало время поиска и сравнительного анализа уже существующих решений задачи контроля...
-
Работа программы представлена на рисунке 2.3 Рис. 2.3 Кодирование и тестирование программы Программа кодировалась на языке Си++, используя библотеку Qt5x...
-
Файл - это набор любых данных одного типа, который хранится на диске отдельно от прочих. Например, музыкальный файл, файл изображения или текстовый файл,...
-
Общее описание программного обеспечения, реализующего разработанный алгоритм Основной идеей дипломного проекта, является реализация алгоритма...
-
Модуль функционирует на персональном компьютере под управлением операционной системы версии Microsoft Windows 7 и выше с поддержкой всех соглашений,...
-
Цель Работы - использовать принципы архитектуры "Документ-Представление" для выборки и сохранения данных в файлах, а также взаимодействия элементов меню,...
-
Цель Работы - изучить приемы создания и использования шаблонов классов. - Теоретические сведения Достаточно часто встречаются классы, объекты которых...
-
Введение - Технология разработки программного обеспечения систем управления
С++ является языком объектно-ориентированного программирования (ООП). Объект - абстрактная сущность, наделенная характеристиками объектов реального мира....
-
Анализ современных систем безопасности. Правовые аспекты применения видеонаблюдения Установка системы видеонаблюдения и ее использование являются весьма...
-
Предлагаемая библиотека хранит все данные в отдельных таблицах, таким образом он не обязан использовать ту же СУБД, что и основное приложение. В качестве...
-
Особенностью архитектуры REST является отсутствия хранения состояния на сервере. Для того, чтобы не передавать пользовательские логин и пароль каждый...
-
Разработка клиент-серверной части проекта, то есть связь между клиентским приложением и базой данных, реализуется при помощи специальной библиотеки MySQL...
-
Тестирование и отладка программы - Разработка электронного учебного пособия "VBA. Решение задач"
Процесс отладки является неотъемлемой частью создания любой программы. При программировании могут быть допущены ошибки, которые принадлежат к одному из...
-
Если в результате поиска на схеме по данным из таблицы будет найдено несколько экземпляров оборудования (т. е. с одинаковой маркировкой или...
-
Ручное регрессионное тестирование проверки соответствия - Автоматизация регрессионного тестирования
В начальной версии 2.0 тестируемого программного продукта не производилось регрессионное тестирование проверки соответствия, т. к. не было необходимых...
-
Встроенный оптимизатор запросов в Teradata может значительно ускорить запрос по сравнению тем, как если бы команды выполнялись ровно так, как подает...
Процесс тестирования, Разработка тест-кейсов - Тестирование программного обеспечения