模拟USB输入

6
我们的产品包括一些定制硬件,通过USB连接到PC。我们已经开始研究自动化测试,但目前我找不到可以记录/重放通用USB输入的工具。
有人知道这样的工具吗? (最好是可编写脚本的 - 测试必须在GUI交互和定制硬件操作之间交替进行)

2
顺便提一下,最好使用依赖注入和隔离(模拟)框架来测试您应用程序的其余部分。绝对要集成测试USB类,但请将其与测试其余类分开进行。 - TrueWill
5个回答

4

使用umockdev模拟usb设备

Umockdev是一款基于Linux的应用程序,可以记录硬件的行为和属性,并在独立于实际运行硬件的软件上运行。硬件设备可以在虚拟环境中模拟,而不会影响整个系统。它目前支持sysfs、uevents、/dev设备的基本支持,以及记录/mocking usbdevfs ioctls(用于PtP/MTP设备)。它有助于创建与硬件相关的库的集成测试。

源代码和示例

umockdev主页


它能在MacOS上使用吗? - Ewoks

2

硬件解决方案,

您想生成USB流量吗?我很久没有使用过了,但CATC协议分析仪也可以生成流量。 http://www.lecroy.com/tm/products/ProtocolAnalyzers/usbtt.asp?menuid=67 当然,您也可以编写脚本来生成这些流量...

软件解决方案,

编写自己的应用程序以向USB总线驱动程序发送数据包,并查看usbview(随Windows DDK一起提供的)源代码。您可以直接向任何USB管道发送数据。这比硬件解决方案便宜一些,但有点困难...

希望对您有所帮助。


1

在usb.org 工具页面 上有几个测试工具,不确定那是否是您所需要的。


2
谢谢,但似乎这些都是USB协议符合性测试工具。 - Ofek Shilon

1

你可以使用Usblib编写一个简单的程序。它很容易使用。


1

我不知道是否有任何USB分析仪具有重放选项,但它们肯定具有记录选项。目前我只能想到LeCroy,但还有其他公司生产USB分析仪。但它们的成本相似,LeCroy的价格可能更高。在这里,您应该可以公正地比较USB分析仪及其价格。www.osronline.com/article.cfm?id=533(必须注册才能查看文章)


1
Chris - 你能给一个USB分析器的例子吗? - Ofek Shilon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接