Комплекс тестирования встроенного программного обеспечения электронных устройств

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

 

Изобретение относится к вычислительной технике, а именно к программным комплексам тестирования программного обеспечения (ПО) электронных устройств (ЭУ).

Известна полезная модель «Аппаратно-программный комплекс автоматизации, управления, визуализации и мониторинга технологических процессов» (патент на полезную модель RU №90588). Аппаратно-программный комплекс автоматизации, управления, визуализации и мониторинга технологических процессов содержит объединённые через локальную вычислительную сеть (ЛВС) рабочие станции, автоматизированные рабочие места (АРМы) и серверы на базе персональных электронных вычислительных машин (ПЭВМ), а также объединенные системой передачи данных управляющее устройство и функциональные модули, предназначенные для обеспечения управления технологическими процессами на основе программного комплекса и для физического воздействия на входы устройств управления технологическими процессами, снятия показаний с датчиков контроля технологических процессов и передачи информации о состоянии входов/выходов устройств управления. Он имеет централизованную архитектуру принятия решений, содержащую главное управляющее устройство и подчиненные ему функциональные модули на базе промышленных микроконтроллеров, объединенные через приборный интерфейс, и снабжен программным блоком для осуществления визуализации параметров технологических процессов.

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

Известно изобретение «Способ и система автоматизации тестирования программного обеспечения» (заявка RU №2013126869 A), заключающееся в том, что система автоматизации тестирования программного обеспечения включает, по крайней мере, одно устройство пользователя и/или тестировщика, по крайней мере, одну базу данных, по крайней мере, одну базу тестов и программно-аппаратный комплекс, выполненный с возможностью: тестирования программного обеспечения по составленным планам тестирования посредством интерактивного взаимодействия тестировщика с пользовательским интерфейсом тестируемого программного обеспечения, записи указанных действий пользователя в автоматическом режиме в заранее заданных терминах уровня бизнес-логики тестируемого программного обеспечения, сохраняя результаты в базе тестов в качестве тестовых сценариев, записи изменений в базе данных, производимых при выполнении указанных тестовых сценариев, в автоматическом режиме в заранее заданных терминах, присваивая данным изменениям признак «Эталонные изменения» и сохраняя результаты в базе тестов, после изменения программного обеспечения осуществления его регрессионного тестирования, проигрывания тестовых сценариев из базы тестов в автоматическом режиме, записи изменений в базе данных, производимых при выполнении указанных тестовых сценариев, в автоматическом режиме в заранее заданных терминах, присваивая данным изменениям признак «Фактические изменения» и сохраняя результаты в базе тестов, осуществления верификации по каждому тестовому сценарию, сравнивая «Эталонные изменения» и «Фактические изменения» и сохраняя результаты сравнения в базе тестов, формирования списка тестовых сценариев, не прошедших верификацию, при этом под изменениями, не прошедшими верификацию подразумеваются расхождения «Эталонных изменений» и «Фактических изменений» и выполнен дополнительно с возможностью: выявления основных бизнес-процессов, выполняемых с использованием тестируемого программного обеспечения, составления детального плана тестирования выявленных бизнес-процессов, фиксируя варианты интерактивного взаимодействия тестировщика с пользовательским интерфейсом тестируемого ПО.

В данном изобретении недостатком является отсутствие средства визуализации для оперативного и гибкого контроля состояния средств моделирования, данных и сущностей.

Наиболее близким к предлагаемому по технической сущности является изобретение «Комплекс автоматизации и визуализации тестирования встроенного программного обеспечения электронных устройств» (патент RU 2678717 С9), заключающееся в том, что программный комплекс выполнен с возможностью тестирования программного обеспечения, составления тестовых сценариев и с сохранением их в базе данных в качестве эталонных, формирования базы тестов, получения фактических значений, сравнения эталонных и фактических значений и с возможностью выявления основных бизнес-процессов, выполняемых с использованием тестируемого программного обеспечения, составления детального плана тестирования выявленных бизнес-процессов, фиксируя варианты интерактивного взаимодействия пользователя с пользовательским интерфейсом тестируемого программного обеспечения, включающий единую программную среду написания и выполнения тестов, содержащую средства написания, редактирования и выполнения тестов, автоматизированного анализа и обработки информации, визуализации данных и сущностей в процессе тестирования и на этапе подготовки к нему, хранения тестовых наборов и подключения их в состав комплекса на любом этапе тестирования, динамической реконфигурации и управления в любой момент времени программным комплексом и любых компонент, входящих в его состав, выделения общего буфера для взаимодействия подключаемых моделей и произвольную их реконфигурацию, как в ручном режиме, так и во время выполнения тестов, защиты и восстановления комплекса при наличии непредвиденных сбоев в процессе его работы, динамически подключаемые модели функциональных устройств, реализуемые в виде независимых унифицированных программных модулей с заранее определенным единым набором методов и функций и средствами визуализации и представления состояния их внутренних данных сущностей, разработанных по единым правилам построения и реализации на базе унифицированного шаблона и вызываемых из единой программной среды написания и выполнения тестов, базу данных хранения представлений данных и сущностей, средства автоматизированного заполнения базы данных информацией на основе анализа документации, по которой разрабатывается тестируемое программное обеспечение.

