Тестирование программного обеспечения – это процесс проверки разработанного программного продукта на соответствие реального поведения программы ожидаемому. Таким образом, тестирование ПО – это контроль качества разрабатываемого продукта. Контроль качества особенно важен при разработке защищенных (особо важных) информационных систем.
Для организации процесса тестирования составляется тест-план и тест-стратегия. Тест план – это документ, описывающий объем работ по проведению тестирования, в нем отражаются общие цели и задачи тестирования. Тест-стратегия представляет собой документ, описывающий конкретные техники тестирования.
Тест-стратегия включает в себя список тестовых случаев (Test Cases). В средах Microsoft Visual Studio 2010 Ultimate и Microsoft Test Manager 2010 тестовый случай – это рабочий элемент, состоящий из совокупности шагов, условий, а также параметров, необходимых для проверки корректности работы тестируемой функции.
После проведения тестирования формируется отчетная документация (отчет по тестированию программного продукта).
2. Тест-план
Тест-план составляется менеджером проекта. Тест-план должен включать в себя ответы на следующие вопросы:
§ Что представляет собой система (сведения о продукте, его назначение)?
§ Какие части продукта будут протестированы?
§ Потенциальные риски продукта (какие слабые места могут быть у продукта).
§ В какие сроки пройдет тестирование? (Указывается, какие виды тестирования (см. описание тест-стратегии) будут проходить на той или иной стадии (итерации) разработки продукта).
§ Кто будет тестировать?
Как правило, ответственным за проведение тестирования по тестовым случаям (конфигурационное и интеграционное), Usability- и Exploratory-тестирование назначается тестировщик.
Как правило, ответственным за проведение Unit-тестирования назначается разработчик тестируемой части программы, а тестирования производительности – один из разработчиков продукта.
Как правило, ответственным за проведение приемочного тестирования назначается бизнес-аналитик.
§ Критерии окончания тестирования.
Составим тест-план для тестирования программы, разработанной в процессе выполнения лабораторной работы № 13.
Пример тест-плана для программы «Алгоритм Rijndael»:
1. Что представляет из себя система (сведения о продукте, его назначение)?
Программа «Алгоритм Rijndael» представляет собой WinForms-приложение, предназначенное для шифрования данных. Данное приложение может использоваться двумя типами пользователей – это человек, который зашифровывает данные (Шифровщик), и человек, который расшифровывает данные (Дешифровщик). Шифровщик может с помощью программы зашифровать данные. Дешифровщик может с помощью программы расшифровать уже зашифрованные с помощью алгоритма Rijndael данные.
2. Какие части продукта будут протестированы?
Программа состоит из одного модуля, выполняющего как функцию шифрования, так и функцию дешифрования. Протестирован будет данный модуль.
3. Потенциальные риски продукта (какие слабые места могут быть у продукта).
Основным риском тестируемой системы является риск некорректной зашифровки и расшифровки данных.
4. В какие сроки пройдет тестирование?
После завершения разработки программы необходимо провести конфигурационное тестирование, usability-тестирование, exploratory-тестирование и приемочное тестирование. В связи с малым масштабом и низкой сложностью системы на процесс тестирования отводится 1 час 30 минут.
5. Кто будет тестировать?
Ответственным за проведение тестирования назначается тестировщик.
6. Критерии окончания тестирования.
Тестирование считается завершенным, если были проведены и успешно завершены все предусмотренные тест-стратегией виды тестирования.