论文部分内容阅读
Web应用是一种复杂的、分布式的、多成分和多层结构的交互式应用,为用户提供了一种全新的部署软件服务的方式。它的复杂性、动态性、异构性等特性使得对Web应用的建模和测试都相当困难。基于模型的测试技术是实现对Web应用测试的有效途径,可以实现测试过程的自动化。通过模型抽取,可以获得体现Web应用某些方面特性的模型,为后续的Web应用验证提供输入。而且,应用模型检验技术对该模型进行验证,可以验证Web应用的实现是否满足用户的需求,系统是否具有所期望的性质,从而减少Web应用缺陷,保证和提高Web应用质量和可靠性。
本文以模型检验为目标,提出了一种Web应用FSM模型的抽取方法。该方法以Web应用程序的源代码为研究对象,采用逆向工程的思想,将模型抽取划分为信息提取、模型构建和结果显示三个部分。信息抽取从页面代码的标签入手,采取静态分析和动态执行相结合的方法,获取和解析Web页面,提取页面中与页面转换相关的信息,并提出了一种新的页面信息提取算法。
导航行为是Web应用的重要方面之一。我们对提取出的信息,以页面为单元,按照状态、迁移和事件等要素对其进行分析,对与页面导航相关的各种属性与触发条件等信息进行关联处理,然后进行信息重构和抽象,最后构建出适用于模型验证的Web应用系统的FSM模型,并使用SCXML语言对FSM模型进行了描述。
基于本文提出的方法,设计并实现了一个Web应用的FSM模型抽取工具WAME(Web Applications Model Extraction)。该工具可以自动分析一个Web应用系统内的Web页面,提取页面中链接、元素的属性等信息,以及构建FSM模型,并可以分别用文本和图形的方式对其进行描述。