Идентификация объектов тестирования

План тестирования системы

Версия 1.1

1 Введение
1.1 Цель

Цель документа “План тестирования системы” - координация усилий участников проекта в части контроля качества.

Документ предназначен руководству проекта, проектному офису и руководству департамента для согласования планов и оценки затрат.

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

1.2 Нотации, аббревиатуры и определения принятые в документе

Дефект - поведение программы, затрудняющее или делающее невозможным достижение целей пользователя или удовлетворение интересов участников. Подразумевает возможность исправления. При невозможности исправления переходит в разряд “ограничения технологии”. “Интересы участников” - следует понимать в значении А. Коберна.

Тестирование - процессная деятельность, состоящая в поиске дефектов путем прогона программы и/или ее части. Другой вариант: это все виды деятельности, направленные на поиск значимых расхождений с заранее заданными метриками качества, связанными с исполняемым кодом, с целью дальнейшего исправления”.

Метрика программного обеспечения (англ. software metric) - это мера, позволяющая получить численное значение некоторого свойства программного обеспечения или его спецификаций.

Тестирование методом свободного поиска (exploratory testing) - также называется тестированием на основе сеансов. Не предполагает жестко заданных, формализованных сценариев тестирования. Часто, проводится в парах.

1.4 Комплексные показатели качества по ГОСТ Р ИСО/МЭК 9126-93
А.2.1 Функциональные возможности (Functionality)
А.2.1.1 Пригодность (Suitability)
Атрибут программного обеспечения, относящийся к наличию и соответствию набора функций конкретным задачам.
Примечание - Примерами соответствия является состав функций, ориентированных на задачу, из входящих в него подфункций и объемы таблиц.

А.2.1.2 Правильность (Accuracy)
Атрибуты программного обеспечения, относящиеся к обеспечению правильности или соответствия результатов или эффектов.
Примечание - Например, она включает необходимую степень точности вычисленных значений.

А.2.1.3 Способность к взаимодействию (Interoperability)
Атрибуты программного обеспечения, относящиеся к способности его взаимодействовать с конкретными системами.
Примечание - Способность к взаимодействию используется вместо совместимости для того, чтобы избежать возможной путаницы с взаимозаменяемостью (см. А.2.6.4).

А.2.1.4 Согласованность (Compliance)
А.2.1.5 Защищенность (Security)
Атрибуты программного обеспечения, относящиеся к его способности предотвращать несанкционированный доступ, случайный или преднамеренный, к программам и данным.

А.2.2 Надежность (Reliability)
А.2.2.1 Стабильность (Maturity)
Атрибуты программного обеспечения, относящиеся к частоте отказов при ошибках в программном обеспечении.

А.2.2.2 Устойчивость к ошибке (Fault tolerance)
Атрибуты программного обеспечения, относящиеся к его способности поддерживать определенный уровень качества функционирования в случаях программных ошибок или нарушения определенного интерфейса.
Примечание - Определенный уровень качества функционирования включает возможность отказобезопасности.

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

А.2.3 Практичность (Usability)

А.2.3.1 Понятность (Understandability)
Атрибуты программного обеспечения, относящиеся к усилиям пользователя по пониманию общей логической концепции и ее применимости.

А.2.3.2 Обучаемость (Learnability)
Атрибуты программного обеспечения, относящиеся к усилиям пользователя по обучению его применению (например оперативному управлению, вводу, выводу).

А.2.3.3 Простота использования (Operability)
Атрибуты программного обеспечения, относящиеся к усилиям пользователя но эксплуатации и оперативному управлению.

А.2.4 Эффективность (Efficiency)

А.2.4.1 Характер изменения во времени (Time behavior)
Атрибуты программного обеспечения, относящиеся к временам отклика и обработки и к скоростям выполнения его функций.

А.2.4.2 Характер изменения ресурсов (Resource behavior)
Атрибуты программного обеспечения, относящиеся к объему используемых ресурсов и продолжительности такого использования при выполнении функции.

