Нужны идеи для автоматизации тестирования на кристалле Cortex-M4 с использованием gdb и полухостинга - PullRequest
0 голосов
/ 06 июня 2019

Я работаю над критически важным для безопасности программным обеспечением, которое требует тщательного тестирования.Целевой процессор, Cortex-M4, обладает богатыми ресурсами для приложения, но модульные и интеграционные тесты, если их объединить, будут намного больше, чем встроенная FLASH / RAM.Они предназначены для запуска с GDB при использовании полу-хостинга для разгрузки результатов теста.Что нужно, так это способ автоматизировать тестирование, чтобы его можно было запускать без вмешательства человека.

Тестовые программы нормально запускаются из Eclipse с использованием интерфейсов отладчика OpenOCD и Segger.Для этого требуются конфигурации для каждого теста, а затем запуск тестов вручную.Будет 30-50 тестовых программ, так что это не реально для непрерывной интеграции или простых пакетных запусков.

Я искал возможные способы сделать это.Есть несколько хитрых моментов для рассмотрения.Первый поддерживает полухостинг вывода.При этом используется система точек останова для ввода-вывода с хоста.В этом случае на главном компьютере открывается несколько файлов для журналов.Другая проблема - завершение тестируемой программы и загрузка следующей.Программы могут занять много времени для запуска и попадания в бесконечный цикл при выходе из main ().И платформа разработки - Windows 10. У меня были две основные идеи: использовать клиентскую библиотеку gdb от cygwin для создания пользовательской программы или использовать OpenOCD.Выполнение нескольких тестов может быть выполнено внутри приложения или из Makefile. Вопрос: выполняется ли полухостинг в клиенте или сервере gdb? Итак ... Ищите некоторые предложения или опыт по созданию того, что я представляю как пользовательский клиент GDB в Win10.
...