Тестирование вариантов использования

advertisement
УДК 004.4(06) Технологии разработки программных систем
А.В. БАТАЕВ, С.В. СИНИЦЫН
Московский инженерно-физический институт (государственный университет)
ТЕСТИРОВАНИЕ ВАРИАНТОВ ИСПОЛЬЗОВАНИЯ
В данной работе рассматривается подход к разработке тестов на основе
вариантов использования в системах.
В настоящее время тестирование является обязательной частью
процесса разработки программного обеспечения. В особенности это
касается авиационного программного обеспечения [1]. Причем в данной
области используется тестирование на основе требований. Но очень часто
эти требования не позволяют провести адекватное тестирование
проблемной области, так как при их написании не учитывалось внешнее
поведение программы по отношению к пользователю. Применение
вариантов использования в качестве метода описания требований к
программному обеспечению позволяет снять эти проблемы.
Описание требований к системе в терминах вариантов использования
представляет собой описание взаимодействия между пользователем и
системой. Это, в частности, позволяет проводить тестирование ПО как
«черного ящика», так как все внешние действия уже содержатся в данном
варианте использования. Каждый отдельный вариант использования
представляет собой один из возможных сценариев поведения
программной системы. Полный набор вариантов использования
описывает все возможности пользователя по управлению системой.
Обычно, требования бывают двух видов. Первый - «реальные»
требования, которые описывают достижение той или иной цели и
являются, собственно, требованиями к системе. Второй - «абстрактные»
требования, цель которых состоит в том, чтобы дать какие-то пояснения к
«реальным» требованиям, но сами требованиями не являются.
Отдельный вариант использования состоит из следующих элементов:
 Название
 Описание
 Действующие лица / Роли
 Предусловия
 Основной сценарий
 Альтернативные сценарии
 Исключительные сценарии
 Постусловие
 Замечания
ISBN 5-7262-0555-3. НАУЧНАЯ СЕССИЯ МИФИ-2005. Том 2
55
УДК 004.4(06) Технологии разработки программных систем
При разработке тестов на основе технологии Use Case используется
метод анализа путей. Данный метод специально разработан для
трансляции требований в тестовые случаи. Основная идея данного метода
состоит в том, что каждый вариант использования описывает несколько
различных сценариев поведения, и каждый отдельный сценарий является
потенциальным тестовым случаем, так как каждый сценарий определяет
набор ответных реакций системы в ответ на заданные внешние
воздействия.
При тестировании программных систем на основе требований
используется технология тестирования «черного ящика». Но для того,
чтобы успешно проводить тестирование на основе данной методики,
тестировщику необходимо иметь полную информацию обо всех внешних
интерфейсах тестируемого модуля. Для этих целей в [2] предлагается
расширить модель Use Case и ввести несколько дополнительных секций,
которые содержат следующую информацию:
а) полный набор всех входных и выходных переменных;
б) спецификация области определения каждой переменной;
в) операционные связи для каждого требования, которые определяют
набор входных и выходных переменных, существенных с точки зрения
заданного варианта использования или сценария.
Подобное расширение позволит, в основном, разрешить те
неопределенности, которые существуют при тестировании с
использованием технологии “черного ящика”. Но поддержка подобного
рода расширений потребует значительных усилий при каждой
переработке кода.
Данная проблема может быть решена, если существует инструмент,
который, получая на вход код тестируемой системы, генерирует полный
список всех входных и выходных переменных, области их определения, а
также позволяет устанавливать и поддерживать операционные связи для
каждого отдельного варианта использования. Подобная система позволит
тестировщику быстро определять набор существенных входов и выходов
(с точки зрения конкретного теста) при создании новых тестов, а также
быстро модифицировать уже существующие тесты.
Список литературы
1. RTCA/DO-178B, Software Considerations in Airborne Systems and Equipment
Certification, 1992.
2. Robert V. Binder. Testing Object-Oriented Systems: Models, Patterns and Tools. AddisonWesley, 1999.
ISBN 5-7262-0555-3. НАУЧНАЯ СЕССИЯ МИФИ-2005. Том 2
56
Related documents
Download