
- •Введение
- •Системное проектирование
- •1.1. Описание предметной области
- •1.2. Структура программы
- •1.3. Выбор и обоснование среды разработки
- •2.4. Алгоритмы шифрования
- •3. Разработка программных модулей
- •3.1. Открытие и загрузка изображения
- •3.2. Проверка длины текста
- •3.3. Шифрация сообщения
- •3.4. Сохранение картинки
- •3.5. Дешифрация текста
- •3.6. Сохранение ключа шифрования
- •4. Программа и методика испытаний
- •4.1. Этапы отладки
- •4.2. Типы ошибок
- •4.3. Функциональное тестирование
- •4.4. Полное тестирование
- •5. Руководство пользователя
- •5.1. Назначение
- •5.2. Требования к программному и аппаратному обеспечению компьютера
- •5.3. Работа с формами
- •Заключение
- •Литература
4. Программа и методика испытаний
4.1. Этапы отладки
Отладка программы является достаточно сложным процессом обнаружения и исправления ошибок, который обычно требует последовательного выполнения четырех этапов:
выявление ошибки;
локализация ошибки в тексте программы;
установление причины ошибки;
исправление ошибки.
В конкретных ситуациях перечисленные этапы могут пересекаться, некоторых из них может и не быть, однако в общем случае дело обстоит именно так.
4.2. Типы ошибок
Тестирование программы включает в себя проверку её работы в различных условиях с целью определить корректность её работы.
Так как разрабатываемый программный продукт предназначен главным образом для шифрования текста и записи шифрованного текста в картинку, то особое внимание было уделено проверки шифрации текста и записи его в картинку, а так же дешифрация текста.
Найденные ошибки устранялись, и тестирование продолжалось до тех пор, пока работа приложения не была признана удовлетворительной.
Разработка любой программы предполагает наличие в исходном тексте ошибок и борьбу с ними. Все практически неисчислимое множество возможных ошибок обычно подразделяют на две группы:
синтаксические ошибки;
смысловые (логические) ошибки.
Синтаксические ошибки – это самые простые ошибки, которые легко устраняются уже на этапе компиляции. Причина их одна неправильная запись служебных слов, операторов.
Смысловые (логические) ошибки – самые сложные и трудноуловимые. Они проявляются в том, что программа ведет себя не так, как предполагалось. Последствия смысловых ошибок могут быть самыми разными: неправильное содержимое окна, невыполнение или неверное выполнение команд пользователя, неправильное содержимое таблиц и многое другое. На борьбу со смысловыми ошибками уходит почти все время отладки.
4.3. Функциональное тестирование
Тестирование программы включает в себя проверку её работы в различной среде и разных условиях с целью выявления ошибок и корректность её работы. Тест – это последовательность входных данных и соответствующая им набор эталонных результатов, которые должны быть получены при верном функционировании программы.
Данное приложение предназначено для шифрования и дешифрования текста с записью и чтением текста из картинки, и поэтому при тестировании особое внимание уделялось шифрованию текста, открытию и сохранению картинки, записи в картинку текста, создании ключа, и дешифрации текста.
При проведении тестирования были открыты все формы приложения. На каждой форме были испытаны все события, которые были задуманы при разработке приложения.
4.4. Полное тестирование
Основная цель тестирования – выявление всех отклонений результатов функционирования реальной программы от заданных эталонных значений. Задача состоит в обнаружении максимального числа ошибок, в качестве которых принимается любое отклонение от эталонов. После локализации и устранения, обнаруженных ошибок применяется контрольное тестирование, задача которого состоит в подтверждении правильности выполнения корректировки программы.
Поэтому был смоделирован ряд ситуаций, которые опытный пользователь вряд ли допустит, но возможность возникновения, которых допускается.
Отладка программы осуществлялась встроенными средствами С++ Builder 2009. С помощью встроенного компилятора были обнаружены синтаксические ошибки такие, как отсутствующие и лишние знаки препинания, неправильные имена переменных, которые тут же исправлялись с помощью встроенного редактора текста программы.
Цель проведения испытаний состояла в том, чтобы рассмотреть все возможные варианты работы программы, протестировать ее в нормальных, исключительных и экстремальных условиях, выявить недостатки и устранить их, если таковые имели место.
В результате испытаний на контрольных примерах было доказано, что данная программа работает согласно заданного алгоритма.
Также с программной точки зрения была предусмотрена и исключена вероятность возникновения всевозможных ошибок при работе пользователя с данным программным средством.
После создания исполняемого файла над готовым приложением был проведен ряд испытаний. Цель их проведения состояла в том, чтобы рассмотреть все возможные варианты работы программы, протестировать ее в нормальных, исключительных и экстремальных условиях, выявить недостатки и устранить их, если таковые имели место.
Имели место следующие тесты:
Открытие картинки:
запущен исполняемый файл программы;
открыта картинка;
завершена работа программы;
проверена картинка на жестком носителе.
Вывод: картинка осталась там, где и была.
Аналогичные тесты были проведены для остальных форм, через которые происходит шифрование текста и генерация ключа шифрования.
Шифрование текста и запись его в картинку, когда она не открыта:
был введен текст и нажата кнопка «шифровать»;
программа выдала сообщение об ошибке.
Вывод: программа отслеживает загрузку картинки и сообщает пользователю об ее отсутствии.
Шифрование текста при его отсутствии:
была загружена картинка и нажата кнопка «шифровать»;
программа выдала сообщение об ошибке.
Вывод: программа отслеживает наличие введенного текста и сообщает пользователю о его отсутствии.
Дешифровка текста неправильным ключом:
загружена картинка с зашифрованным текстом;
выбран не правильный ключ шифрования;
текст был не расшифрован.
Вывод: программа не может расшифровать текст не правильным ключом.
Таким образом, при тестировании были обнаружены некоторые ошибки, которые в последствие были устранены. Представленное приложение успешно справляется со своей задачей, не требуя при этом большого количества ресурсов системы и не нарушая работы операционной системы.
Цель проведения испытаний состояла в том, чтобы рассмотреть все возможные варианты работы программы, протестировать ее в нормальных, исключительных и экстремальных условиях, выявить недостатки и устранить их, если таковые имели место.
Тестирование программы в экстремальных условиях проводилась на протяжении всего времени разработки, и после окончания работы над программой. В процессе тестирования готового программного средства явных ошибок обнаружено не было. Все ошибки и недочеты были исправлены в процессе разработки программы.
Также с программной точки зрения была предусмотрена и исключена вероятность возникновения всевозможных ошибок при работе пользователя с данным программным средством.