Технология и инструментальные средства тестирования бортовых вычислительных комплексов реального времени 2012 г. Балашов В. В. 1, Баранов А. С. 2, Грибов Д. И. 3, Чистолинов М



Скачать 374.91 Kb.
страница1/3
Дата23.04.2016
Размер374.91 Kb.
  1   2   3
УДК 681.3
ТЕХНОЛОГИЯ И ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА ТЕСТИРОВАНИЯ БОРТОВЫХ ВЫЧИСЛИТЕЛЬНЫХ КОМПЛЕКСОВ РЕАЛЬНОГО ВРЕМЕНИ

© 2012 г. Балашов В.В.1, Баранов А.С.2, Грибов Д.И.3, Чистолинов М.В.4

1 Факультет вычислительной математики и кибернетики МГУ им. М.В.Ломоносова, hbd@cs.msu.su

2 ОАО «ОКБ Сухого», abaranov@okb.sukhoi.org

3 ОАО «ОКБ Сухого», dgribov@okb.sukhoi.org

4 Факультет вычислительной математики и кибернетики МГУ им. М.В.Ломоносова, mike@cs.msu.su
В статье рассматриваются проблемы тестирования бортовых вычислительных комплексов реального времени (БВК РВ) в рамках различных фаз жизненного цикла БВК. Сформулированы требования к программно-аппаратным средствам тестирования БВК РВ. Проведен анализ применимости ряда существующих инструментальных средств функционального тестирования для испытаний БВК РВ. Описана архитектура разработанного авторами программного комплекса инструментальных средств тестирования БВК РВ и семейства стендов, построенного на его основе. Подходы к тестированию БВК РВ на этих стендах проиллюстрированы на примере тестирования функций отказоустойчивости БВК РВ.
ВВЕДЕНИЕ

К современным бортовым вычислительным комплексам (БВК РВ) предъявляются жесткие требования по функциональности, отказоустойчивости и работе в реальном масштабе времени. Чтобы обеспечить соблюдение этих требований, в рамках различных активностей жизненного цикла БВК РВ осуществляется систематическое тестирование программного обеспечения (ПО) БВК РВ, а также комплекса как аппаратно-программной системы. В данной работе под активностью будем понимать мероприятие, проводимое в рамках жизненного цикла БВК РВ и направленное на достижение заданной цели, относящейся к разработке БВК РВ. Активности относятся к различным фазам жизненного цикла БВК РВ.

Активности по тестированию относятся в первую очередь к фазам интеграции, испытаний и сопровождения БВК. Важной особенностью тестирования ПО БВК РВ является тот факт, что значительная часть требований к этому ПО может быть протестирована только на целевом оборудовании, т.е. натурных аппаратных средствах БВК РВ. Это требования к функционированию в реальном времени, обмену по каналам бортовых интерфейсов (КБИ), взаимодействию различных уровней ПО (ОС, служебное ПО, функциональное ПО).

Средства функционального тестирования (ФТ) общего назначения, такие как Rational Test RealTime [1] и VectorCAST [2], требуют инструментирования целевого оборудования БВК РВ для проведения тестирования на этом оборудовании. Инструментирование включает загрузку вспомогательных программных модулей на целевое оборудование и, тем самым, не является приемлемым для приемосдаточных и натурных испытаний. Также указанные средства ФТ не поддерживают анализ обмена данными по КБИ. В итоге, для применения этих средств к тестированию БВК РВ необходима их значительная доработка, затрудняемая закрытостью их кода и внутренних программных интерфейсов.

В данной работе представлен разработанный с участием авторов работы комплекс инструментальных средств функционального тестирования аппаратно-программных БВК РВ, в т.ч. ПО БВК РВ (далее – КИС ФТ). Данный комплекс ориентирован на тестирование БВК РВ без инструментирования целевого оборудования. КИС ФТ разработан в Лаборатории вычислительных комплексов факультета ВМК МГУ и применяется в ОКБ Сухого для тестирования БВК РВ современных самолетов. Тестируемые комплексы состоят из блоков (вычислительные узлы, датчики, индикаторы, органы управления), соединенных каналами бортовых интерфейсов.

