论文部分内容阅读
SOA系统的应用越来越广泛,对这类应用系统的测试愈加重要。业界公认Web服务是SOA的主流实现方式,因此当前对SOA系统测试的研究着重于对Web服务测试的研究。测试人员不仅关注Web服务的功能性测试,更加注重服务的结构化测试。本文主要是对Web服务的内部结构测试进行了相关的研究。通过对现有的SOCT(Service Oriented Coverage Testing,面向服务覆盖测试)方法的分析与研究,发现其存在如下的缺陷:①该方法仅仅对单个服务进行测试,但在SOA的实际应用中,这是不现实的。现实系统需要有多个服务共同为其服务,要测试这些服务,这就意味必须拥有更多的覆盖信息。②该方法中的TCov服务并不知晓具体的覆盖充分性准则,它仅仅能记录和报告覆盖数据,并不能推导出更加有意义的覆盖率;③探针获取覆盖信息的函数不够明确,需要重新定义探针函数;④覆盖收集服务CCS与可测服务的操作形式、覆盖报告服务CRS与SOCT测试者的交互形式在此方法中并未提及到,这限制了对TCov服务的理解。针对上述问题,本文做了如下的改进工作:①通过对覆盖测试过程的研究,提出了一种面向服务的测试覆盖分析器TCA,描述了TCA的原理和工作流程,并且定义了几种覆盖充分性准则。针对不同的测试覆盖准则,TCA会选择不同的测试覆盖工具,计算相应的服务逻辑覆盖率。②通过对面向服务探针的研究,定义了适用于该方法的探针函数和探针类型,并提出了面向服务的探针算法,以适应不同的覆盖准则。③详细描述了CCS和CRS服务的WSDL接口以及规约函数。通过接口函数使得服务之间的交互方式更加清晰明朗,进一步提高了SOCT方法的可行性。最后,将改进的SOCT方法应用到BPEL流程中。通过模拟实验得出结论:改进的SOCT方法更加具有灵活性和可行性。这些工作对于Web服务的内部结构的测试具有非常重要的理论与实践指导