我在一家中型公司(拥有150名员工,约有10名规模的工程团队)工作,我的大多数项目都涉及与实验室设备(示波器,光谱分析仪等)的接口,以实现半自动化测试应用。我遇到了几种不同的情况,由于我不再或从来没有可用的硬件设置,因此无法有效地排除故障或测试新代码。
示例1:使用台式型传感器独立运行10-20个“老化”过程的设置-我能够获得一个这样的传感器进行测试,并且偶尔可以花一秒钟来模拟与之连接的所有方面多个设备(搜索,连接,流式传输等)。
最终出现了一个错误(最终最终归结于设备固件和驱动程序中),仅用一个单元就很难准确地再现该错误,但是当同时使用10-20个此类设备时,该错误接近“显示停止器”的水平。这仍未解决,仍在进行中。
示例2:需要昂贵的光谱分析仪作为其核心组件的测试。该设备相当老旧,是一家制造商遗留下来的,后者被一家较大的公司收购,并且基本上已经解散,并且它的唯一文档是冗长的(且内容不丰富的)文档,翻译起来似乎不好。在最初的开发过程中,我能够将设备保持在桌面上,但现在在24/7多周的测试中,无论是在物理上还是在计划中都将其捆绑在一起。
当错误显示出与设备相关或无关的错误时,我经常需要麻烦测试应用程序外部的代码并将其装入,或者盲目编写代码并尝试在两次运行之间的某个测试时间内进行压缩,程序逻辑要求OSA和其余测试硬件都安装到位。
我想我的问题是我应该如何处理?我可能会花一些时间来开发设备模拟器,但是弄清楚开发估算值将使它比大多数人想像的更多。它也可能无法准确地重现所有问题,而且很少有人看到同一设备在这里两次使用过。我可以在单元测试方面变得更好...等等...我也可以大声地谈论这个问题,并让其他人理解将需要暂时的延迟,这不只是研究和开发的头痛,而是通常被认为是在开玩笑当投入制造业时。