实用SOA测试指南:挑战和路线图

发表于:2012-2-20 11:40

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

 作者:李松 译    来源:51Testing软件测试网采编

  SOA作出的承诺中包括更高的灵活性,更长久的应用程序生命周期,更好地系统集成以及更低的成本。要实现这些承诺殊非易事。构建复杂的集成系统并不是一件简单的任务,而是需要综合运用各种复杂的工具,采用量身定制的方法论,以及大量创造性的手段,去正确地实现,测试和交付SOA系统。

  SOA测试包括服务测试、流程验证、试验数据管理(TDM)和快速UI(用户界面)自动化。它还包括一些辅助的技术,如持续集成测试和服务虚拟化。测试团队需要在服务提供端和客户端都进行系统测试,以确保系统的执行不会发生故障。所做的测试还需要进行正确的归并,组织成为一个回归测试套件。让回归测试套件同提供工作流数据的系统协同工作,是SOA测试的一个关键。

  现实遭遇的挑战

  我们很多人被引入到SOA都是通过SOA厂商发布的网上研讨会、文章和书籍。这些由SOA厂商作出的承诺,似乎很容易实现,同时又是每一个首席技术官的梦想。但只有在现实的实施阶段,它真实的一面才会浮出水面。在现实中,每个SOA的承诺都是一个巨大的挑战。让我们快速浏览一下在最近实施SOA的过程中所遇到的一些的共同挑战吧。

  SOA给测试团队带来的挑战之一是,他们必须学习当前正在使用的新技术,流程和新工具。许多测试团队常常在考虑:在新的SOA环境中,他们是否能够继续使用以前传统的工具和流程?但他们最终发现,在开始SOA测试时这些已经行不通。让我们一起来看一看其中的一些原因和问题吧:

  对现代工具的需求

  (1)SOA有一个独特的架构。那些传统的工具能够测试没有用户界面的组件吗?这些工具可以处理向代理组件的订阅吗?可以解释跨ESB传递的消息吗?

  (2)SOA拥有一套自己独特的协议集。当前的自动化工具能够支持像SOAP,Web服务安全(WS-Security)以及其他类似的协议吗?

  (3)传统的工具能否帮助你在一连串的组件调用过程中隔离并定位故障?

  测试方法论的变化

  (1)一种新的架构需要一种新的测试方法。当前的黑盒生命周期流程和工具已经不能处理对深度灰盒测试的快速需求。举例来说,我们需要测试用户界面,同时也需要测试其后面的组件。

  (2)SOA的生命周期是敏捷的,迭代的。因此,自动回归测试的重要性日益增加。我们该如何进行这些持续不断的集成测试?手工测试效率太低而传统工具已不能胜任。

  端对端的业务流程测试

  (1)当前的工具能否支持跨不同技术的多个工具协作?比如说:用户界面自动化,中间件测试,服务测试以及数据库查询。

  (2)端对端流程测试会产生一些复杂的测试数据管理(TDM)需求,而这在非SOA的单一系统中不会遇到。

  访问受限系统的测试

  (1)按使用次数付费的SaaS系统会增加回归测试的成本

  (2)一些系统,比如大型机,可能没有资源或不容易被授权用于测试。

  SOA测试路线图

  每个SOA项目都可以划分为四个不同的阶段—需求管理、分析及设计、开发(及测试)、部署及生产管理。大多数SOA厂商提供能够支持部署和生产管理阶段的数据仓库和业务流程管理/业务活动监控(BPM/BAM)系统。这些阶段由专门的SOA团队负责管理,不属于测试人员关注的范围。组件集成测试(CIT)和系统集成测试(SIT)发生在SOA生命周期的设计,开发和测试阶段,是SOA测试人员需要重点关注的地方。

  下图展示了核心SOA解决方案的各个不同阶段:

  让我们仔细研究一下设计和开发阶段,看一看要正确的实施SOA测试需要哪些东西。这部分内容将在《实用SOA测试指南:测试流程起始步骤》中介绍。

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

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号