我有一个客户端/服务器程序,我想确保其组件正常工作。
为这种面向网络的程序编写单元测试的最佳实践是什么?
我唯一想到的就是编写一些连接到主服务器/客户端的基本客户端/服务器,交换一些特定的数据包并验证响应。
有更好或更简单的方法吗?
答案 0 :(得分:3)
这个问题并不罕见,在面向数据库的程序中更是常见。这就是人们发明嘲笑的原因。
这个想法是你真的不需要一个客户端(或者那个服务器),你只需要从一些(可能是未知的)来源回复你的行为。这正是模拟所做的。它伪造了一个接口的实现,并让你准确地告诉它如何对它收到的每个调用作出反应。您可以通过调用正在执行其操作的模拟来替换对网络(或DB)层类的调用。
P.S,偶google can mock