![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Реализация консольных команд ОС Windows
Целью работы является разработка программы на языке C++, представляющей собой альтернативную реализацию одной из консольных команд операционной системы Windows. Программа должна иметь консольный интерфейс и полностью имитировать заданную консольную команду по выполняемым действиям, принимаемым консольным параметрам (аргументам) и выдаваемым информационным сообщениям. Вариантом задания является номер N студента в журнале группы. По значению N вычисляется значение M = N mod 10, в соответствии с которым из таблицы выбирается консольная команда.
Отчет по лабораторной работе должен содержать: 1. Титульный лист. 2. Вариант задания (значения N, M и выбранная консольная команда). 3. Листинг программы с достаточным количеством комментариев. 4. Экранные формы, демонстрирующие совпадение информационных сообщений разработанной программы и оригинальной консольной команды (два-три примера).
Лабораторная работа №2
Тестирование программы методом «черного ящика»
В качестве объекта тестирования выступает программа, разработанная в ходе выполнения лабораторной работы №1. Исходными данными при этом является исполнительный (.exe) файл программы. Задание: разработать на любом удобном языке программирования программу, реализующую следующие функции: 1. Формирование множества тестовых наборов аргументов командной строки, распознаваемых тестируемой программой. Множество тестовых наборов не обязательно должно быть полным (в большинстве случаев формирование полного множества невозможно из-за его бесконечной мощности). Во множество должны входить наборы аргументов, инициирующие различные функции тестируемой программы. Количество тестовых наборов зависит от консольной команды, реализуемой тестируемой программой, и может колебаться от 1 до 20-30. 2. Перебор тестовых наборов аргументов в некотором порядке. 3. Для каждого из тестовых наборов аргументов запуск тестируемой и эталонной программ с сохранением результатов консольного вывода каждой из программ в два текстовых файла. 4. Анализ содержимого текстовых файлов с результатами на идентичность. 5. В случае несовпадения результатов индикация ошибочной ситуации с указанием тестового набора аргументов и факта несовпадения. Отчет по лабораторной работе должен содержать следующие элементы: – титульный лист; – задание (может быть взято из этого файла, с уточнениями для конкретного варианта задания; – листинг программы; – результаты работы программы; – выводы о функциональных возможностях разработанной программы и результатах тестирования.
Лабораторная работа №3
Тестирование программы методом «белого ящика»
В качестве тестируемой программы выступает программа, разработанная в ходе выполнения лабораторной работы №1. Исходными данными при этом является листинг программы. Задание: добавить в текст программы, разработанной в лабораторной работе №1, программный код (т.н. тестовое окружение), выполняющий поочередное тестирование каждой отдельной функции программы (кроме функции main). Для каждой из функций тестируемой программы может проверяться реакция на следующие ситуации: – передача в функцию неинициализированных переменных; – граничные значения передаваемых данных; – проверка передаваемых данных на робастность; – передача «пустых» данных (например, строк нулевой длины); – повторная передача одинаковых данных; – реинициализация системы; – устойчивость функции (последовательный многократный запуск в цикле); – нештатные ситуации (нехватка дискового пространства, невозможность создать файл и т.п.); – аварийные ситуации (выключение питания компьютера, зависание программы). Безусловно, в общем случае для каждой из функций целесообразно проверять лишь некоторые из перечисленных ситуаций. Для анализа того, что в какой функции следует тестировать и какой должен быть результат, необходимо составить (в текстовом виде, в произвольной форме) план тестирования. План тестирования должен: – перечислять все функции программы; – для каждой функции перечислять тестируемые ситуации; – для каждой тестируемой ситуации содержать хотя бы один тестовый пример, отражающий исходные данные и ожидаемый результат. Таким образом, разработанное тестовое окружение должно осуществлять тестирование всех функций программы (это может быть и единственная функция, но такой вариант лишь усложнит процесс тестирования) и выводить итоговую информацию о прохождении функцией каждого теста. Вывод результатов работы текстового окружения удобно организовать в отдельный текстовый файл, который отождествляется с результатами выполнения данной лабораторной работы. Отчет по лабораторной работе должен включать: 1. Титульный лист. 2. План тестирования. 3. Фрагмент листинга программы, содержащий программный код, относящийся к тестовому окружению. 4. Прокомментированные результаты работы программы (либо снимки экрана, либо распечатка текстового файла с результатами работы. 5. Выводы о том, какие ошибки были (или не были) обнаружены в ходе тестирования программы методом «белого ящика». К отчету по данной лабораторной работе должен быть приложен подписанный преподавателем отчет по первой лабораторной работе.
|