【发布时间】:2019-11-08 22:26:16
【问题描述】:
我在汽车行业工作,目前我正在研究 MPC57XX(飞思卡尔)微控制器.. 有一些测试用例需要测试..我有兴趣使用 python 将它们变成自动测试用例。 有没有人知道如何让 python 直接与微控制器交互而无需任何接口(任何其他 S/w 或 H/w) 是否有可能制作自动化测试用例,直接从微控制器获取值? 我还没试过这个!!
【问题讨论】:
标签: python
我在汽车行业工作,目前我正在研究 MPC57XX(飞思卡尔)微控制器.. 有一些测试用例需要测试..我有兴趣使用 python 将它们变成自动测试用例。 有没有人知道如何让 python 直接与微控制器交互而无需任何接口(任何其他 S/w 或 H/w) 是否有可能制作自动化测试用例,直接从微控制器获取值? 我还没试过这个!!
【问题讨论】:
标签: python
我相信没有一种非常简单的方法可以做到这一点。您要问的似乎是一种“黑盒”或集成测试。我们通常将此称为验证和确认测试,并且会影响不同级别的系统工程:
您需要在微控制器软件中使用自定义“挂钩”来控制和测量输入和输出,这是这项工作的最重要部分。要让 python 与微控制器交互,您将需要某种硬件接口:COM 端口、以太网等;我们通常使用产品上已有的接口。
一旦你有了它,你就可以用 python 编写你的测试,这将在单独的机器上运行。我们使用 Google 的 OpenHTF 框架来构建和执行测试。一探究竟: https://github.com/google/openhtf
此时,以下问题的答案可能会有所帮助: Test framework for testing embedded systems in Python
如果使用 OpenHTF,您将为您的微控制器编写一个插件,抽象出您选择的接口并公开诸如“activate_led()”、“read_input_signal()”之类的函数,其名称与您的产品特性相关。
然后您的测试可以使用您的插件与您的微控制器交互,并使用 python 来捕获测量值、验证阈值、询问用户输入(即 LED 是否亮起?)等等。
简而言之,这不是即插即用的尝试,需要自定义挂钩到您的微控制器中。因此,我会说不,python 不能在没有任何接口的情况下直接与微控制器交互,并且不,它不能(如果没有你在两端控制的一些软件)直接从微控制器获取值。
【讨论】: