Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
практика за 1 курс / практика за 1 курс / Полина отчет / Министерство общего и профессионального образования РФ Челябинский Государственный Университет Троицкий Филиал.doc
Скачиваний:
44
Добавлен:
23.03.2015
Размер:
98.82 Кб
Скачать

3.2.3 Синтаксический блок

Синтаксический блок работает на основе лексического блока, только к некоторым ошибкам лексического блока добавляются нахождение ошибок синтаксического характера. Результат же после выполнения этого блока может быть либо - Правильно, либо Ошибка.

4.1 Автономное тестирование

Автономное тестирование проводилось во время разработки модулей программы и включало в себя проверку возможных ошибок в программе.

Тестирование модуля выполнялось непосредственно после кодирования данного модуля.

Тестирование и последующая отладка модуля продолжались до тех пор, пока тестирование не привело к совпадению всех ожидаемых результатов.

Пример протокола тестирования модулей приведен в таблице 2.

Модуль

Входные данные

Ожидаемый результат

Действительный результат

Блок Транслитерации

While Z>A do Z:=A[$A0+1];

(w, буква)

(h, буква)

(i, буква)

(l,буква)

(e, буква)

(, пробел)

(Z, буква)

(<, знак)

(M, буква)

(, пробел)

(d, буква)

(o, буква)

(, пробел)

(Z,буква)

(:, двоеточие)

(=, равно)

([, скобка)

($, знак доллара)

(A, буква)

(0,цифра)

(+, знак)

(1, цифра)

(], скобка)

(;, тчкзпт)

(w, буква)

(h, буква)

(i, буква)

(l,буква)

(e, буква)

(, пробел)

(Z, буква)

(<, знак)

(M, буква)

(, пробел)

(d, буква)

(o, буква)

(, пробел)

(Z,буква)

(:, двоеточие)

(=, равно)

([, скобка)

($, знак доллара)

(A, буква)

(0,цифра)

(+, знак)

(1, цифра)

(], скобка)

(;, тчкзпт)

Лексический блок

While Z>A do Z:=A[$A0+1];

(while, Идентификатор)

(Z, Идентификатор)

(<, знак)

(M, Идентификатор)

(do, Идентификатор)

(Z, Идентификатор)

(:=, Присваивание)

(A[$A0+1], Идентификатор)

(;, Тчкзпт)

(while, Идентификатор)

(Z, Идентификатор)

(<, знак)

(M, Идентификатор)

(do, Идентификатор)

(Z, Идентификатор)

(:=, Присваивание)

(A[$A0+1], Идентификатор)

(;, Тчкзпт)

Блок идентификации ключевых слов

While Z>A do Z:=A[$A0+1];

(while, Клслово)

(do, Клслово)

(while, Клслово)

(do, Клслово)

Синтаксический блок

While Z>A do Z:=A[$A0+1];

Правильно

Правильно

Табл.2 Пример теста для модуля распознавателя цепочки

4.2 Комплексное тестирование

Комплексное тестирование проводилось по окончанию разработки модулей программы и включало в себя проверку всех ошибок, которые могут быть обнаружены в программе. Протокол тестирования программы в целом приведен в таблице 3.

Входные данные

Ожидаемый результат

Действительный результат

While Z>A do Z:=A[$A0+1];

ACCEPT

ACCEPT

2

While id>=Max do id2:=Mem[$A10 mod 2];

ACCEPT

ACCEPT

3

While idl<>id2 do idl:=Arr[$FFFF-id2];

ACCEPT

ACCEPT

4

While bbbfg<hh do fg:=h[$A1*2];

ACCEPT

ACCEPT

5

Qwhile z><A while begin::==D($/7].

REJECT

REJECT

6

While d=f then d:=f[%A10-2];

REJECT

REJECT

7

If z>a do Z:=A[$A10 mod 2];

REJECT

REJECT

8

While A<S do f:=h[$FFFF div 2];

ACCEPT

ACCEPT

Табл.3 Пример протокола тестирования головного модуля.