Есть ли способ собрать cpputest с отключенными pthreads? - PullRequest
0 голосов
/ 15 октября 2018

Я планирую использовать cpputest в качестве среды тестирования в моем проекте, который мне нужно будет кросс-компилировать, так как он будет использоваться на платформе ARM.Компилятор, который я использую для разработки ARM, это arm-gcc, который собран с отключенными pthreads.В связи с этим мне нужно собрать cpputest без pthreads.В настоящее время я использую подход autotool для сборки cpputest.Любая помощь будет очень признательна.

1 Ответ

0 голосов
/ 29 ноября 2018

Вы пытаетесь скомпилировать, загрузить и запустить CppUTest на целевом устройстве?

Как правило, CppUTest не компилируется и не загружается на целевое устройство, а вместо этого создается как консоль Windows (или Linux)приложение.Это означает, что CppUTest компилируется с использованием собственного компилятора (Visual Studio или GCC), но ваша прошивка также должна будет компилироваться с использованием того же собственного компилятора (Visual Studio или GCC).

Модульное тестирование предназначено для проверки того, что вашлогика кода верна, это означает, что не имеет значения, выполняется ли код на процессоре ARM или на процессоре IntelДля справки, когда я впервые начал заниматься модульным тестированием, это поразило меня.

Но как насчет аппаратных регистров и тому подобного?Что ж, есть способы тестирования оборудования встроенных устройств в среде Windows.В конце дня вам все равно нужно будет загрузить прошивку на встроенное устройство и убедиться в правильности сопоставления портов (т. Е. Что вы правильно настраиваете порт GPIO, например, для включения светодиода).

Существует несколько преимуществ запуска модульного тестирования на компьютере разработчика вместо целевого.Ваш ПК для разработки намного быстрее, имеет больше ресурсов (например, хранилище и ОЗУ), а также позволяет легко работать в среде непрерывной интеграции (например, Jenkins или TeamCity) всякий раз, когда вы регистрируете код в своей системе контроля версий.

Я настоятельно рекомендую книгу Разработка через тестирование для Embedded C Джеймса У. Греннинга для получения дополнительной информации.Он ответит на все ваши вопросы по модульному тестированию на встроенном устройстве.CppUTest можно использовать как для проектов C, так и для C ++.

...