`
sunxboy
  • 浏览: 2880832 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

SOA,测试人员的噩梦?

阅读更多
对于IT人员来说,SOA已经不仅仅是一种技术,它代表了一种新的,更加宏观的设计和实施IT系统的方法论。那么对于整个IT系统的实施过程来说,每一个步骤都按照SOA的角度来考虑,来实施就成为了SOA项目实施过程中的重点和难点。
 
接口开发的发展促成了SOA的发展,SOA的诸多优势之中接口规范的标准化是比较突出的一个。从EAI发展到SOA 的ESB,从各种不同的接口标准一统的Web Service,我们看到接口开发的演进过程,标准化、规范化的过程。
在SOA 这种新的架构和设计思想下,接口合约(Interface contract)成为约束服务提供方和服务消费方的手段。对于开发人员来讲合约会转换为WSDL或者IDL这样的定义文件。有了这样的定义文件,提供方 和消费方的开发人员就可以并行的开发。在这种新的开发方式,大量的服务可以有效的复用,开发的效率和开发的服务都可以有效的扩展;在这种方式下,可以把某 些任务分配另外的公司和合作伙伴。从这种方式来讲,SOA也方便了软件外包和离岸开发。
然而,中国有句老话叫“兴一利必生一弊”,这种开发模式下对于测试人员来讲会有新的挑战。
 
首先,通过接口合约分配给不同开发商的服务,这些开发商内部如何有有效的机制来保证开发接口的质量和对于服务规范(SLA)的满足程度。
第二,在服务组装阶段(一个典型的例子就是BPM的流程的开发就会有这样的阶段),如何有效的保证测试的顺利进行。
 
第一个阶段,服务开发阶段的功能测试(接口测试)。
有EAI 系统或者接口系统开发经验的人都有知道接口的测试是一个比较繁琐和效率低下的过程。SOA规范了接口算是改进了一大步,但是它也没有解决接口测试的根本问 题。对于开发和管理者来说,在集成测试之前,保证每个服务的功能测试都是很痛苦的,需要大量的工作。但是对于基于SOA的设计和实现来说,这么做会屏蔽组 装(Assembly)阶段更大的,更具破坏性的风险。
我们知道接口合约在现实项目中往往是word文档或者excel格式的文 档。对于很多技术实现的细节并没有描述,比较理想的情况下是有比较准确和细化的接口定义文件WSDL。在有了WSDL文件的基础上,我们可以制作一些服务 的simulator或者客户端的simulator来模拟服务的调用和执行,但是如何有效的覆盖到所有的业务逻辑,就需要测试人员和业务需求人员科学严 谨的工作了。
接口开发有个金科玉律,不要把问题留集成测试。问题越早发现越好。
第二个阶段,服务的集成测试阶段(System Integration Test或Assembling Test)
在 IBM对于SOA的实施过程的方法论描述中,有一个叫做Assemble的阶段。这个阶段就对于Service Testing有着详细的描述。但是在我看来,这些描述反应的问题就是对于真实的商业环境来讲对于SLA的理解是这个阶段测试的重点。
这 个阶段还会涉及到各个厂商的协同测试,因为对于跨多个公司开发服务的集成测试来讲,如何协调这些不同的组织,或者说利用什么样的工具和手段提供集成测试的 效率,也是现阶段各个厂商和大的集成公司在相关的SOA文档和规范中没有涉及的。因此对于测试人员来说,细节的工作不好做,也缺乏整体的方法论指导的情况 下,如何不能说测试人员会进入一个SOA测试的黑洞呢?
分享到:
评论

相关推荐

    soa专业人员指南(全)

    为了帮助 开发共享语言和有关SOA的知识集,一群SOA专业人员创建了《SOA专业人员指南》这个文档系列。在 这个文档系列中,这些SOA专家描述并评注了一些与SOA相关的最佳实践和关键知识,以帮助其他公 司迎接...

    基于SOA的测试用例库的设计

    ### 基于SOA的测试用例库设计的关键知识点 #### SOA概念与特性 - **SOA定义**:SOA(面向服务的架构)是一种软件架构设计思想,它强调将应用程序的不同功能模块化为独立的服务。这些服务可以通过网络进行通信和交互...

    IBM_SOA_产品和解决方案综述

    第一部分:IBM SOA 产品和解决方案综述 3 针对客户 3 市场状况 3 业界观点 3 业界对SOA的总体观点是 3 不同行业客户价值范例 4 为什么选择IBM? 4 为什么选择IBM的SOA? 4 独一无二的竞争优势 4 IBM销售的产品 5 SOA...

    理解SOA管理:您的SOA中都有什么?

    火龙果软件工程技术中心 摘要为什么要关注SOA管理?首先提出这样一个问题:现在您知道您的服务在哪里、在做什么吗?它们是在为更优化的敏捷、迅速响应的业务做着贡献吗?还是已经导致了一个根本无法管理的阻碍?要...

    REST会是SOA的未来吗?

    好像无论我们到哪儿都能听到这样的说法:REST将会是SOA的未来。很多刊物也将REST和SOAP与WS*[1]标准进行比较,但这些比较看起来都太过简单了。近来出现了两种较为主流的方法——本真REST(trueREST)以及将REST作为...

    SOA从业人员指南 SOA入门资料

    本指南将深入探讨SOA的核心概念、优势以及实施策略,帮助从业人员快速入门SOA的世界。** ### 第一章:SOA基础 1. **定义与理念**:SOA是一种架构风格,它将业务功能分解为可重用的服务,这些服务可以通过标准接口...

    什么是SOA?

    ### 什么是SOA? 服务导向架构(Service-Oriented Architecture,简称SOA)是一种软件设计方法,它将应用程序的不同功能单元(称为服务)通过服务之间的良好定义接口联系起来。服务接口通常是采用中立的方式进行...

    SOA专业人员指南(2 部分 soa 参考架构) pdf

    《SOA专业人员指南》第二部分深入探讨了SOA的参考架构,为IT专业人士提供了一个全面的视角,以理解和实施SOA。 ### SOA参考架构概述 SOA参考架构是SOA实施的关键组成部分,它为构建和部署服务提供了一种结构化的...

    SOA专业人员指南(包括三部分)

    **SOA(面向服务的架构)专业人员指南** 在当今的IT行业中,SOA是一种流行的架构风格,它提倡将业务功能作为独立的服务进行构建和管理,以实现灵活、可重用和可组合的系统。本指南分为三个部分,旨在帮助专业人士...

    解读SOA :SOA实践方法论

    解读SOA Interpret SOA SOA越来越被企业接受,很多公司都准备规划SOA。但具体怎么上,没有一套很好的方法论是不行的。资料是IBM在长期的摸索中总结的一套SOMA方法论,由于是内部培训资料,所以比较难得。 内容 ...

    SOA专业人员指南

    在执行计划方面,文档建议实施SOA项目时需要考虑业务和技术两个方面,确定支持业务需求的关键服务、实施必要的基础架构和安全措施、以及进行服务的测试和部署。 为了避免从SOA进入“死亡状态”(DOA),文档中提到...

    AgileEAS.NET SOA 平台简易教程

    3. **AgileEAS.NET的SOA实现**:在AgileEAS.NET中,开发人员可以创建、管理和部署SOA服务。平台提供了服务注册、服务发现、服务版本控制和安全管理等机制,确保服务之间的有效通信。 4. **EasDemo项目**:EasDemo...

    soa专业人员指南

    【SOA专业人员指南】是一本深度探讨服务导向架构(Service-Oriented Architecture,简称SOA)的专业资料,旨在帮助IT专业人士理解并掌握SOA的核心理念、设计原则以及实施策略。SOA是一种软件架构风格,它提倡将业务...

    SOA专业人员指南,能够作为所有SOA相关人员的标准参考百科全书。

    《SOA专业人员指南》包含三个单独的部分。 本文档(《为何使用面向服务的架构?》)是第1部分,它为SOA提供了一个高级摘要。 第2部分《SOA参考架构》提供企业级SOA实现的工作设计,包括详细的架构图、组件描述、详细...

    什么是 SOA?

    面向服务的体系结构(Service-Oriented Architecture,简称SOA)是一种现代的IT架构风格,它的核心理念是将企业的业务逻辑和功能分解为独立、可重用的服务,这些服务可以通过网络进行互操作,以实现跨系统的协作。...

    SOA专业人员开发指南系列2

    《SOA专业人员开发指南系列2》是一份深入探讨面向服务架构(Service-Oriented Architecture,简称SOA)的专业文档,旨在为SOA从业人员提供全面的指导。文档分为三大部分,涉及SOA的概述、参考架构和服务生命周期管理...

    SOA专业人员指南1

    ### SOA专业人员指南1:为何使用面向服务的架构? #### 一、引言 面向服务的架构(Service-Oriented Architecture,简称SOA)作为一种先进的软件设计模式,旨在通过松耦合的服务来构建和集成应用程序。随着企业...

Global site tag (gtag.js) - Google Analytics