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

发表于:2013-9-02 11:02

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:liysky    来源:51Testing软件测试网博客

  随着软件行业的发展,各种软件更加复杂化,对测试要求也越来越高,并且希望测试能及时的跟进研发的需求变更。

  测试团队怎样才能高效的应对频繁的需求变更呢?这是当今测试团队应该思考的主要问题。

  今天分享一些个人的看法:

  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端运行测试,并将测试结果入库,及时通过管理系统展示测试结果,然后邮件方式获取测试结果页面,及时的共享出去

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

版权声明:本文出自 liysky 的51Testing软件测试博客:http://www.51testing.com/?113696

原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号