0

我编写了一个连接设备的程序。

例如,我想要reset为设备发送重置请求(它不是 HTTP 请求,它可以是套接字)的测试方法。(设备可以是任何东西)。我不想测试请求只是想确保该方法正常工作。

在计算机编程中,单元测试是一种方法,通过该方法对源代码的各个单元、一个或多个计算机程序模块的集合以及相关的控制数据、使用程序和操作程序进行测试,以确定它们是否适合使用。 1] 直观地说,可以将一个单元视为应用程序中最小的可测试部分。在过程编程中,一个单元可以是一个完整的模块,但更常见的是一个单独的功能或过程。在面向对象编程中,一个单元通常是一个完整的接口,例如一个类,但也可以是一个单独的方法。

我无法reset独立测试该方法(没有设备)。我可以为reset方法编写单元测试吗?我该如何为这些情况编写单元测试?

4

2 回答 2

0

使用模拟库,例如:http ://www.hibernatingrhinos.com/oss/rhino-mocks 。然后,在单元测试中,您可以创建一个实现设备接口的模拟,并且您可以验证是否调用了特定方法(在本例中 - 重置)。

于 2013-08-04T13:50:06.597 回答
-1

您需要创建一个设备仿真系统,假设设备对您很重要,并且您确实需要知道您的代码是否可以使用它。

“模拟”仅创建一个接口,而您的协议需要进行测试。例如,一种reset方法需要非零的时间使设备在物理上和逻辑上复位。模拟不会削减它。同样,设备在某些状态下只能接受某些命令;拥有支持仿真器的状态机通常很重要。

你不需要在 C# 中实现你的设备模拟器;您只需要连接到设备模拟器。例如,有高度可定制的模拟系统,可以实现状态机,并且可以由测试数据文件或脚本驱动。

于 2013-08-04T14:11:38.273 回答