在《实用SOA测试指南:挑战和路线图》中,我们介绍了SOA测试中所面临的挑战和SOA测试路线图。下面我们看一看要正确的实施SOA测试需要哪些东西。 SOA测试主要关注三个系统层次: 服务层:包括系统提供的服务,它们来自于业务功能的要求 流程层:包含了业务流程的实施层面。它们通常以复合型服务,计划安排和流程模型(协作)的形式存在。
这些流程也可能嵌入在用户界面,数据抽取、转换和装载(ETL)工具和领域模型中。我们应该主要关注在用户界面和流程层中实施的流程。 服务使用者:它们可以是其它服务和用户界面组件 在SOA测试过程中,第一步就是验证服务的功能性和非功能性需求。 下一步,……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
在《实用SOA测试指南:挑战和路线图》中,我们介绍了SOA测试中所面临的挑战和SOA测试路线图。下面我们看一看要正确的实施SOA测试需要哪些东西。
SOA测试主要关注三个系统层次:
服务层:包括系统提供的服务,它们来自于业务功能的要求
流程层:包含了业务流程的实施层面。它们通常以复合型服务,计划安排和流程模型(协作)的形式存在。这些流程也可能嵌入在用户界面,数据抽取、转换和装载(ETL)工具和领域模型中。我们应该主要关注在用户界面和流程层中实施的流程。
服务使用者:它们可以是其它服务和用户界面组件
在SOA测试过程中,第一步就是验证服务的功能性和非功能性需求。
下一步,我们要验证在流程层内实现的流程(也就是对所提供服务的集成测试)。服务和流程组件的验证就保证了我们有了一个可靠的服务提供层。
接下来的步骤是测试服务使用者。用户界面自动化是一种可行方式,也是改进回归测试的上佳选择。服务使用测试确保了整个系统栈能正常工作。SOA带来了对回归测试的巨大需求,鉴于此,这些测试都组织成回归测试套件,以保护他们免受破坏性的变化。
对于那些没有单独的流程层的系统来说,测试流程略有不同。这种情况下,流程被嵌入到用户界面及领域模型中。这时,测试的关键是测试服务及之后的服务使用者测试自动化,以验证流程和系统栈。这一过程如图2所示:
SOA测试流程在实施中的挑战
SOA测试流程难于实施,这是由于它需要复杂的支持工作流。举例来说,只有在提供服务的系统有正确的数据的情况下,回归测试才能正确的运行。测试数据的可追溯性和基于工作流的数据提供能力是能够运行回归测试套件的关键前提。另一个合适的例子是加快用户接口自动化的流程。许多流程都包含有重复性的步骤(比如用户登录和退出),这些都需要花费不少时间去执行。当你在很多测试用例中重复这些步骤时,在一个敏捷的SOA环境中改变它们可能就很有挑战性。在这个过程中的另一个挑战是,对那些按使用付费和不能访问的系统,测试起来也挺让人头疼。
让我们看一下辅助支持流程的以下方面:
1.提供基于工作流的数据供应,并满足数据完整性,数据波动,联合数据完整性已经数据屏蔽的要求:-专家的建议是采用测试数据管理(TDM)解决方案或系统虚拟化。
2.加速用户界面自动化:选择合适的工具或者开发一些框架,用来生成UI自动化脚本,并集中那些重复性的活动。这里可以提供的一个例子是Infosys公司的测试自动化加速器(ITAA)解决方案。
3.访问受限系统:使用服务虚拟化来减少使用那些需要按使用付费的系统和不能用于测试的系统。
4.持续集成测试的要求:使用能够监视版本库变化的测试工具。它们必须运行回归测试套件以避免破坏性的变化。在所有主要构建版本和发布版本上执行回归套件测试,以保证有效地测试覆盖率。
在《实用测试指南:测试自动化流程》中,我们将介绍SOA测试流程的一些其它方面以及SOA测试自动化流程。
相关推荐
-
如何在SOA中执行BPEL测试?
几乎所有面向服务架构(SOA)用户都在使用业务流程执行语言(BPEL)。作为编排粗粒度的业务流程流工具,BPEL实际上是行业的标准,但是还是会引起测试问题。
-
技巧:SOA应用三级测试法
测试面向服务架构(SOA)应用程序时,有三个级别的测试原则,从而成功进行测试,你知道都是什么吗?
-
SOASTA收购LogNormal意欲何为?
云和移动测试服务SOASTA已经收购了LogNormal,Web性能工具的制造者。SOASTA为什么要收购LogNormal?
-
性能测试:确保SOA应用的性能
SOA性能测试的重点是验证面向服务架构(SOA)方案在预期负载下能否满足业务对性能的要求。SOA压力测试的重点是确定SOA方案在它失败前所能承受的负载量——这里失败的定义是没有能力来满足一项或更多性能要求。