● 摘要
企业应用系统越来越多的构建在基于Web服务组合的业务流程之上,由于企业面临的业务需求和所处的业务环境经常变化,企业应用系统正式运行之前必须能够快速有效地在系统测试级别对系统业务流程进行测试。如何采用自动化测试手段验证企业应用系统业务流程的功能正确性是本文研究和解决的问题。本文在模型驱动测试的理论与技术的基础上,提出了一种模型驱动的Web服务业务流程测试用例生成的方法,通过对Web服务组合的业务流程和测试用例进行建模、自动生成可执行的测试脚本,以验证系统业务流程的功能正确性,提高测试的效率。本文采用BPEL(Business Process Execution Language)对业务流程建模,通过扩展U2TP(UML 2.0 Testing Profile)定义了测试用例元模型,为了支持BPEL模型到测试用例模型的转换,通过扩展UML2.0活动图定义了业务流程元模型,作为模型转换的中间形式;基于Eclipse平台开发了业务流程测试建模平台,支持测试人员对业务流程和测试用例的可视化建模,实现了BPEL模型到本文定义的业务流程模型的自动转换,实现了本文定义的业务流程模型到测试用例模型的自动转换,实现了适用于黑盒交互性测试的TTCN-3(Testing and Test Control Notation 3rd)测试脚本的自动生成。最后本文通过对银行系统贷款审批功能的测试,给出了根据业务流程的定义、通过模型转换生成的测试用例的测试结果,对本文提出的测试用例生成的方法进行了验证。本文的主要工作有:第一,定义了测试用例元模型,支持测试人员对测试交互和行为建模;第二,定义了描述业务交互和控制逻辑的业务流程元模型,作为中间形式实现了BPEL模型到测试用例元模型之间的转换,以及测试脚本的自动生成;第三,业务流程元模型的描述能力,支持对流程路径和数据依赖的模型检查;第四,测试用例元模型的描述能力,支持对测试场景的重用;第五,利用调用服务的接口规范定义的数据规格说明模拟了服务的输入输出,解决了系统业务流程测试过程中服务不可用的问题。