论文部分内容阅读
面向服务的应用集成是服务计算的主要应用领域,服务组合是应用集成的关键技术之一。服务良好的复用性、灵活性和松耦合特征使得面向服务的计算成为一种具有里程碑意义的分布式计算技术,也使组合服务的演化和维护呈现了新的规律。BPEL组合服务是由BPEL流程、接口以及与流程交互的成员服务组成的有机整体,因此BPEL组合服务的演化也包括流程的变化、接口的变化和绑定的变化三个方面。
如何针对组合服务的特点制定符合其演化规律的回归测试方案,是一项值得深入研究的课题。现有的组合服务回归测试方法一般只对业务流程加以比较分析;而本文提出的基于XBFG(eXtensible BPEL Flow Graph)的组合服务回归测试用例选择与生成方法,能够从服务集成者的角度对包括业务流程在内的BPEL组合服务进行变更影响分析。本方法可以识别BPEL组合服务在演化过程中发生的更改,从而找到受流程、绑定、接口变化影响的测试路径,并使用选择性再测试技术生成回归测试用例集。这一过程是通过构造含有服务接口、路径条件等信息的扩展控制流图来实现的。
XBFG对BPEL流图进行了扩展,在控制流的基础上添加了消息流,可以完整地表达组合服务的行为。此外,XBFG模型元素中添加的绑定信息和谓词约束信息,可以用来选择测试路径、生成测试数据。
理论和实验分析表明,通过该方法产生的回归测试用例能够在组合服务流程、绑定以及与流程相关的接口发生变化的情况下达到较高的变更覆盖率。依据该方法设计的BPEL回归测试用例选择与生成工具RTGenius4BPEL实现了基于图形的路径比较和选择算法,提供了从服务建模到回归测试用例选择与生成的完整解决方案。