2013-06-04 120 views
3

是否有一些为多个异步线程同时运行的实时系统创建测试环境的指导方针/提示或特定框架/解决方案?具体来说,系统运行在一个周期性的时钟上,包含多个线程通过消息传递相互通信,包含实时日志和跟踪,并具有确定性,但复杂(和可变)的执行状态。实时嵌入式系统的模块测试

想法?

+1

假设您正在模块级别(文件,类,小组函数等)测试代码,但它是嵌入式系统并不重要。获得一个运行在目标硬件上的测试框架(例如使用UART作为终端输出),或者运行在PC上的目标模拟器(大概再次提供终端输出的想法)。一些框架列在这里:http://stackoverflow.com/questions/65820/unit-testing-c-code?rq=1或http://stackoverflow.com/questions/1572601/testing-code-for-embedded-应用程序?rq = 1 – Ross

+0

让我澄清我的模块含义:我指的是同时运行的异步线程的集合。这些松散地对应于OSI层[1]。所以我的测试环境至少要包含一个测试过程,它有自己的栈,msg处理程序和定时机制。我将编辑原始问题以反映此(最低)要求。 [1]:http://en.wikipedia.org/wiki/OSI_model –

回答

1

我在阅读由James W.Grenning撰写的书<Test-Driven Development for Embedded C>
我还没有读完,所以我不能完全确定它会有多大的帮助。但我认为它给出了很好的指导方针和技巧。
它给出了一些例子,展示了如何使嵌入式软件开发的测试自动化,包括自动或部分自动化的硬件测试。这是吸引我阅读的东西。
顺便说一句,在这本书中,它使用UnityCppUTest作为单元测试线束。