InfoQ

新闻

选择哪个SOA测试工具?

作者 Mark Little 译者 张龙 发布于 2009年3月19日 上午5时8分

社区
SOA
主题
SOA平台,
SOA Appliance
标签
测试

也许SOA已死,也许它渴望着避风港,但确定的是在好的SOA是由什么构成这个问题上依然充满了未知。很多供应商提供了SOA工具,表明看来是否采用SOA取决于你现在所处的阶段,但实际上这只是他们兜售工具的一种手段而已。就像IBM所说的这样:

你的公司对面向服务的架构(SOA)是什么立场?你是否清楚当前SOA的成熟度和改进的可能性?IBM SOA资产工具可以帮助你充分利用SOA的价值,因为其目标就是不断改进公司的成熟度级别。

然而一旦采用了SOA(无论使用到何种程度),你都需要对其进行测试。还好那些向你兜售工具的供应商提供了相应的解决方案,但好的SOA测试工具是由什么构成的呢,你是否已经被绑定到特定的SOA基础设施上了呢?这就是Eric Roch所提出的问题。他给出了一些选择标准:

  • 感知测试的接口:用于测试的标准化接口和消息
  • 基于消息的测试自动化:对测试脚本的记录、重放和管理
  • 虚拟化:模拟虚拟的服务供应商和消费者的能力
  • 模仿:作为衰退测试的一部分而模仿应用的能力
  • 负载测试:进行负载测试的能力
  • 验证:组件(消息)与应用(数据存储)级别上的验证功能
  • 组件:支持Java与/或.NET组件
  • 自省:支持WSDL与XML以生成数据和运行测试
  • 管理:管理测试用例、脚本、数据与结果
  • 安全:SSL、WS security联盟、数字签名
  • 符合工业的数据格式:如EDI、HL7等
  • 持续测试:自动构建、部署与测试

几年前,InfoWorld曾报道过几个基于SOAP的测试工具

基本说来,测试基于SOAP的Web Service涉及到三个步骤:构建SOAP请求、提交请求并解析相应。听起来很简单,实则不然。有效的SOAP测试工具不能仅仅以对用户友好的方式来构建请求,它还必须能够让用户以真实的序列组织并安排请求,提供改变请求输入值的方式并智能的调整请求以将Web Service暴露给参差不齐的使用场景。简言之,工具应该可以在最接近真实世界的情况下运行。

尽管工业界已经认识到Web Service 仅仅是SOA的一个方面,但不可否认的是现在的大多数工具都认为SOA就是SOAP和WSDL。

你有中意的SOA测试工具么?对Eric的标准有什么不同意见?你知道有哪些好工具能跨越不同的实现技术么?

查看英文原文:Which SOA Testing Tool?

深度内容

模块化Java:声明式模块化

本文是模块化Java系列文章的第4篇,介绍的是声明式模块化。文中描述了组件如何以声明的方式来定义并组织在一起,而无需让代码依赖于OSGI API。

Ian Robinson和Jim Webber谈论基于Web的整合

本采访是在伦敦举行的QCon2009上记录的,Ian Robinson和Jim Webber探讨了如何将Web作为整合平台以及REST在理论上和实践中的好处。

项目管理修炼之道(精选版)

项目管理对于项目成败至关重要,但实践中每个项目都有自己的独特性,没有现成的解决方案可以套用。书中从应对实际风险的角度出发,讲述了从项目启动、项目规划到项目结束的整个管理流程,展示了作者的思考过程。本迷你书从原书中精选出5个章节。

那是鸟,还是飞机?不,那是超人!

在这个演讲中,Fred将会揭示敏捷的一些外在因素,并会重点关注敏捷获得成功的内在原因。从案例研究和真实的项目经验来看,Fred认为:工具、管理体系都不能让你变得敏捷。敏捷的成功,植根于士气高涨、充分授权的工作者身上,他们能够以不同以往的方式思考问题。

访谈和书摘:Eben Hewitt的新书《Java SOA Cookbook》

Java SOA Cookbook

Eben Hewitt的新书《Java SOA Cookbook》从Java实现的角度讨论了面向服务架构。Eben在书中讨论了SOA基础、工具、最佳实践和SOA治理等主题。

Mark Richard的《Java消息服务》第二版

Mark Richards的新书《Java消息服务》第二版覆盖了JMS的许多主题, 包括发布和订阅模式以及点对点模式,消息过滤和事务等。InfoQ与Mark谈论了跟他的新作。

模块化Java:动态模块化

本文是“模块化Java”系列文章的第三篇,讨论动态模块化,内容涉及如何解析bundle类、bundle如何变化、以及bundle之间如何通信。

让测试也敏捷起来

对于测试组织来说,敏捷方法带来的快速迭代却让测试本身变得困难起来:缺乏“足够详细的文档”,缺乏“仔细设计用例的时间”等等。在本演讲中,段念将与大家探讨如何在敏捷过程中进行测试。