单元测试xmpp客户端

时间:2014-06-03 02:08:53

标签: unit-testing tdd xmpp jsjac

测试xmpp客户端的要点是什么?

我正在使用JsJac库编写聊天,一种XMPP客户端。现在我需要在不同的服务器信号之后测试我的客户端的行为。例如,当服务器向我的客户端发送一些错误时,它会触发ondisconnect回调。我还应该测试(在单独的测试中)当这个回调触发时 - 满足某些条件。

问题是我应该在任何测试中连接到真实服务器,还是我可以以某种方式为它编写一些模拟?

我可以用这种方式模拟服务器消息(CoffeeScript代码):

error = JSJaCError '503', 'cancel', 'service-unavailable'
xmpp._handleEvent 'onerror', error

但问题是xmpp对象应该处于连接状态才能执行此操作。

1 个答案:

答案 0 :(得分:0)

对于单元测试,您不应该连接到真实服务器 - 使用测试双,例如一个模拟服务器。您也可以编写一些使用真实服务器的集成测试,以确保您正确连接它等等。