Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Реализация консольных команд ОС Windows

 

Целью работы является разработка программы на языке C++, представляющей собой альтернативную реализацию одной из консольных команд операционной системы Windows. Программа должна иметь консольный интерфейс и полностью имитировать заданную консольную команду по выполняемым действиям, принимаемым консольным параметрам (аргументам) и выдаваемым информационным сообщениям.

Вариантом задания является номер N студента в журнале группы. По значению N вычисляется значение M = N mod 10, в соответствии с которым из таблицы выбирается консольная команда.

 

M Команда
  ATTRIB
  CD
  DATE
  TIME
  MD
  RD
  CLS
  TYPE
  REN
  VER

 

Отчет по лабораторной работе должен содержать:

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. Выводы о том, какие ошибки были (или не были) обнаружены в ходе тестирования программы методом «белого ящика».

К отчету по данной лабораторной работе должен быть приложен подписанный преподавателем отчет по первой лабораторной работе.

 

<== предыдущая лекция | следующая лекция ==>
Схема установки | Тема: исследование затухающих колебаний с помощью самописца




© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.