Балашов. Программирование (2012) (1185213), страница 2
Текст из файла (страница 2)
12. Поддержка функционирования на мобильной платформе. Для создания на базе конкретных программных средств ФТ мобильной рабочей станции тестирования необходимо, чтобы пользовательский интерфейс и средства выполнения тестов функционировали на единой аппаратно-программной платформе.
3. ПРИМЕНИМОСТЬ СРЕДСТВ ФТ ОБЩЕГО НАЗНАЧЕНИЯ ДЛЯ ТЕСТИРОВАНИЯ БВК РВ
Рассмотрим два распространенных программных средства ФТ общего назначения и оценим их применимость для задачи тестирования БВК РВ с задействованием целевого оборудования БВК РВ. Рассматриваемые программные средства, а именно Rational Test RealTime и VectorCAST, ориентированы на тестирование ПО распределенных вычислительных систем реального времени. БВК РВ относятся к этой категории вычислительных систем, однако ниже будет показано, что специфика тестирования БВК РВ затрудняет применение указанных программных средств.
Программное средство Rational Test RealTime (RTRT) [1] разработки IBM представляет собой кроссплатформенное решение для тестирования приложений реального времени, включая сетевое и встроенное ПО. RTRT предоставляет возможности для автоматического тестирования ПО на целевом оборудовании, обнаружения утечек памяти, анализа покрытия кода. RTRT интегрировано с разработанными в IBM средствами управления версиями и средствами управления конфигурацией (ClearCase, ClearQuest).
Средство RTRT изначально создавалось для модульного тестирования. Поддержка «системного» (фактически, функционального) тестирования для распределенных программ была добавлена позднее. Тестирование ПО на целевом оборудовании с помощью RTRT требует загрузки инструментальных программных модулей (агентов тестирования) на каждый блок (компьютер) целевой системы, на котором выполняется тестируемое ПО. Агенты отвечают за передачу тестовых данных в тестируемое ПО, за считывание ответных данных и информационный обмен с управляющим компьютером тестирования.
Штатная (рекомендованная поставщиком) технология применения RTRT для тестирования ПО на целевом оборудовании БВК РВ требует загрузки на блоки БВК РВ инструментального ПО. Такой подход неприемлем для приемосдаточных и натурных испытаний. Также неясно влияние функционирования инструментального ПО на временные характеристики функционирования блоков БВК РВ.
Средство RTRT применяется в ОКБ Сухого для тестирования бортовых систем авиалайнера Sukhoi Superjet. При этом используется специально разработанное вспомогательное ПО, выполняемое на выделенных компьютерах и транслирующее тестовые данные от RTRT в сообщения КБИ, отправляемые на блоки БВК. Разработка такого вспомогательного ПО является сложной задачей, требующей доступа к внутренним деталям реализации средства RTRT. Следует отметить, что информация о внутренних программных интерфейсах коммерческого средства RTRT не является открытой, а поставщик средства RTRT не оказывает консультаций для внешних разработчиков, использующих эти интерфейсы.
Решение для тестирования БВК РВ, основанное на сочетании RTRT и вспомогательного ПО, взаимодействует с целевой системой на уровне параметров, где параметр – это переменная, получаемая тестируемым ПО на вход или формируемая на выходе. Такой уровень взаимодействия неприемлем для тестирования блоков БВК РВ, принимающих или формирующих двоичные данные (например, видеокадры или цифровую карту местности). Также этот уровень плохо пригоден для тестирования функций отказоустойчивости, при котором требуется формировать низкоуровневые воздействия на целевую систему (например, внедрение сбоев обмена в КБИ, имитация неисправности оконечных устройств КБИ или перебоев питания).
Программное средство VectorCAST [2] разработки Vector Software представляет собой интегрированный программный комплекс для модульного и функционального тестирования. Это средство поддерживает генерацию и выполнение тестов, анализ покрытия кода, регрессионное тестирование. Средство VectorCAST может быть интегрировано со сторонними средствами управления требованиями при помощи интерфейса VectorCAST / Requirement Gateway.
Средство VectorCAST предоставляет ряд возможностей, ориентированных на тестирование ПО бортовых БВК РВ. В частности, в нем реализованы рекомендации стандарта DO-178B, описывающего процесс разработки бортового ПО. VectorCAST применяется при разработке бортового ПО ряда гражданских и военных ЛА, в том числе JSF, A380, Boeing 777, A400.
VectorCAST поддерживает модульное и интеграционное тестирование бортового ПО на целевом оборудовании. Подобно RTRT, VectorCAST требует загрузки на блоки целевой системы инструментальных программных модулей, что приводит к тем же проблемам применимости к тестированию БВК РВ, что и в случае с RTRT.
Авторам не известно о существовании вспомогательного ПО, позволяющего применять средство VectorCAST для тестирования БВК РВ через КБИ, без инструментирования блоков БВК РВ. Разработка такого ПО проблематична в связи с тем, что VectorCAST является закрытым коммерческим продуктом.
Оба рассмотренных программных средства ФТ предоставляют широкий набор возможностей для тестировании ПО распределенных ВС, однако имеют схожие проблемы в применении к тестированию БВК РВ без инструментирования блоков целевого оборудования. Также в этих средствах отсутствует возможность непосредственного управления обменом по КБИ, что дополнительно ограничивает их применимость для тестирования функций отказоустойчивости БВК РВ.
В таблице 2 приведена краткая характеристика средств RTRT, VectorCAST и применяемого в ОКБ Сухого комплекса инструментальных средств ФТ с точки зрения сформулированных в разделе 2 требований к средствам ФТ.
Таблица 2. Соответствие средств функционального тестирования требованиям, сформулированным в разделе 2
Требование | КИС ФТ | Rational Test RealTime | VectorCAST |
Поддержка функционального тестирования ПО на целевом вычислителе без его инструмен-тирования | + Тестирование ПО целевой системы (БВК РВ) выполняется через КБИ | -/+ (требуется разработка модулей, не входящих в состав поставки средства) | -/+ (требуется разработка модулей, не входящих в состав поставки средства) |
Поддержка стандартов бортовых интерфейсов, используемых в БВК РВ | + Поддерживаются все стандарты бортовых интерфейсов, используемые в БВК РВ бортов, для которых применяется стенд | -/+ (требуется разработка модулей, не входящих в состав поставки средства) | -/+ (требуется разработка модулей, не входящих в состав поставки средства) |
Поддержка тестирования временных характеристик функционирования целевой системы | + | - | +/- (требует загрузки инструменталь-ных модулей на целевую систему) |
Поддержка многомашинных конфигураций | + | - | - |
Поддержка совместного использования адаптеров бортовых интерфейсов со средствами мониторинга обмена по КБИ | + | -/+ (адаптация возможна, но не входит в комплект поставки) | -/+ (адаптация возможна, но не входит в комплект поставки) |
Поддержка различных режимов тестирования (автоматическое, интерактивное) | + | + | + |
Поддержка оперативного отображения процесса тестирования | + (оперативное отображение: протоколов тестирования; тестовых данных и ответов от тестируемой системы, в табличном и графическом виде) | -/+ (использование дополнительных инструментов) | -/+ (использование дополнительных инструментов) |
Поддержка прослеживаемости требований и формирования отчетов по результатам тестирования | +/- (задание соответствия требований тестовым сценариям; формирование матрицы прослеживаемости; формирование отчета о прохождении тестов и выполненности требований по результатам тестирования) | -/+ (прослежива-емость – внешними инструментами, детальные отчеты – только для модульного тестирования) | -/+ (прослежива-емость – внешними инструментами, детальные отчеты – только для модульного тестирования) |
Интеграция со средствами поддержки разработки ПО БВК РВ | +/- | +/- | -/+ |
Интеграция с базой данных бортовых интерфейсов | +/- (формирование по БД интерфейсных частей тестовых сценариев) | - | - |
Поддержка функционирования на мобильной платформе | + | -/+ | -/+ |
4. КОМПЛЕКС ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ ФУНКЦИОНАЛЬНОГО ТЕСТИРОВАНИЯ БВК РВ
В данном разделе описан комплекс инструментальных средств функционального тестирования БВК РВ (КИС ФТ), используемый в ОКБ Сухого для тестирования БВК современных и перспективных ЛА. КИС ФТ разработан в Лаборатории вычислительных комплексов факультета ВМК МГУ им. М.В. Ломоносова.
4.1 Обзор комплекса
В отличие от рассмотренных выше средств ФТ (Rational Test RealTime и VectorCast), КИС ФТ ориентирован на тестирование БВК РВ через каналы бортовых интерфейсов, без загрузки каких-либо инструментальных программных модулей на блоки БВК РВ. КИС ФТ поддерживает такие типы каналов, как МКИО (ГОСТ Р 52070-2003), ДПК (ГОСТ 18977-79, РТМ 1495-75), Fibre Channel, а также ряд других типов каналов, используемых в современных БВК РВ. Адаптеры КБИ установлены в инструментальных машинах, на которых выполняются тесты.
Для каждого типа канала в КИС ФТ поддерживаются следующие функции:
-
подготовка и отправка тестовых данных в БВК РВ через КБИ (поддерживается как упаковка параметров в сообщения, так и непосредственное формирование «двоичных» сообщений);
-
прием данных от БВК РВ через КБИ для последующего анализа (поддерживается как распаковка параметров из сообщений, так и непосредственный доступ к «двоичным» сообщениям);
-
мониторинг информационного обмена по КБИ между устройствами БВК РВ и обработка результатов мониторинга тестовыми сценариями.
КИС ФТ может быть расширен для поддержки новых стандартов КБИ. Стенды, построенные на основе КИС ФТ, поддерживают тестирование БВК РВ в рамках всех активностей, перечисленных в разделе 1.
КИС ФТ поддерживает распределенное выполнение тестов на многомашинных конфигурациях стендов, что необходимо для тестирования сложных БВК РВ с большим (до нескольких сотен) числом КБИ. Инструментальные машины функционируют в синхронизированном времени и выполняют скоординированную во времени выдачу тестовых данных и обработку ответных данных. Синхронизация времени обеспечивается периодической отправкой сигналов точного времени с выделенной инструментальной машины (мастера синхронизации) остальным инструментальным машинам.
Для работы с высокоскоростными КБИ, например с оптическими линиями передачи видеосигнала Fibre Channel, требуется использование оптимизированного по производительности стендового оборудования. КИС ФТ поддерживает интеграцию со специализированными комплексами аппаратуры имитации сигналов (АИС), которые входят в состав стендов (типовая структура стенда описана в разделе 5). Комплексы АИС функционируют под управлением тестов, выполняющихся на инструментальных компьютерах.
КИС ФТ предоставляет возможности для тестирования функционирования БВК РВ в реальном времени. Все действия выполняемых тестов привязаны к астрономическому времени. Планирование моментов времени отправки тестовых данных в БВК РВ, а также замер моментов времени получения ответных данных, выполняется с высокой точностью (погрешность не более десятков микросекунд), что позволяет тестам анализировать время реакции БВК РВ на тестовые воздействия.
КИС ФТ поддерживает как полностью автоматическое выполнение тестов (в т.ч. в пакетном режиме), так и интерактивное тестирование. В состав функций поддержки интерактивного тестирования входят:
-
формирование следующих запросов от тестов пользователю:
-
запрос подтверждения (да/нет), необходимый в случае визуальной оценки реакции БВК РВ на тестовое воздействие, например оценки правильности изображения на индикаторе;
-
запрос текстового пояснения, например, обоснования для положительного или отрицательного подтверждения;
-
поддержка ручного ввода тестовых данных пользователем в ходе выполнения тестирования;
-
поддержка ручного выбора пользователем порядка выполнения тестов (в рамках текущего тестового сценария) – эта функция востребована при отладке ПО БВК на стенде.
В результате каждого сеанса тестирования формируется протокол, содержащий статус завершения каждого из выполненных тестов (успех/неуспех), ответы пользователя на запросы от тестов и т.п. Протокол тестирования автоматически обрабатывается, чтобы определить, какие из требований к БВК РВ успешно прошли тестирование (соответствие между тестами и требованиями задается в описании тестового сценария). В процессе выполнения тестирования, протоколы тестирования и значения тестовых и ответных данных отображаются в средстве оперативной визуализации, что позволяет пользователю отслеживать выполнение тестирования. Поддерживаются специализированные форматы отображения, такие как стрелочные индикаторы и диаграммы; для расширения состава этих форматов предусмотрен механизм расширений (плагинов).
Поддерживается формирование вспомогательного протокола, в который записываются все воздействия пользователя на процесс тестирования, включая введенные значения параметров, ответы на запросы от тестов, ручной выбор порядка выполнения тестов. Этот протокол впоследствии может быть воспроизведен с целью повтора ранее проведенного сеанса интерактивного тестирования, что востребовано при отладке тестовых сценариев.
Для поддержки опережающей разработки тестов в случаях, когда аппаратура БВК РВ еще не доступна, КИС ФТ обеспечивает следующие возможности:
-
поддержка программно моделируемых «виртуальных» КБИ, в т.ч. МКИО и ДПК;
-
выполнение тестов в режиме ожидания ввода от пользователя; в этом режиме тесты запрашивают данные у пользователя вместо того, чтобы ожидать их прихода по КБИ от тестируемых устройств БВК (использование данного режима не требует модификации тестов).
КИС ФТ поддерживает создание и выполнение имитационных моделей устройств БВК с применением технологии полунатурного моделирования, описанной в [4]. Имитационные модели используют ресурсы инструментальных компьютеров, в т.ч. адаптеры КБИ, для воспроизведения информационного взаимодействия моделируемого устройства по КБИ, включая взаимодействие с реальными устройствами БВК РВ. Имитационные модели устройств БВК могут быть использованы при тестировании функций реконфигурации подсистем БВК РВ в случае, если доступны не все аппаратные устройства, участвующие в реконфигурации.
Аппаратные ресурсы стенда, построенного на основе КИС ФТ, могут совместно использоваться средствами ФТ и средствами мониторинга КБИ из семейства «Анализатор каналов» [3]. Функционирование средств тестирования (включая средства выполнения тестов и средства взаимодействия с пользователем) и средств мониторинга КБИ в единой аппаратно-программной среде, основанной на ОС Linux с расширениями реального времени, позволяет создать компактную мобильную рабочую станцию тестирования и мониторинга БВК РВ. Это решение может быть использовано для диагностики БВК РВ на борту ЛА, см. раздел 6.