编写客户端/服务器程序的单元测试

时间:2011-12-06 05:25:31

标签: c++ unit-testing unix networking udp

我有一个客户端/服务器程序,我想确保其组件正常工作。

为这种面向网络的程序编写单元测试的最佳实践是什么?

我唯一想到的就是编写一些连接到主服务器/客户端的基本客户端/服务器,交换一些特定的数据包并验证响应。

有更好或更简单的方法吗?

1 个答案:

答案 0 :(得分:3)

这个问题并不罕见,在面向数据库的程序中更是常见。这就是人们发明嘲笑的原因。

这个想法是你真的不需要一个客户端(或者那个服务器),你只需要从一些(可能是未知的)来源回复你的行为。这正是模拟所做的。它伪造了一个接口的实现,并让你准确地告诉它如何对它收到的每个调用作出反应。您可以通过调用正在执行其操作的模拟来替换对网络(或DB)层类的调用。

P.S,偶google can mock