Недостатками прототипа являются:

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

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

- наличие буфера в оперативном запоминающем устройстве (ОЗУ) накладывает дополнительные требования на ЭВМ тестировщика и программиста.

Для заявленного изобретения выявлены следующие общие с прототипом существенные признаки: комплекс тестирования встроенного ПО ЭУ, заключающийся в том, что комплекс выполнен с возможностью тестирования встроенного ПО, составления тестовых сценариев и с сохранением их в базе данных в качестве эталонных, формирования базы тестов, получения фактических значений, который включает программную среду, содержащую средства написания, редактирования и выполнения тестов, визуализации данных и сущностей в процессе тестирования, хранения тестовых наборов и подключения их в состав комплекса на любом этапе тестирования, динамической реконфигурации и управления в любой момент времени программным комплексом и его компонентами, динамически подключаемые модели функциональных устройств, базу данных хранения представлений данных и сущностей.

Техническими проблемами настоящего изобретения являются:

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

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

- повышение качества тестирования встроенного программного обеспечения посредством уменьшения времени отклика и фиксации реакции электронного устройства аппаратурой контроля.

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

На чертеже ФИГ.1 представлена структурная схема комплекса.

Комплекс реализуется следующим образом:

Комплекс тестирования встроенного ПО состоит из аппаратной и программной части. Программная часть состоит из базы данных 2 хранения представлений данных и сущностей, главной управляющей программы 1, сервера хранения тестов и отчётов 3, динамически подключаемых моделей входных/выходных воздействий 4, функциональных моделей 5 и сервера диспетчеризации 6. Аппаратная часть состоит из аппаратных модулей 7, панели вывода состояния моделей/интерфейсов 8, отладочного места 10 и непосредственно тестируемого устройства 9.

Аппаратные модули 7 осуществляют обмен между сервером диспетчеризации 6, который принимает данные от главной управляющей программы 1, моделей входных/выходных воздействий 4 и функциональных моделей 5 и тестируемым устройством 9. Также аппаратные модули 7 выводят информацию на панель вывода состояния моделей/интерфейсов 8, в качестве которой может выступать дисплей с VGA входом. Аппаратные модули 7 совместно с функциональными моделями 5 осуществляют имитацию работы различных модулей сопряжения в режиме, максимально приближенном к режиму реального времени. Каждый аппаратный модуль обеспечивает взаимодействие программных моделей с тестируемым устройством 9 как минимум по одному приборному интерфейсу. Каждый приборный интерфейс содержит аппаратный контроллер, который позволяет реализовывать передачу данных в соответствии со стандартами приборного интерфейса.

Сервер диспетчеризации 6:

- осуществляет передачу пакетов от главной управляющей программы 1, моделей входных/выходных воздействий 4, функциональных моделей 5 в аппаратные модули 7;

- осуществляет рассылку ответных пакетов от аппаратных модулей 7 в модели входных/выходных воздействий 4, функциональные модели 5 и главную управляющую программу 1;

- следит за атомарностью подключения к аппаратному модулю во время выполнения тестирования электронного устройства.

Панель вывода состояния моделей/интерфейсов 8 отображает состояние моделей и интерфейсов в режиме реального времени.

Модели входных/выходных воздействий 4 и функциональные модели 5 реализуются в виде независимых программ со средствами визуализации и представления состояния их внутренних данных и сущностей и могут быть написаны на любом языке программирования, например, Java, Python, MATLAB или С/С++. Могут быть как управляемыми главной управляющей программой в реальном времени на любом этапе тестирования, так и иметь функцию автономного управления и изменения своих состояний, генерировать события и устанавливать их в главной управляющей программе. Кроме этого главная управляющая программа не только перед тестированием, но и динамически, т.е. непосредственно в процессе тестирования, может запускать и подключать новые программные модели, реконфигурировать или завершать работу уже подключенных программных моделей и информационно взаимодействовать со всеми аппаратными модулями через доступные программные модели.

Главная управляющая программа 1, которая:

- реализована в виде единого пользовательского интерфейса;

- содержит средства управления хранением тестовых наборов и их подключений в состав комплекса на любом этапе испытаний и обеспечивающие взаимодействие с сервером хранения тестов и отчётов 3;

- является программной средой, содержащей средства написания, редактирования и выполнения тестов, обеспечивающие задание параметров конфигурации и тестирования встроенного ПО ЭУ;

- обеспечивает обмен информацией с моделями входных/выходных воздействий 4, функциональными моделями 5 и сервером диспетчеризации 6, установку и обработку событий и обеспечение синхронизации.

Передача данных между главной управляющей программой 1, моделями входных/выходных воздействий 4, функциональными моделями 5 и сервером диспетчеризации 6 осуществляется при помощи пакетной передачи данных и не требует выделения отдельного общего буфера в ОЗУ.

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

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