А.2.5 Сопровождаемость (Maintainability)

А.2.5.1 Анализируемость (Analysability)
Атрибуты программного обеспечения, относящиеся к усилиям, необходимым для диагностики недостатков или случаев отказов или определения составных частей для модернизации.

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

А.2.5.3 Устойчивость (Stability)
Атрибуты программного обеспечения, относящиеся к риску от непредвиденных эффектов модификации.

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

А.2.6 Мобильность (Portability)

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

А.2.6.2 Простота внедрения (Installability)
Атрибуты программного обеспечения, относящиеся к усилиям, необходимым для внедрения программного обеспечения в конкретное окружение.

А.2.6.3 Соответствие (Conformance)
Атрибуты программного обеспечения, которые заставляют программу подчиняться стандартам или соглашениям, относящимся к мобильности.

А.2.6.4 Взаимозаменяемость (Replaceabilily)
Атрибуты программного обеспечения, относящиеся к простоте и трудоемкости его применения вместо другого конкретного программного средства в среде этого средства.

Идентификация объектов тестирования

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

· Приложения в целом, развернутое в промышленной среде

· Отдельные компоненты программы на тестовом стенде (4 компьютера)

· База данных приложения

· Пользовательские данные

 

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

Текущий подход к контролю качества подразумевает следующие вехи проекта:

· Подсистема готова к демонстрации заказчику

· Подсистема готова к промышленной эксплуатации

Приоритеты комплексных показателей качества в классификации ГОСТ 9126 в зависимости от вех проекта, приведены в таблице ниже:

Группа Подгруппа Приоритет для прототипа Приоритет для эксплуатации Метод проверки
Функциональные возможности Пригодность Критично Критично Т
Правильность Важно Критично Т
Согласованность Не важно Критично Т
Безопасность Не важно Критично Т
Надежность Стабильность Не важно Важно Т, АТ
Устойчивость к ошибке Не важно Важно Т
Восстанавливаемость Не важно Важно Т
Практичность Понятность Не важно Важно Т
Эффективность Характер изменения ресурсов Не важно Важно Т пр.
Характер изменения во времени Не важно Важно Т пр
Сопровождаемость Изменяемость Не важно Важно Т
Устойчивость Не важно Критично Т
Мобильность Адаптируемость Не важно Важно Т
Соответствие Не важно Не важно Т

Т – тестирование, АТ – автоматизированные тесты, Т пр – тестирование произваодительности.

Для проверки готовности прототипа служат приемо-сдаточные испытания. Критерий готовности - акт сдачи прототипа подписанный приемо-сдаточной комиссией. Приемо-сдаточные испытания описываются в отдельном документе.

4 Виды проводимых тестов
4.1 Функциональное тестирование

Используется для контроля качества “Функциональных возможностей” в части “Пригодности”, “Правильности”.

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

При подготовке прототипа рекомендуется использовать тестирование методом свободного поиска (exploratory testing).

При подготовке системы (подсистемы) к промышленной эксплуатации рекомендуется использовать стандартное промышленное тестирование.

Тестирование бизнес цикла

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

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

4.3 Конфигурационное тестирование
Используется для контроля качества “Мобильности” в части “Адаптируемости”
Должна быть проверена работоспособность приложения для:

Различных видов ОС:

· WinXP – обязательно(SP2 и старше)

· Win7 – желательно

· Для сервера Windows Server 2008R2 – обязательно.

Различных БД:

· MSSQL 2008 (R2)

· MSSQL 2012

Различных разрешениях монитора рабочего места

· 1280х1024 - обязательно

· 1600х900 - обязательно

· 1024х768 - желательно

· 1680х1050 - желательно

Рекомендованный метод - объединение с функциональным тестированием. В этом случае на каждом рабочем месте тестировщика рекомендуется установка своей конфигурации.