软件测试反例,基于模型检测多反例对软件进行调试
摘要:
如今,模型检测已经普遍应用于对软件属性的检测中。模型检测技术含有高度的自动化性,当设计的系统违背规约时,模型检测器会返回一个源码级别的错误路径即反例,反例中包含了对应于违背规约的错误解释信息。通过对反例中的解释信息进行分析,我们可以得到系统为什么违背系统属性的错误原因,而这些分析将会给系统修复过程提供了重要的依据。 鉴于模型检测的诸多优点,在故障定位技术中应用模型检测技术已经成为一个研究热点。然而,复杂系统的反例往往显得非常的冗余和复杂,甚至让人觉得难以理解,这就使得我们需要花费大量时间来检查反例进而找出引发系统错误的起因。现在的模型检测器已经可以产生所有的反例,所以我们更希望能够利用多反例来查找系统中故障的位置,而不是只采用一个反例的信息。本文提出了距离度量技术和Tarantula技术在错误解释和故障定位上的拓展。 在以往的方法中,寻找故障用的是单反例,对于反例的选择也是没有依据的随意之举,通常会导致这个反例在故障定位中并不是一个好的选择。已知单独的反例在调试中可能对找出错误没有帮助,那些仅仅采用一个单独反例会由于信息的不确定性,在不断地尝试不同的反例中浪费大量时间,而多反例会给出清楚的线索来进行故障定位。在本文方法中,根据反例和成功执行路径集合以及利用距离度量技术和Tarantula技术,可以找出一个反例和它的最优路径。这个反例就是一个最佳选择,能够很好地让我们在特定信息线索中找出含有故障的谓词,再通过与最优路径对比就可以找出引起故障产生的原因。在Tarantula技术中,会提供一个在代码中声明可能成为故障的怀疑度高低的排名,这类信息就是找到基准反例的根据。 通常,在代码太多时会难以找出故障的位置,因而我们提出了一个在部分可疑代码中,基于距离度量分析对比进行故障定位的方法。对整个路径中代码的部分压缩区域进行分析可以提高效率和精确性。距离度量提供了寻找最优成功执行路径的技术,它是对应于反例来选择的。我们将这两种技术融合在一起,从而加快了找错的能力,同时,这种融合也更利于精确度上的提高。当然,最后我们也提出了仍然需要改进和加强的地方。
展开
软件测试反例,基于模型检测多反例对软件进行调试相关推荐
- 坐地铁软件测试自学,基于UML的地铁联锁软件测试用例生成方法的研究
摘要: 计算机联锁是保证列车安全运行的重要技术措施,对联锁逻辑的分析.测试.验证是满足苛刻需求条件的基础.联锁软件作为保证行车安全的重要设备,定期对其测试至关重要.基于模型的测试用例生成方法研究,可以 ...
- 线性时态逻辑ctl_基于决策过程的广义可能性时态逻辑模型检测
基于决策过程的广义可能性时态逻辑模型检测 [摘要]:随着计算机软硬件系统日益复杂,如何保证其正确性和可靠性,已成为大家广泛探讨的问题.模型检测由于其借助严格的数学方法来验证系统是否满足性质和自动化验证 ...
- windows10 基于Spin的模型检测
本博客主要讲述基于SPIN的模型检测的内容,转载请声明出处! 目录 一.SPIN概述 1.1 SPIN的历史背景 1.2 SPIN的应用 1.3 SPIN的特征 1.4基于SPIN的协议分析
- 软件测试智能化 优势,陈耿-软件测试的智能化之路-基于模型的测试实践.pdf
国际软件质量工程峰会 International Software Quality Engineering Forum 软件测试的智能化之路 -基于模型的测试实践 目录 • 自我介绍 • 什么是基于模 ...
- 助力质量生产,基于目标检测模型MobileNetV2-YOLOv3-Lite实现PCB电路板缺陷检测
在很多需要机械性重复性工作的场景中,使用AI技术来进行检测识别能够实现更高的效率以及更高的质量,比如:按键.测温.质控等等. 在前面的一些文章中,我也写过有关质量相关的检测类文中,今天的实践与此相关, ...
- 软件测试 atp,基于SCADE模型的车载ATP软件测试方法
摘要: 列车自动防护(Automatic Train Protection,ATP)是列控系统的核心,负责监控列车速度,防止列车超速,是典型的安全苛求系统.作为安全苛求系统,对车载ATP进行严格的测试 ...
- 服务医学,基于目标检测模型实现细胞检测识别
在我以往的认知里面,显微镜下面的世界是很神奇的存在,可能只平时接触到的绝大多数是都是宏观的世界吧,看到微观世界里面各色各样的生物.细胞就会觉得很神奇,电子显微镜往往都是医生来操作观察的,对于采样.病理 ...
- 模型检测工具汇总(比较全)
来源:http://www.yingzinanfei.com/2017/02/01/moxingjiancegongjuhuizong/ 面向形式化规格语言的模型检测工具 SMV(Symbolic M ...
- 【模型检测学习笔记】10:有限状态迁移系统上的IC3算法
IC3算法全称是Incremental Construction of Inductive Clauses for Indubitable Correctness,可以用来检测迁移系统上的不变性性质. ...
最新文章
- 论文《城市大脑的定义与建设规范探讨》在IEEE(ICBAIE)发表
- 多线程并发的解决方案 volatile synchronized notify notifyAll wait关键字分析
- BoneCP 学习笔记
- Spark学习之路 (二十二)SparkStreaming的官方文档
- Android Hal层简要分析
- 快速云原生化,从数据中心到云原生的迁移实践
- windows平台下:scikit-learn安装教程
- java中有界队列的饱和策略(reject policy)
- 数据仓库、数据湖、流批一体
- How is SAP CRM employee responsible being determined
- 互联网大佬马老师于昨日教师节正式卸任,让位现任CEO张勇;华为发布新一代CloudLink视讯解决方案,普惠4K+AI;联通……...
- 商城管理系统(前台+后台+管理员+用户+html+jsp)
- CVTE软件技术支持面试总结
- 主流编解码器(H.264 AVC, H.265 HEVC, VP8, VP9)比较
- DA14580蓝牙硬件系统总览(二)
- 【高级PDF库】上海道宁为您提供先进的.Net库,完全控制您的PDF创建工作流程,在WEB或任何服务器系统上创建动态PDF
- HDwiki+discuz在启用https下的整合问题
- JavaSE——Day1——计算机基础知识、Java语言基础、JRE与JDK
- html打印页标题行,打印标题行的设置方法
- 亚马逊、微软、谷歌,谁将是5000亿美元云市场的C位?