MSMQ(MicroSoft Message Queue,微软消息队列)是在多个不同的应用之间实现相互通信的一种异步传输模式,
它的实现原理是:消息的发送者把自己想要发送的信息放入一个容器中(我们称之为Message),然后把它保存至一个系统公用空间的消息队列(Message Queue)中;本地或者是异地的消息接收程序再从该队列中取出发给它的消息进行处理。
消息队列建立在Computer Management中,路径如下:
MSMQ的测试也算比较简单:,但是由于消息的编码大多是二进制,为了让测试人员可以更清晰的查看到发送的消息内容是否正确,我们使用了测试工具QueueExplorer
使用工具的好处:
1,会转化消息内容为XML格式,方便测试者查看消息内容
2,可以编辑,保存并导出消息的body,然后模拟发送重复的消息.
3,可以远程链接并且查看其他机器上的消息队列
4,可以模拟无数封消息的同时发送,用于做性能测试.
二进制
XML
当然还有其他很多功能,由于时间的原因,我们还没有去研究和发现..
:另外也可以让开发帮助制作消息查看工具.
测试消息队列的主要check点:
1,检查是否发送成功, - check消息队列中是否已经有特定队列名称的消息
我们使用了Windows Service来获取消息,可以关掉服务来查看队列中的消息,如果开启了取消息服务,则可以查看历史消息队列.
2,检查发送的消息内容是否正确
A,检查XML的内容,字节是否完整,每个字节对应内容是否正确,
B,检查服务获取消息之后,数据库中的更新和变化是否正确
3, check异常信息
A,如果消息内容有错误, Service无法进行正确的处理,会有怎样的表现?
________扔掉或者Send Mail (和开发人员进行事先的约定)
B,如果队列故障坏掉,或者达到设置的存放消息最大数量限制消息无法放进去,会有怎样的表现?
________如果是重要的消息,可以放在其他的Queue,如果是不重要的消息是否可以扔掉?