深入XMPP协议测试:从基础到实战
1. 多阶段协议的单元测试
在XMPP协议中,除了简单的请求 - 响应协议外,还存在多阶段协议。这些协议由多个请求 - 响应周期迭代组成,先发起一个请求,再根据前一个请求的响应采取后续步骤。
以用户加入多人聊天(MUC)为例,当用户想要加入MUC时,IM客户端需要检测服务器上可用的MUC房间并呈现给用户。获取该列表需要一系列服务发现(disco)请求,具体步骤如下:
1. 请求服务器的所有可用服务 :客户端向服务器发送disco#items请求。
<iq type="get" id="muc-1" to="wonderland.lit">
<query xmlns="http://jabber.org/protocol/disco#items"/>
</iq>
服务器响应包含所有服务的列表:
<iq type="result" id="muc-1"
from="wonderland.lit" to="alice@wonderland.lit/RabbitHole">
<query xmlns="http://jabber.org/protocol/disco#items">
<item jid="pubsub.wonderland.lit"/>
<item jid="rooms.wonderland.lit"/>
超级会员免费看
订阅专栏 解锁全文
1156

被折叠的 条评论
为什么被折叠?



