littlebot
Published on 2025-04-12 / 1 Visits
0

【源码】基于PlatformIO的嵌入式项目单元测试框架

项目简介

本项目是基于PlatformIO的嵌入式项目启动模板,集成了Unity单元测试框架。为开发者构建新的嵌入式应用程序提供便捷起始点,同时支持单元测试,保障代码质量。

项目的主要特性和功能

  1. 跨环境输出支持:有通用的printprintln函数,可在本地和嵌入式环境进行标准输出与串口输出。
  2. 模块化开发与测试组织:测试组织在lib文件夹,主测试文件夹下测试运行代码少,鼓励模块化开发。
  3. 多测试目标与脚手架:展示给定目标下测试子组织示例,目标测试组内可使用多个测试脚手架(setUptearDown函数)。
  4. 灵活的测试执行:支持对unoadafruit_feather_m0native等特定目标测试,方便不同阶段测试。

安装使用步骤

前提条件

假设已下载本项目源码文件,且已安装PlatformIO。

运行测试

  1. 打开终端,进入项目目录: bash cd EmbeddedProject
  2. 运行所有测试: bash pio test
  3. 运行特定目标的测试,如unoadafruit_feather_m0nativebash pio test -e uno pio test -e adafruit_feather_m0 pio test -e native

开发建议

开发中,大部分开发周期运行test -e native测试代码逻辑,偶尔运行test或嵌入式特定目标进行完整性检查。

设备配置

若使用的设备不在platformio.ini文件中,需手动添加。

非库项目开发

创建主运行时项目,可在src目录下用main.cpp构建代码。建议将代码功能区域提取到lib文件夹,主程序代码测试组织在主测试文件夹下。

Arduino IDE兼容性

若需与Arduino IDE兼容,可用.ino文件代替main.cpp,并在platformio.ini文件中配置src_dir参数。但Arduino IDE不支持单元测试功能,建议使用PlatformIO开发。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】