赛迪网 > IT技术 热点推荐 > 文章
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

测试服务:SOA的完整性和扩展性

发布时间:2006.05.23 10:35     来源:TechTarget    作者:Daniel Rubio

随着开发软件往可复用服务的迁移,很多软件开发生命周期中的范式被开发了出来。正如面向对象要求一个特别的概念集合来达到有效的开发,面向对象架构也带来了它共享的具体途径。在接下来的段落中,我们将会我们将会探索开发服务的许多重要方面中的一个:测试。

  依赖于你们组织中的软件管理类型,测试可以通常作为一个全局过程或者最高优先权的过程。以前的方法,在代码行之间用敏捷开发技巧,强迫把测试推迟到服务被完全实现以后才进行测试,而随后的服务就会采用这个还没有经过测试的服务,并且不等到你使之成为一个“准备好”的服务。

  当有支持者确认了一个调查,在开始就 进行测试并且采用敏捷原则比直到最后的开发阶段才测试更有好处,我们暂且不管这些,我们先把关于何时把测试引入到你具体的工程中去的讨论搁置一边,让我们关注一下如何进行测试。

  测试决不是一个简单的东西,有很多不同的测试类型可以应用在软件上。依据测试的复杂性和领域 ,即使专业的团队——QA团队——可以被雇来完成特定的任务,但是是为了特定的目定,我们将会关注两种类型的测试,他们都相对容易的开发:单元测试和压力测试。

  单元测试是指通过预先定义的一些列数据集合来验证一个服务的既定目的的过程,这个数据集合是用来模拟显示世界的用法从而能够及时的方式来探测到缺陷。当为你的服务进行单元测试的时候, 在服务被发布为正是的产品以前你可以把他们看成安全保护网,因为你能够在实际数据流在这个系统运行之前使用这些预先的数据集合来测试你的服务的逻辑。

  另外一个单元测试为你的开发带来的那些好处在当你的系统开始用上了一段时间之后就会更加突出了。因为演化的服务意味着底层逻辑的修改,这些修改可能会破坏服务本来被希望忙足的一些具体的使用设定。尽管如此,通过现有的单元测试套件,并且保证一直保持同这些测试的一致,保护任何使用你服务的依赖部分免受在以后可能新的修订中带来的任何破坏

  实际的单元测试的进行很大程度上依赖于编程语言或者你使用来部署你的服务的平台,但是更加可能的情况是为了能更容易的进行测试的步步为营,确认和部署,将会通过一个特定的框架来完成这些 ——换一句话说就是, 自动化的进行所有的能够使得单元测试成为必需的过程。

  在所有的最流行的单元测试的框架中有:Java的JUnit 和.NET的Unit Testing Framework ,Unit Testing Framework 构成了Visual Studio的一部分。

  用来调用预先定义的数据块的不同的断言方法的参数在底层的服务类之间传递,在这些类上进行同所期望的值进行比对,这个比对是在当测试框架给出一个错误或者返回一个正确的执行的时候进行。

  单元测试是用来验证一个服务逻辑的完整性,重点测试是用来决定一个服务在一个特定的用户附载的时候应该具有什么样的行为,它是一个可以帮助决定对一个服务的基础架构的适当支持的过程,这些基础架构包括如硬件能力,应用程序配置和可以获得的网络带宽,以及其他的东西。

  一个可以帮助你进行压力测试的工具是JMeter ,它是一个由Apache组织开发的一个开源项目。尽管Jmeter是基于java的,它可以产生SOAP和XMLRPC类型的请求,有效地发挥一个Web services客户端的功能,来压力测试任何服务端的部署。

  在Jmeter中创建上述的压力测试的过程如下:

  1. 在Jmeter的主界面,将你的鼠标移动到Test Plan按钮上并点击右键。从弹出的菜单中选择:Add – Thread Group。Thread Group按钮将会被创建。

  2.定位在Thread Group按钮上左边的窗体中将会显示不同的参数。参数Number of threads 表示的是你的压力测试将会对你的服务仿效的请求的数。

  3.下一步,当鼠标在Thread Group按钮上点击右键,从弹出的菜单中选择:Add – Sampler – SOAP/XML-RPC Request。SOAP/XML-RPC请求按钮将会被创建。

  4.鼠标定位在SOAP/XML-RPC请求按钮,左边的窗体中将会显示不同的参数。有关于你的Web service的URL的介绍,以及你希望发出的每一个请求的载荷。

  5.当鼠标在SOAP/XML-RPC请求按钮上时,点击右键,从弹出的菜单中选择:Add – Listener – Monitor Results,和Add – Listener – View Results。两个显示压力测试结果的按钮将会生成。注意:如果需要,你可以添加更多的监听者,这是Jmeter进行压力测试结果的表示术语。

  6.保存你的测试,并从最高层的菜单中选择Run-Start选项开始你的压力测试。

  7.最后移动你的鼠标到每一个不同的Listener按钮上, 观察你在对你的Web service进行压力测试时获得的性能参数。

  和单元测试框架相类似的本质,解释Jmeter的许多复杂——或者任何其他压力测试工具的这方面的问题——将会超出本文的范围,但是Jmeter提供了全面可理解的并可自由获取的文档来解释不同的压力测试功能。

  我们总结我们对在Web services环境下单元测试和压力测试的认识,这是在很多的测试过程中你可以在你的面向服务设计中的两个方法,从而能够确保你的部署的完整性和可测量性。


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· 注册储存 SOA的核心问题 (05-23) · 数据集成:让SOA稳着陆 (05-23)
· 规划SOA(2)构建SOA路线图 (05-22) · 规划SOA(1)了解SOA (05-22)
· Iona:新Artix ESB 强调增量式SOA (05-22) · SOA:新衣裳还是美丽的谎言? (10-07)
· BEA发布统一门户战略 (05-17) · SOA提供竞争优势 (02-12)
· 技术巨人支持新的SOA编程模型 (06-24) · 面向服务架构SOA 软件产业新火种 (06-21)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
[政务][电信][金融][农业][制造业][中小企业]
[CIO][ERP][协同][IT管理][中间件][电子商务]
[政策][地方][专家][评估][辞典][博客][社区]
· 专题:一路畅通构想曲——让出行不再遭遇堵车
· CIO工作亲历:企业ERP选型不能忽视"选人关"
· 综述:信息化建设给中国监狱带来的各种变化
· 金融业风险管理和法规遵从有五点需考虑的因素
· 保险业CIO关注:该如何建立统一高效的CRM体系
· 调查显示:多数CIO对IT规划仍存在困惑和误解
  博客·论坛 ·曾剑秋·项立刚·Java学习·网管