В разделе 1 перечислены основные активности жизненного цикла БВК РВ, в рамках которых выполняется тестирование БВК РВ с задействованием целевого оборудования БВК. В разделе 2, с учетом данного перечня активностей и специфики БВК РВ, сформулированы основные требования к средствам функционального тестирования БВК РВ. Раздел 3 содержит анализ применимости двух существующих средств ФТ общего назначения к тестированию ПО БВК РВ на целевом оборудовании, а также оценку их соответствия сформулированным требованиям. В разделе 4 описан КИС ФТ, используемый в ОКБ Сухого, приведена его архитектура и перечень функциональных возможностей. Раздел 5 описывает общую архитектуру стендов тестирования, основанных на КИС ФТ. В разделе 6 описано практическое внедрение КИС ФТ в виде семейства стендов тестирования, каждый из которых ориентирован на определенную активность или группу активностей жизненного цикла БВК РВ. В разделе 7 представлен подход к тестированию функций отказоустойчивости БВК РВ с применением описанной технологии тестирования. В заключительном разделе перечислены перспективные направления развития технологии тестирования.


1. ПРОБЛЕМЫ ТЕСТИРОВАНИЯ БВК РВ В РАМКАХ РАЗЛИЧНЫХ АКТИВНОСТЕЙ ЕГО ЖИЗНЕННОГО ЦИКЛА

Выделим основные проблемы тестирования, специфические для различных активностей жизненного цикла БВК РВ, на которых при тестировании БВК РВ задействуется целевое оборудование БВК. Такие активности имеют место в рамках таких фаз жизненного цикла БВК РВ, как интеграция программных и аппаратных подсистем БВК, испытания, сопровождение БВК.

В таблице 1 для каждой активности жизненного цикла БВК РВ, на которой при тестировании задействуется целевое оборудование БВК, указаны основные проблемы тестирования. Проблемы приведены по опыту тестирования, накопленному в ходе разработки БВК РВ в ОКБ Сухого.
Таблица 1. Проблемы тестирования БВК РВ в рамках активностей его жизненного цикла

Активность

Фаза

Проблемы тестирования БВК РВ

1. Интеграция ПО с целевым оборудованием БВК РВ, отладка ПО на целевой платформе (обычно на отдельном блоке БВК).

Интеграция

Выборочный прогон тестов в соответствии с отлаживаемой функциональностью ПО.

Ручное управление тестированием для выбора порядка выполнения тестов, повторного прогона тестов.



2. Интеграция подсистем БВК РВ, состоящих из нескольких блоков, или интеграция БВК в целом как аппаратно-программной системы.

Интеграция

Отслеживание правильности взаимодействия сопрягаемых блоков по КБИ.

3. Приемосдаточные испытания ПО БВК РВ.

Испытания

Автоматизированный прогон полного комплекта функциональных тестов БВК РВ.

Проверка работы отдельных блоков и их взаимодействия по КБИ.



4. Приемосдаточные испытания серийных образцов блоков БВК РВ, а также серийных образцов комплекса в целом.

Испытания

Автоматизированный прогон полного комплекта функциональных тестов БВК РВ.

Быстрая замена испытываемых блоков БВК РВ при смене испытываемого образца БВК.



    5. Диагностика блоков БВК РВ, на которые поступили рекламации.

Сопровож-дение

Создание проверенного «эталонного» окружения для проблемного блока.

Наличие комплектов тестов, ориентированных на проверку конкретных блоков, автоматизированный прогон этих комплектов.



6. Диагностика блоков БВК РВ на борту летательного аппарата (ЛА).

Сопровож-дение

Обеспечение мобильности, компактности аппаратного решения.

Следует отметить, что активности 1–6 представляют собой практически полный набор активностей по тестированию на фазах интеграции, испытаний и сопровождения БВК РВ.

Для каждой из активностей 1–6 тестирование выполняется в специализированных аппаратно-программных средах – стендах тестирования. Инструментальное программное обеспечение поддержки функционального тестирования является ключевым компонентом ПО таких стендов.

Технология тестирования, включая инструментальное ПО и архитектуру стендов, должна быть унифицирована для активностей 1–6 с целью сокращения сложности процесса тестирования, а также для обеспечения повторного использования тестовых сценариев на различных фазах жизненного цикла БВК РВ.

