Web应用的验证与测试方法研究

Web应用的验证与测试方法研究

论文摘要

Internet的普及以及分布式计算、基于构件的开发和Web Services等技术的迅速发展和应用使Web应用渗透到国计民生的各个领域。Web应用的质量将直接影响人们的生活和工作。验证与测试是保证软件质量的最基本和最重要的手段。然而,Web应用是一种具有多层结构的分布式系统,异构性、动态性、连接的多样性和控制流程的可变性等特性给Web应用的验证和测试带来了严峻的挑战,必须改进传统的或提出新的验证和测试方法以适应Web应用的新特性。模型检验是一种自动化的、基于模型的性质验证方法,广泛应用于有限状态系统的自动验证。它通过有效地搜索有限状态模型的整个状态空间判定性质是否得到满足,在系统不满足性质时提供的反例可以用于诊断系统的错误。测试的目的在于发现系统的实际行为与预期行为是否存在不一致。传统的手工测试是低效的、易出错的、盲目的和不可再生的,并且受制于测试工程师的创造力。应用模型检验技术实现测试的自动化是当前的一个研究热点。使用模型检验自动生成测试用例的关键在于构造能使模型检验器输出反例的陷阱性质,然后从反例构造测试用例。论文以模型检验器SMV为形式验证工具,主要研究在模型检验的统一框架下Web应用的形式验证和功能测试方法。Web应用客户端的功能主要体现在它的导航行为,Web应用的质量的一个重要方面是导航行为的一致性和安全性。论文给出了用对象联系图描述导航相关对象以及对象间联系的结构建模方法,提出了用Kripke结构进行导航的行为建模的形式化方法并分别从验证角度和测试角度定义了导航行为与对象联系图之间的一致性关系。在此基础上,提出了基于模型检验的导航行为的一致性验证方法和一致性测试方法,设计了从Kripke结构到SMV程序的转换算法,并分别实现了导航行为的验证原型与测试原型。此外,根据常用的导航安全策略,给出了导航行为的安全性验证方法。Web应用服务器通过构件的组合提供业务逻辑和应用服务,形式验证构件组合的行为是保证Web应用质量的一个有效手段。针对构件组合验证的状态爆炸问题,论文结合组合推理和反例引导的抽象精化思想,提出了组合式的抽象精化方法并设计了相应的检验算法,使构件组合的模型检验转化为各成分构件的局部抽象精化。提出并证明了组合确认定理,使构件组合上的反例确认转化为各构件上的反例投影确认。构件组合的一个验证问题是组合行为是否隐含了不安全的行为?论文提出了一种新的描述构件交互行为的模型:构件消息自动机。基于监控理论的可控性概念,设计了一个验证构件组合行为安全性质的算法。对象(网页或构件)是Web应用导航和构件组合的基础。结合模型检验技术和数据流测试准则,论文提出了Web应用对象的自动测试生成方法。在对象的源代码不可用的情况下,对象的动态状态行为用对象状态机建模,然后被转换为描述控制流和数据流信息的对象流图。提出了基于数据流测试准则的陷阱性质生成方法,通过在对象流图上模型检验这些陷阱性质自动产生对象的数据流测试用例,实现了一个基于模型检验的对象数据流测试原型。用模型检验自动产生测试的一个缺陷是模型检验往往会产生大量冗余的反例。为此,论文提出了一种on-the-fly测试优化方法并设计了优化算法。当模型检验产生一个新反例时,一方面用新反例检测未检验的性质以消除冗余性质,另一方面比较现有测试集以消除冗余测试。

