2

这遵循了其他几个 问题(但我认为我已经更好地完善了我的问题)。

我想在安装设备之前测试我的固件代码。

我意识到很多人编写他们的代码、上传、测试等。但我真的很想在上传之前编写和测试(主要是因为我想自动化许多场景)。

那么,这样做的最佳方法是什么。如果我正在编写纯软件,例如根本没有固件,我会使用 cppunit 来解决它(例如)。但是我对这个固件有点迷茫。

有任何想法吗?

谢谢

4

4 回答 4

10

我认为标记为“正确”的答案根本不正确或完整。

对于固件代码,您确实必须进行严格的两管齐下的测试。

  1. 使用模拟器完成的初始测试。这是理想的,但假设您可以获得目标平台的良好模拟器。

  2. 在实际硬件上进行测试,但在测试台框架中。也就是说,您在实际设备上进行测试,但使用额外的硬件(即示波器、探头)和其他连接来允许对正在发生的事情进行适当的跟踪/调试。

对于固件,最困难的错误通常与时间相关,并且只有在您使用实际硬件时才会出现。在最坏的情况下,实际的探测行为可以改变时间,这样错误就不会出现——仅在“生产”版本中。然后你就玩得很开心。

干杯,

-理查德

于 2009-01-16T23:57:39.850 回答
3

好吧,如果不知道您的代码是如何架构的,很难说,但基本上您可以像其他软件一样在类/功能级别测试软件。任何与设备接口的代码很可能需要通过仿真进行测试。

于 2009-01-16T21:07:09.537 回答
2

许多嵌入式设备都有可用的软件模拟器,但它确实取决于设备。

于 2009-01-16T21:09:41.047 回答
0

您应该尽可能多地对您的类进行单元测试,但归根结底,您必须运行它并在硬件中对其进行测试。

要在设备中测试您的固件,请编写一个调试接口,以便您可以使用诸如procomm 之类的终端仿真器与您的设备通信。然后,当您编写功能时,您的调试接口可以调用类中的方法,这样您就可以在设备本身中专门测试您的代码。

完成后,您可以在终端模拟器中编写脚本来自动进行测试。

于 2009-07-30T12:33:04.010 回答