В данной работе не рассматривается модульное тестирование функционального ПО БВК РВ. Это обусловлено распространенной практикой проведения модульного тестирования ПО на инструментальных машинах разработчиков без задействования целевого оборудования. Вопросы создания на инструментальной машине программной среды, имитирующей целевую среду (в первую очередь в части доступных функциональному ПО системных вызовов), заслуживают отдельного рассмотрения.
2. ТРЕБОВАНИЯ К ИНСТРУМЕНТАЛЬНЫМ СРЕДСТВАМ ФУНКЦИОНАЛЬНОГО ТЕСТИРОВАНИЯ БВК РВ

Основным видом тестирования БВК РВ в рамках активностей 1–6 (см. раздел 1) является функциональное тестирование ПО, загруженного на блоки БВК РВ. При этом каждый блок рассматривается как «черный ящик», входами которого являются входные КБИ, а выходами – выходные1 КБИ и средства визуального отображения информации (для индикаторов).

Выдача тестовых данных в блоки БВК РВ и прием ответных данных осуществляется по КБИ. При отработке взаимодействия между блоками БВК РВ по КБИ необходима проверка правильности обмена между блоками, в связи с чем тестовые сценарии должны иметь доступ к результатам мониторинга обмена по КБИ.

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

В составе стенда тестирования, совместно со средствами ФТ целесообразно использовать средства мониторинга обмена по КБИ. Эти средства могут применяться для анализа «пограничных» проблемных ситуаций, в которых неизвестно, обусловлен неуспешный исход тестирования проблемами в функционировании БВК РВ или в тестах.

На основании имеющейся в ОКБ Сухого практики тестирования БВК РВ можно выделить следующие основные требования к инструментальным средствам функционального тестирования БВК РВ.



1. Поддержка функционального тестирования ПО на целевом вычислителе без его инструментирования. Средства ФТ должны обеспечивать тестирование ПО на целевом вычислителе без загрузки каких-либо вспомогательных программных модулей на этот вычислитель.

2. Поддержка стандартов бортовых интерфейсов, используемых в БВК РВ. Для полноценного тестирования ПО БВК РВ, а также БВК как аппаратно-программного комплекса, средства ФТ должны поддерживать все стандарты КБИ, используемые в данном БВК РВ. Востребована поддержка следующих основных функций работы с КБИ:

  • выдача тестовых данных по КБИ и прием ответных данных по КБИ для последующего анализа;

  • мониторинг обмена по КБИ и обеспечение доступа тестовых сценариев к результатам мониторинга (для проверки правильности обмена по КБИ между блоками БВК РВ);

  • формирование и анализ низкоуровневого содержимого сообщений, передаваемых по КБИ (для тестирования блоков, принимающих/передающих по КБИ массивы данных в двоичном формате2, без разбиения на отдельные параметры);

3. Поддержка тестирования временных характеристик функционирования целевой системы. Соблюдение временных ограничений на функционирование БВК РВ (в т.ч. на информационный обмен по КБИ) является обязательным предметом тестирования.

4. Поддержка тестирования функции отказоустойчивости целевой системы. Проверка отказоустойчивости требует имитации отказов различных компонентов БВК РВ, в т.ч. имитации сбоев обмена по КБИ и некорректной работы бортовых устройств.

5. Поддержка многомашинных конфигураций инструментального оборудования. Количество бортовых каналов в БВК РВ может достигать нескольких десятков и даже сотен. Для функционального тестирования БВК РВ в целом необходимо задействовать несколько инструментальных машин, к которым стационарно подключены каналы. Средства ФТ должны поддерживать подобные многомашинные конфигурации, в том числе обеспечивать согласованную во времени выдачу данных по КБИ с различных инструментальных машин и согласованную проверку ответов от блоков БВК РВ.

6. Поддержка совместного использования адаптеров бортовых интерфейсов со средствами мониторинга обмена по каналам бортовых интерфейсов. В стенде комплексирования БВК РВ, поддерживающем работу с большим количеством каналов, данная функция позволяет избежать увеличения числа адаптеров бортовых интерфейсов при реализации мониторинга этих каналов. При использовании мобильной станции тестирования и мониторинга данная функция позволяет в условиях ограниченного числа установленных адаптеров (обычно не более 2 на промышленном ноутбуке) выполнять одновременно функции тестирования и мониторинга каналов.

