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

日期: 2011-11-21 作者:Gaurish Vijay Hattangadi翻译:李松 来源:TechTarget中国 英文

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

它还包括一些辅助的技术,如持续集成测试和服务虚拟化。测试团队需要在服务提供端和客户端都进行系统测试,以确保系统的执行不会发生故障。所做的测试还需要进行正确的归并,组织成为一个回归测试套件。让回归测试套件同提供工作流数据的系统协同工作,是SO……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

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测试需要哪些东西。这部分内容将在《实用SOA测试指南:测试流程起始步骤》中介绍。

相关推荐

  • 如何在SOA中执行BPEL测试?

    几乎所有面向服务架构(SOA)用户都在使用业务流程执行语言(BPEL)。作为编排粗粒度的业务流程流工具,BPEL实际上是行业的标准,但是还是会引起测试问题。

  • 技巧:SOA应用三级测试法

    测试面向服务架构(SOA)应用程序时,有三个级别的测试原则,从而成功进行测试,你知道都是什么吗?

  • SOASTA收购LogNormal意欲何为?

    云和移动测试服务SOASTA已经收购了LogNormal,Web性能工具的制造者。SOASTA为什么要收购LogNormal?

  • 性能测试:确保SOA应用的性能

    SOA性能测试的重点是验证面向服务架构(SOA)方案在预期负载下能否满足业务对性能的要求。SOA压力测试的重点是确定SOA方案在它失败前所能承受的负载量——这里失败的定义是没有能力来满足一项或更多性能要求。