скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

скачать рефератыКурсовая работа: Разработка вспомогательной системной программы в системе программирования Delphi с использованием средств WinApi

Путь 6: 1-2-3-4-5-4-5-6-7-8-10-11-12-13-14-7-8-9-10-11-13-14-15-16-18;

№ пути Исходные данные Ожидаемые результаты Реальные результаты
1 Если не удалось считать Partition Table Должно появиться сообщение о том , что не возможно считать Partition Table

Вывод сообщения:

«Не удалось считать Partition Table»

2 Происходить считывание элемента массива , который имеет номер отличающийся от 1 и от 16. Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }» Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }»
3 Считывание элемента массива , который имеет номер 1 в строке таблицы Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }» Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }»
4 Считывание элемента, который имеет последний номер в строке (16) Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }» Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }»
5 Считывание данных из массива. При прохождении этого пути проверяется заполнение верхней строчки таблицы номерами от 0 до F. Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }» Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }»
6 Считывание данных из массива. Когда элемент имеет номер 16 в строке, а последующий элемент имеет номер 1 в след. строке. Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }» Вывод данных, например: «Начало раздела диска{Головка: 255 Сектор: 255 Цилиндр: 15 }»

Дополнительный тест

Тестирование алгоритма работы потока, который также относится к основному заданию курсового проекта.

1инициализация.

2while (not terminated) do

begin

3 WaitForSingleObject(Form1.HEvent, INFINITE);

4 ResetEvent(Form1.HEvent);

5 try

// резерв. память в потоке для этотой проекции

6PBaseAdress:=MapViewOfFile(Form1.HFileSender, FILE_MAP_READ,0,0,65536);

7 if (PBaseAdress = nil) then

begin

8 CloseHandle(Form1.HFileSender);

st:='не удалось отобразить файл на адресное пространство';

Application.MessageBox(st,'Сообщение...',MB_OK);

form1.BitBtn2.Visible:=false;

form1.Button1.Visible:=false;

9 exit;

10end;

11 nlineSize:=integer(PBaseAdress^);

SetLength(TextString,nlineSize);

CopyMemory(PChar(TextString),Pointer(Integer(PBaseAdress)+4),nlineSize);

Form1.Memo1.Text:=Form1.Memo1.Text+'---------'+#13#10;

Form1.Memo1.Text:=Form1.Memo1.Text+TextString+#13#10;

sendmessage(Form1.memo1.handle, em_linescroll, 0, Form1.memo1.lines.count-1);

UnmapViewOfFile(PBaseAdress);

finally

12end;

13end;


Рисунок 4.5 – Потоковый граф обработчика потока(данный обработчик выполняется постоянно после запуска программы и если не была нажата кнопка «отсоединится при работе программы»)


Цикломатическая сложность потокового графа:

1) V(G) = 3 регионов;

2) V(G) = 14 дуг - 13 узлов + 2 = 3;

3) V(G) = 2 предикатных узлов +1 = 3.

Путь 1:1-2-3-4-5-6-7-8-9-13;

Путь 2:1-2-3-4-5-6-7-10-11-12-13;

Путь 3:1-2-3-4-5-6-7-8-9-10-11-12-2-3-4-5-6-7-10-11-12-13;

пути

Исходные данные Ожидаемые результаты Реальные результаты
1 Не удалось отобразить файл на адресное пространство в потоке. Должно появиться сообщение : не удалось отобразить данные на адресное пространство потока

Вывод сообщения:

«Не отобразить файл на адресное пространство»

2 Ввод данных в поле сообщения и однократное нажатие на кнопку «отправить» Вывод сообщения «отправить» в поле истории переписки. Сообщение введённое в поле сообщений «отправить» появилось в поле истории переписки.
3 Ввод сообщения в поле сообщений и нажатие на кнопку «отправить» с последующим повторение этих действий Вывод сообщения «отправить» в поле истории переписки. Сообщение введённое в поле сообщений «отправить» появилось в поле истории переписки.

3.6.2 Тестирование методом черного ящика

1)  Тестирование процедуры, выполняющей запись данных в проецируемый файл

(Рисунок 4.6. ).

(Этап выполнения программы 2 «Событие 1»).

Предусловие : Текст сообщения должен быть обязательно введён.

Постусловие: Если проекция файла создана, и объект типа поток сработал нормально, то вывод текста сообщения в поле истории переписки.


Рисунок 4.6 – Дерево разбиений для события «Событие1» (первое задание)

№ листа Исходные данные Ожидаемые результаты Реальные результаты
1 Сообщение не введено Никаких действий не должно происходить, программа не должна отвечать на действия такого рода Программа никак не реагирует
2 Проекция файла не создана Вывод сообщения: «Не удалось передать данные» Вывод сообщения: «Не удалось передать данные»
3 Поток не сработал Вывод сообщения : «Не удалось создать проекцию файла» Вывод сообщения : «Не удалось создать проекцию файла»
4 В поле ввода сообщения введено : «СЛОВО» Вывод сообщения с содержимым «СЛОВО» в поле истории переписки

В поле истории появится сообщение с текстом :

«<имя введённое при авторизации> написал :

СЛОВО»

Страницы: 1, 2, 3, 4, 5, 6, 7


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

© 2010.