7. Поддержка различных режимов тестирования.

  • автоматическое тестирование (без вмешательства оператора) – для проверки ответных данных, поступающих по КБИ от блоков БВК РВ;

  • интерактивное тестирование (оператор отвечает на запросы от тестов) – для проверки данных, отображаемых на индикаторах в составе БВК РВ.

8. Поддержка оперативного отображения процесса тестирования. Данная функция позволяет оператору отслеживать текущее состояние тестирования и реагировать на возможные отклонения. Оперативному отображению подлежат:

  • значения тестовых данных и ответных данных от тестируемой системы;

  • протоколы тестирования.

9. Поддержка прослеживаемости требований и формирования отчетов по результатам тестирования. Функциональное тестирование является интегральной частью жизненного цикла БВК РВ и нацелено на проверку выполненности требований к ПО БВК РВ. В связи с этим, средства ФТ должны поддерживать:

  • задание соответствия требований тестовым сценариям;

  • формирование матрицы прослеживаемости требований;

  • формирование отчета о прохождении тестов и выполненности требований по результатам тестирования.

10. Интеграция со средствами поддержки разработки ПО БВК РВ:

  • интеграция со средствами управления версиями (для хранения тестовых сценариев и ПО БВК РВ в едином репозитории, отражающем структуру версий ПО БВК РВ);

  • интеграция со средствами управления требованиями.

11. Интеграция с базой данных бортовых интерфейсов. Данная функция позволяет средствам ФТ формировать интерфейсную часть тестовых сценариев, а именно описание структуры (состава полей данных) принимаемых и передаваемых через КБИ сообщений, по БД бортовых интерфейсов. Наполнение этой БД формируется по результатам проектирования протоколов информационного взаимодействия блоков БВК РВ.

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

Поддержка функционального тестирования ПО на целевом вычислителе без его инструмен-тирования

+

Тестирование ПО целевой системы (БВК РВ) выполняется через КБИ



-/+

(требуется разработка модулей, не входящих в состав поставки средства)



-/+

(требуется разработка модулей, не входящих в состав поставки средства)



Поддержка стандартов бортовых интерфейсов, используемых в БВК РВ

+

Поддерживаются все стандарты бортовых интерфейсов, используемые в БВК РВ бортов, для которых применяется стенд


(Су-35, Т-50)

-/+

(требуется разработка модулей, не входящих в состав поставки средства)



-/+

(требуется разработка модулей, не входящих в состав поставки средства)



Поддержка тестирования временных характеристик функционирования целевой системы

+

-

+/-

(требует загрузки инструменталь-ных модулей на целевую систему)



Поддержка многомашинных конфигураций

+

-

-

Поддержка совместного использования адаптеров бортовых интерфейсов со средствами мониторинга обмена по КБИ

+
(совместно со средствами семейства «Анализатор каналов» [3])

-/+

(адаптация возможна, но не входит в комплект поставки)



-/+

(адаптация возможна, но не входит в комплект поставки)



Поддержка различных режимов тестирования (автоматическое, интерактивное)

+

+

+

Поддержка оперативного отображения процесса тестирования

+

(оперативное отображение: протоколов тестирования; тестовых данных и ответов от тестируемой системы, в табличном и графическом виде)



-/+ (использование дополнительных инструментов)

-/+ (использование дополнительных инструментов)

Поддержка прослеживаемости требований и формирования отчетов по результатам тестирования


+/-

(задание соответствия требований тестовым сценариям; формирование матрицы прослеживаемости; формирование отчета о прохождении тестов и выполненности требований по результатам тестирования)





-/+

(прослежива-емость – внешними инструментами, детальные отчеты – только для модульного тестирования)




-/+

(прослежива-емость – внешними инструментами, детальные отчеты – только для модульного тестирования)




Интеграция со средствами поддержки разработки ПО БВК РВ

+/-

+/-

-/+

Интеграция с базой данных бортовых интерфейсов

+/-

(формирование по БД интерфейсных частей тестовых сценариев)



-

-

Поддержка функционирования на мобильной платформе

+

-/+

-/+


  1   2   3


База данных защищена авторским правом ©bezogr.ru 2016
обратиться к администрации

    Главная страница