论文目录

  • 摘要
  • Abstract
  • 第1章 绪论
  • 1.1 Web应用的特性
  • 1.2 形式验证
  • 1.3 Web应用的形式验证
  • 1.4 测试
  • 1.5 Web应用的测试
  • 1.6 论文的主要研究内容
  • 第2章 模型检验技术及其进展
  • 2.1 Kripke结构
  • 2.2 线性时态逻辑LTL
  • 2.3 计算树逻辑CTL
  • 2.4 模型检验优化技术
  • 2.5 模型检验工具
  • 2.6 模型检验与测试或定理证明的结合
  • 2.7 小结
  • 第3章 Web应用导航行为的验证
  • 3.1 引言
  • 3.2 Web应用建模
  • 3.2.1 设计模型
  • 3.2.2 导航模型
  • 3.3 导航行为的一致性
  • 3.3.1 节点覆盖
  • 3.3.2 边覆盖
  • 3.3.3 边组合覆盖
  • 3.4 导航行为的安全策略
  • 3.5 导航行为验证原型
  • 3.6 SMV程序生成器
  • 3.7 性质检验
  • 3.8 小结
  • 第4章 构件组合的抽象精化验证
  • 4.1 引言
  • 4.2 构件组合的形式建模
  • 4.3 抽象
  • 4.4 反例确认和精化
  • 4.4.1 抽象反例的有效性
  • 4.4.2 组合式反例确认
  • 4.5 抽象精化
  • 4.6 验证算法
  • 4.7 实例研究
  • 4.8 相关工作
  • 4.9 小结
  • 第5章 构件组合的安全性验证
  • 5.1 引言
  • 5.2 自动机
  • 5.3 构件交互建模
  • 5.3.1 构件消息自动机
  • 5.3.2 构件组合
  • 5.4 可控性验证
  • 5.4.1 可控性(Controllability)
  • 5.4.2 可控性的基本验证算法
  • 5.4.3 实例研究
  • 5.5 小结
  • 第6章 基于模型检验的测试与优化
  • 6.1 引言
  • 6.2 使用模型检验器产生测试
  • 6.2.1 SMV的反例
  • 6.2.2 基于测试准则的性质生成
  • 6.3 测试优化
  • 6.3.1 测试树(Test-tree)
  • 6.3.2 测试树生成
  • 6.4 小结
  • 第7章 基于模型检验的Web应用测试
  • 7.1 引言
  • 7.2 相关工作
  • 7.3 导航行为的测试
  • D到WAN的转换'>7.3.1 从WAD到WAN的转换
  • 7.3.2 导航性质的生成
  • 7.3.3 实例研究
  • 7.4 基于数据流的Web应用测试
  • 7.4.1 对象状态机OSM
  • 7.4.2 对象流图OFG
  • 7.4.3 标记OFG
  • 7.4.4 数据流陷阱性质的生成
  • 7.5 小结
  • 第8章 结束语
  • 8.1 主要贡献
  • 8.2 将来的工作
  • 参考文献
  • 附录1 SGRS导航模型的SMV程序
  • 附录2 SMV输出的反例
  • 作者在攻读博士学位期间发表的论文与译著
  • 作者在攻读博士学位期间参与的科研项目
  • 致谢
  • 相关论文文献

    • [1].基于模型检验的分级调度系统参数生成方法[J]. 西北工业大学学报 2019(06)
    • [2].有界模型检验综述[J]. 电脑知识与技术 2017(35)
    • [3].基于吴方法的多值模型检验[J]. 系统科学与数学 2008(08)
    • [4].房价大数据分析模型检验方法[J]. 教育教学论坛 2017(17)
    • [5].应用吴方法进行高层次定界模型检验[J]. 计算机辅助设计与图形学学报 2008(02)
    • [6].信息物理融合系统控制软件的统计模型检验[J]. 软件学报 2015(02)
    • [7].次贷危机背景下我国房地产市场的政策干预与模型检验[J]. 经济研究导刊 2020(24)
    • [8].PSL的有界模型检验[J]. 电子学报 2009(03)
    • [9].基于不对称区间估计的有调节的中介模型检验[J]. 心理科学进展 2014(10)
    • [10].ETL的符号化模型检验[J]. 软件学报 2009(08)
    • [11].异步FIFO的模型检验方法[J]. 计算机科学 2012(03)
    • [12].Andrew Secure RPC协议的一种组合分析方法[J]. 四川理工学院学报(自然科学版) 2008(04)
    • [13].无界模型检验中融合电路信息的SAT算法研究[J]. 计算机学报 2009(06)
    • [14].基于影响民众参与轻松筹捐款的因素分析[J]. 现代营销(经营版) 2019(09)
    • [15].地理实践力的维度解构和模型检验[J]. 中学地理教学参考 2018(23)
    • [16].形式化方法在机载电子硬件研制中的应用研究[J]. 电子技术应用 2015(06)
    • [17].基于SPIN内核的SDL模型检验工具设计[J]. 电脑知识与技术 2010(11)
    • [18].基于有界限模型检验的服务建模与自动组合[J]. 计算机工程与设计 2011(12)
    • [19].市场调查预测之一元线性回归分析方法[J]. 中外企业家 2019(13)
    • [20].人民币汇率政策变动对我国商业银行人民币跨境业务的影响——基于VAR模型检验分析[J]. 洛阳理工学院学报(社会科学版) 2017(02)
    • [21].中断驱动控制系统的有界模型检验技术[J]. 软件学报 2015(10)
    • [22].基于领域知识的模型检验方法[J]. 系统工程与电子技术 2008(08)
    • [23].运行时验证及其应用[J]. 电脑编程技巧与维护 2014(20)
    • [24].模型检验技术的研究与应用[J]. 电子质量 2008(02)
    • [25].应用多元线性回归模型的铁路客运量预测[J]. 重庆理工大学学报(自然科学) 2018(09)
    • [26].一种基于模型检验程序分析技术的前端工具研究[J]. 计算机科学 2010(05)
    • [27].模型检验在航天测控软件上的应用研究[J]. 计算机科学 2018(S1)
    • [28].运行时验证及其在列车运行控制系统中的应用[J]. 铁道学报 2011(12)
    • [29].影响我国FDI吸收因素的多元回归检验[J]. 市场周刊(理论研究) 2018(02)
    • [30].基于敏感位置识别的状态化简技术研究[J]. 电子与信息学报 2013(03)

    标签:;  ;  ;  ;  ;  

    Web应用的验证与测试方法研究
    下载Doc文档

    猜你喜欢