有兴趣讨论测试领域的同学请加:412725276

消息中间件在测试中的应用

上一篇 / 下一篇  2013-06-01 18:35:24 / 个人分类:测试技术

随着软件行业的发展,各种软件更加复杂化,对测试要求也越来越高,并且希望测试能及时的跟进研发的需求变更。
测试团队怎样才能高效的应对频繁的需求变更呢?这是当今测试团队应该思考的主要问题。
今天分享一些个人的看法:
1. 如果需求频繁的变更,人工测试肯定不能很好的跟进测试、确保质量,所以最大程度的自动化将是应付需求变更的第一步。
2. 由于系统的复杂性,导致自动化的内容和类型的复杂性也相应提高,所以对于如何组织自动化,及时、有效、高效的运行将成为应付频繁需求变更的第二步
   - 在传统的做法里,如果是linux,大家可能会使用crontab来进行管理,而windows可能则会使用计划任务进行管理。但是这两种管理方式显然不能达到及时的响应,就是你时间间隔设得很短,也理论上也是无法项目包一到达就立马启动测试
   - 不太利于扩展,并且易错性比较高
   
3. 基于以上两点,我将介绍消息中间件如果在复杂的自动化环境中提高效率
   - 消息中间件,很多人比较熟悉的如ActiveMQ, MetaQ等等,但是个人觉得,在测试行业,activeMQ就足够用了,
他的消息持久性特点能够保证每一个测试不遗漏。另外,任务队列管理极其方便,可扩展的东西很多

4. ActiveMQ在测试中应用流程
   - 搭建ActiveMQ 服务器 (很简单)
   - 开发实现ActiveMQ的 agent consumer 和 producer
     a) producer 负责跟开发对接,如果有任何任务需求,及时通过producer 将任务加到消息队列。同时,详细的自定义属性很灵活,对于任务描述很有利
     b) agent consumer端可以通过推或拉的方式来接收任务,如果是推的方式,只需实现ActiveMQ的订阅功能,当有任何到来时,订阅的测试服务器将自动消费信息进行测试(这时候消息的属性非常有用了),如果是拉的模式, 只需实现灵活的agent consumer,时时监听各自队列,任何任务到来时都会主动启动测试,非常便于扩展测试服务器,如,发现任务比较多的时候,直接在任何一个服务器上去启动另一个agent便可加入测试中来
     c) 消息持久性的特点,你不用担心消息会丢失
     d) 很容易就能实现producer端的手动干预任务,灵活,高效
5. 通过agent端运行测试,并将测试结果入库,及时通过管理系统展示测试结果,然后邮件方式获取测试结果页面,及时的共享出去


以上步骤,灵活,高效的完成了复杂系统的频繁变更测试。欢迎大家拍砖

TAG:

也无风雨的个人空间 引用 删除 也无风雨   /   2013-12-10 11:35:27
5
51Testing小编的个人空间 引用 删除 zaza9084   /   2013-09-02 13:52:26
您好,我是51Testing软件测试网的编辑,您的本篇博文被推荐至51Testing软件测试网首页发表:http://www.51testing.com/html/47/n-851547.html
感谢您关注并支持51Testing博客,期待您更多的优秀原创博文。
 

评分:0

我来说两句

Open Toolbar