Комплекс работает следующим образом:

В БД 2 заносится основная информация по тестируемому встроенному ПО электронного устройства.

Пользователь запускает главную управляющую программу 1. У главной управляющей программы есть два режима работы «Редактор» и «Выполнение». Режим работы выбирается оператором.

В режиме «Редактор» пользователь составляет тестовые последовательности, редактирует их и сохраняет на сервер хранения тестов 3 в каталог, сформированный для тестируемого встроенного ПО.

В режиме «Выполнение» представлен инструмент для выполнения тестовых наборов. Перед началом выполнения тестовой последовательности главная управляющая программа 1 подключает необходимые модели входных/выходных воздействий 4 и функциональные модели 5 и отправляет им требуемые начальные конфигурационные настройки. В ходе тестирования в режиме реального времени возможно управление внутренним состоянием данных и сущностей моделей как из главной управляющей программы 1, так и непосредственно в моделях.

Обмен информацией между главной управляющей программой 1, программными моделями 4 и 5 с сервером диспетчеризации 6 и сервером диспетчеризации 6 с аппаратными модулями 7 осуществляется по единому протоколу обмена по распределённой сети на базе протоколов TCP/IP и UDP. Наличие сетевого взаимодействия между программными компонентами комплекса допускает запускать программные модели на одном или сразу нескольких ЭВМ.

Аппаратные модули 7 принимают от сервера диспетчеризации 6 пакеты с данными, анализируют их и либо сохраняют данные в своей памяти или регистрах интерфейсов, либо отправляют данные, считанные с внутренней памяти аппаратного модуля или регистров интерфейсов. Далее в зависимости от принимаемых данных происходит либо транзакции по приборным интерфейсам между аппаратными модулями 7 и тестируемым устройством 9, либо модификация данных, отправляемых по приборным интерфейсам.

Главная управляющая программа 1 и каждая программная модель 4 и 5 протоколирует информацию за весь период своей работы (приём команд, сигналов, отправленные и ответные пакеты, с указанием получателя и отправителя), что позволяет на любом этапе проконтролировать, что происходило в каждой из программной модели 4 и 5 и в главной управляющей программе 1. При помощи протоколирования облегчается анализ состояния тестируемого встроенного ПО в процессе выполнения теста и оценка функционального покрытия пройденным тестом. Также по всем протоколам можно оценить эффективность выполнения тестов и при необходимости изменить конфигурацию сети или тестовый сценарий.

Модели входных/выходных воздействий 4 и функциональные модели 5 могут работать под управлением главной управляющей программы 1 или независимо, как самостоятельные программные модели для дополнительной отработки.

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

С использованием данного комплекса проведено тестирование программного обеспечения вычислительного модуля блоков управления бортового комплекса управления, блоков интерфейсных бортового комплекса управления и блоков управления бортового ретрансляционного комплекса перспективных космических аппаратов АО «ИСС».

За счёт реализации данного технического решения достигается необходимый технический результат:

- сокращение сроков разработки и подготовки комплекса и программных моделей осуществляется путём построения архитектуры комплекса в виде распределенной сети с использованием для взаимодействия между программными компонентами единого протокола, что позволяет разрабатывать отдельные программные компоненты на различных языках программирования (при необходимости), проводить параллельную разработку нескольких моделей и главной управляющей программы. Также при использовании разных языков программирования увеличивается скорость прототипирования отдельных моделей, либо увеличить эффективность использования модели за счёт особенностей языка программирования;

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

- повышение полноты тестирования достигается за счет использования средств синхронизации процесса испытаний;

- повышение качества тестирования и надежности тестируемого программного обеспечения обеспечивается за счет своевременной реакции и контроля со стороны комплекса на события от тестируемого программного обеспечения и динамического воздействия на вычислительный процесс тестируемого программного обеспечения с имитацией нештатных ситуаций для подтверждения его сбое устойчивости путём переноса функции приёма и передачи пакетов для электронного устройства непосредственно в аппаратные модули.

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



 

Похожие патенты:

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

Изобретение относится к области тестирования программного обеспечения. Техническим результатом является повышение качества тестирования программного обеспечения.

Изобретение относится к вычислительной технике. Технический результат заключается в повышении производительности и эффективности операций постоянной записи.

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

Изобретение относится к вычислительной технике. Технический результат заключается в обеспечении возможности проведения перепрограммирования, отладки аппаратных и программных средств ЭВМ.

Изобретение относится к электросвязи и представляет собой устройство мониторинга коммутационных панелей структурированных кабельных систем. Техническим результатом является расширение функциональных возможностей устройства мониторинга.

Изобретение относится к области информационной безопасности. Технический результат заключается в реализации возможности определения аномалий в работе устройства с помощью использования модели IoT-устройства (далее - устройство).

Изобретение относится к вычислительной технике. Технический результат заключается в улучшении обнаружения точки останова.

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

Изобретение относится к области вычислительной техники. Техническим результатом является обеспечение автоматизированной проверки архитектуры программно-аппаратного решения.
Наверх