Реклама:

Наиболее широко для регистрации промежуточных данных прн тестировании применяется покомандное программное моделирование тестируемой программы (рис. 3.21). Сущность его состоит в том, что на каждом шаге анализируется содержание операции объектного крда и значения переменных тестируемой программы и программой-интерпретатором моделируется функционирование устройств ЭВМ при этих данных. Для этого в интерпретаторе производится:

Липаев В. В. Тестирование программ.

Рис. 3.20. Схема регистрации результатов исполнения программы методом интерпретации каждой команды

Липаев В. В. Тестирование программ.

Рис. 3.21. Схема исполнения тестируемых программ' и регистрации результатов методом интерпретации формирование кода адреса очередной команды, подлежащей исполнению, и его запоминание в памяти, моделирующей регистр команд;

анализ Кода операции и подготовка программы, моделирующей исполнение этой конкретной операции на ЭВМ;

моделирование исполнения очередной операции в соответствии с ее кодом и исходными данными;

запоминание полученных результатов после нсполнения операции и селекция данных для регистрации н последующей обработки;

фиксирование полученного текущего состояния устройств моделируемой ЭВМ и переход к следующей интерпретируемой команде.

Некоторые трудности может вызывать выбор следующей команды при интерпретации условных переходов. В этом случае код адреса очередной команды формируется с учетом результатов выполненной операции или некоторых данных, полученных ранее. Моделирование условного перехода состоит в формировании в зависимости от признака условия либо адреса очередной команды плюс единица, либо в выборке адреса из адресного поля команды условного перехода.

Преимущества интерпретации при тестировании состоят в отсутствии деформации тестируемой программы для регистрации промежуточных данных и' в возможности моделирования ЭВМ с произвольными системами команд. Последнее, в частности, означает, что иа технологической ЭВМ можно проводить тестирование программ, система команд объектного кода которых отличается от системы команд технологической ЭВМ. Поэтому интерпретация широко применяется в адаптируемых кросс!-системах для тестирования программ специализированных н Микро-ЭВМ [38, 39, 57].

Однако метод интерпретации требует для исполнения каждой команды моделируемой программы в среднем 50—100 операций в моделирующей программе. В результате исполнение тестируемых программ замедляется почти на два порядка. При тестировании больших групп программ зачастую оказывается, что имеющиеся резервы оперативной памяти в технологической ЭВМ не достаточны для их размещения. Если часть тестируемой группы программ, глобальные переменные или константы размещаются во внешней памяти, то иа их вызов в оперативную память может затрачиваться значительное время. Это приводит к дополнительному снижению скорости исполнения тестируемых программ еще на один-два порядка. Поэтому метод интерпретации наиболее эффективно используется для тестирования программных модулей или небольших групп программ, полностью размещающихся в оперативной памяти технологической ЭВМ.


⇐ Предыдущая страница| |Следующая страница ⇒