[STM32F4] 单元测试时无法编译模拟的HAL库

[复制链接]
634|8
内核558 发表于 2025-8-30 03:31 | 显示全部楼层 |阅读模式
Ceedling测试框架在进行单元测试时无法编译模拟的HAL库。是否需要对项目进行其他配置。。我试过将STM32 Cube IDE中建立嵌入式测试框架。不依赖外部库时,Ceedling框架可以正常工作,但模拟任何HAL库时编译过程就会失败。
星辰大海不退缩 发表于 2025-8-31 23:00 | 显示全部楼层
模拟HAL库是不是就会有问题
AdaMaYun 发表于 2025-8-31 23:37 | 显示全部楼层
Ceedling框架了解一下
szt1993 发表于 2025-8-31 23:58 | 显示全部楼层
ST的基础知识问题了解一下
麻花油条 发表于 2025-9-1 16:49 | 显示全部楼层
HAL 库通常依赖于 STM32 的特定硬件寄存器定义,这些定义在单元测试环境中可能不存在。
duo点 发表于 2025-9-1 16:50 | 显示全部楼层
Ceedling 默认使用桌面编译器,而 HAL 库可能需要交叉编译或特定的宏定义。
onlycook 发表于 2025-9-1 16:50 | 显示全部楼层
HAL 库可能包含内联汇编或硬件相关代码,这些代码在模拟环境中无法直接运行。
内政奇才 发表于 2025-9-1 16:50 | 显示全部楼层
用简单的 Mock 函数替代 HAL 库的复杂实现,避免直接依赖 HAL 库。
海滨消消 发表于 2025-9-1 16:51 | 显示全部楼层
用 CMock 或 FFF 模拟 HAL 库,CMock 是 Ceedling 默认集成的 Mock 工具,可以自动生成 Mock 函数。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

50

主题

50

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部