-
公开(公告)号:CN110659199B
公开(公告)日:2021-07-30
申请号:CN201810696612.7
申请日:2018-06-29
Applicant: 中国矿业大学
IPC: G06F11/36
Abstract: 本发明提供一种基于传递依赖的类集成测试序列生成方法,包括下列步骤:1)构建类间传递依赖模型;2)计算控制耦合复杂度;3)计算测试桩复杂度;4)生成类集成测试序列。本发明解决了“目前方法生成的类集成测试序列的测试代价较高、生成大规模系统的类集成测试序列时所需时间过久”的问题,该发明不但能够在较短时间内生成测试代价较低的类集成测试序列,而且能够为测试人员提供多种可以选择的测试方案,提高了软件测试的效率,最终更好地控制了软件产品的质量。
-
公开(公告)号:CN106095661B
公开(公告)日:2018-12-28
申请号:CN201510631000.6
申请日:2015-09-29
Applicant: 中国矿业大学
IPC: G06F11/36
Abstract: 一种类集成测试中的环路破除方法,该破除方法包括构建完全对象关系图WORD、统计WORD中环路个数、破除WORD中环路;破除WORD中环路首先需要识别出WORD中由类以及它们之间的依赖关系形成的强连通组件SCCs,然后查找每一个强连通分量SCCi中所有的环路,统计SCCi中每条边所涉及的环路数目,进而将一个有环图破除环路成为一个无环图;该方法较全面地考虑面向对象的特点,如多态性、抽象类不可实例化以及类之间不同的继承关系,即公有继承,保护继承和私有继承这三种不同的继承关系等特点对破除环路的影响,提供了较好的静态依赖关系和动态依赖关系构成的环路中边的删除规则,降低了测试成本,提高了测试的准确度。
-
公开(公告)号:CN104461883B
公开(公告)日:2017-11-14
申请号:CN201410728471.4
申请日:2014-12-03
Applicant: 中国矿业大学
IPC: G06F11/36
Abstract: 本发明涉及一种基于程序执行轨迹的过程间动态程序切片系统,具体方法依据以下五步进行:轨迹分析,首先利用调试器的信息记录程序执行轨迹,找出该次执行中涉及的类和方法;类层次分析,对涉及的类建立类层次图;程序调用分析,在类层次图的基础上建立计算方法的调用信息;控制依赖分析,同时计算涉及方法的控制依赖;程序切片,根据求得的所有信息计算得到程序切片,该系统大大提高了算法的效率,根据调用关系、控制依赖关系提高了切片的精度。根据调用关系,过程间信息的传递称为可能,从而可以对程序进行过程间动态程序切片。
-
公开(公告)号:CN106095661A
公开(公告)日:2016-11-09
申请号:CN201510631000.6
申请日:2015-09-29
Applicant: 中国矿业大学
IPC: G06F11/36
Abstract: 一种类集成测试中的环路破除方法,该破除方法包括构建完全对象关系图WORD、统计WORD中环路个数、破除WORD中环路;破除WORD中环路首先需要识别出WORD中由类以及它们之间的依赖关系形成的强连通组件SCCs,然后查找每一个强连通分量SCCi中所有的环路,统计SCCi中每条边所涉及的环路数目,进而将一个有环图破除环路成为一个无环图;该方法较全面地考虑面向对象的特点,如多态性、抽象类不可实例化以及类之间不同的继承关系,即公有继承,保护继承和私有继承这三种不同的继承关系等特点对破除环路的影响,提供了较好的静态依赖关系和动态依赖关系构成的环路中边的删除规则,降低了测试成本,提高了测试的准确度。
-
公开(公告)号:CN102968372B
公开(公告)日:2016-05-11
申请号:CN201210495957.9
申请日:2012-11-29
Applicant: 中国矿业大学
IPC: G06F11/36
Abstract: 本发明涉及一种具有程序分析功能的程序调试系统,该程序调试系统的调试步骤包括与目标虚拟机建立连接、标准调试及扩展调试;该程序调试系统不再局限于传统的程序调试方式,使调试不再仅仅只是分析程序当前的运行状态,调试人员可以查看程序完整的执行过程,方便的调试和理解程序;该程序调试系统还可以记录程序一次执行中的应用类和应用方法,可以降低调试人员的关注范围;本系统进行动态程序切片时不需对程序进行回溯,且只对程序执行过程中涉及的方法进行控制依赖分析,能够提高算法的效率,根据堆栈信息和控制依赖关系能够提高切片的精度。
-
公开(公告)号:CN102789420A
公开(公告)日:2012-11-21
申请号:CN201210256470.5
申请日:2012-07-24
Applicant: 中国矿业大学
IPC: G06F11/36
Abstract: 本发明涉及一种基于程序执行轨迹的动态切片系统,包括系统获得程序的执行路径信息、对Java的.class文件进行静态分析、对程序执行轨迹中每个序列的每条语句的附加变量集进行分析、对源程序中每条语句直接控制依赖结点的获取、对程序执行轨迹中每个序列的每条语句进行附加控制依赖工作及完成对Java过程内程序进行动态切片的功能。在程序切片的过程中不需要对程序进行回溯,大大提高了算法的效率,根据控制依赖关系和变量的定义引用信息提高了切片的精度。
-
公开(公告)号:CN118779218A
公开(公告)日:2024-10-15
申请号:CN202410792370.7
申请日:2024-06-19
Applicant: 中国矿业大学
Abstract: 本发明公开一种融合强化学习和模拟退火策略的类集成测试序列生成方法,首先对程序进行静态分析以获取类间耦合信息,计算属性复杂度、方法复杂度以及测试桩复杂度;其次,设计强化学习场景,构建测试成本矩阵,将类与类之间的关系建模为与智能体交互的环境;然后,设计动作探索策略,采用基于模拟退火的探索策略来进行智能体动作的选择;最后,利用Sarsa算法对智能体进行训练,通过智能体与环境的不断交互学习最优策略,当学习过程结束,得到一个最优的类集成测试序列;本发明能够有效地降低类集成测试序列的总体测试桩复杂度,在不同待测程序上多次生成解的稳定性也得到了提升,提高软件测试的效率,更好地控制了软件产品的质量。
-
公开(公告)号:CN108399127B
公开(公告)日:2020-06-23
申请号:CN201810140091.7
申请日:2018-02-09
Applicant: 中国矿业大学
Abstract: 本发明提供一种类集成测试序列生成方法,包括下列步骤:1)从面向对象系统的源代码获取所有类及类间关系;2)从面向对象系统的UML设计文档中的类图获得类优先级表;3)通过遗传算法自动生成类集成测试序列。重复该过程,最后得到一组最优(构建测试桩所花费的测试代价最小)的类测试序列结果。本发明在一定程度上解决了类集成测试序列问题中初始种群没有任何约束条件,初始种群整体质量较差,进而影响收敛速度及寻优结果的问题以及个体评价标准的片面性和不合理性所导致的寻优效果不够准确的问题。不仅提高了种群整体质量,加快了收敛速度,而且加强了遗传算法的寻优能力,提高了寻优的准确性,进而提高了测试效率和精度,更能满足实际需要。
-
公开(公告)号:CN110764989A
公开(公告)日:2020-02-07
申请号:CN201810823017.5
申请日:2018-07-25
Applicant: 中国矿业大学
IPC: G06F11/36
Abstract: 本发明涉及一种基于化学反应优化的错误定位方法,包括以下步骤:(1)软件行为图构建;(2)软件行为图约简;(3)分子种群初始化;(4)最优分子种群搜索;(5)错误定位。该方法对源程序插桩,执行测试用例收集程序执行路径信息,构造软件行为图并进行约简,然后定义化学反应优化分子结构和解空间,初始化反应分子种群,之后选取合适适应度函数利用化学反应优化迭代搜索最优分子种群;最终将种群中的分子转化为程序状态上下文进行错误定位。本发明目的在于提供错误相关的程序上下文信息,利于开发人员理解执行失效的原因,进而定位和修复错误,提高了程序调试效率。
-
公开(公告)号:CN110659199A
公开(公告)日:2020-01-07
申请号:CN201810696612.7
申请日:2018-06-29
Applicant: 中国矿业大学
IPC: G06F11/36
Abstract: 本发明提供一种基于传递依赖的类集成测试序列生成方法,包括下列步骤:1)构建类间传递依赖模型;2)计算控制耦合复杂度;3)计算测试桩复杂度;4)生成类集成测试序列。本发明解决了“目前方法生成的类集成测试序列的测试代价较高、生成大规模系统的类集成测试序列时所需时间过久”的问题,该发明不但能够在较短时间内生成测试代价较低的类集成测试序列,而且能够为测试人员提供多种可以选择的测试方案,提高了软件测试的效率,最终更好地控制了软件产品的质量。
-
-
-
-
-
-
-
-
-