【问题标题】:Automating XMPP server testing with multiple client instances使用多个客户端实例自动化 XMPP 服务器测试
【发布时间】:2010-06-24 16:58:41
【问题描述】:

我正在开发 XMPP 服务器的测试套件。目前我已经实现了一个客户端,能够连接、创建帐户、发送从 XML 文件中获取的节、接收回复、将其存储在另一个文件中并将其与预期的输出进行比较。我可以创建多个客户端,但我正在寻找并发操作。

如何让多个客户端相互通信?我的愿景 - 将客户端放入单独的线程并提供诸如“等待回复”之类的命令。

感谢任何建议...

【问题讨论】:

    标签: java xmpp functional-testing smack


    【解决方案1】:

    所有在单个测试用例中的同一线程上完成。

    • 以用户 1 的身份创建传出连接。
    • 以用户 2 的身份创建传入连接。
    • 为您的测试节注册 PacketListener,该节将在传入连接时写入 BlockingQueue。
    • 在传出连接上写入节。
    • 在队列上调用 take() 并测试结果。

    注意:PacketListener 将在由 Smack 内部产生的单独线程上调用,这就是为什么您需要 BlockingQueue 来协调发送和回复。

    【讨论】:

    • +1 还可以考虑使用多个 XMPPConnection 实例,每个实例都有自己的 PacketListener 和 BlockingQueue 来测试消息路由或多用户聊天。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    相关资源
    最近更新 更多