一种程序中不可达路径的静态检测方法

    公开(公告)号:CN102073587B

    公开(公告)日:2013-07-03

    申请号:CN201010622214.4

    申请日:2010-12-27

    Abstract: 本发明公开一种程序中不可达路径的静态检测方法,该方法包括:A、对待测试程序的函数单元进行词法分析、语法分析及语义分析,生成函数的控制流图;B、通过所述待测试程序中变量值范围的函数间分析得到被调用函数单元的函数摘要;C、在控制流图的入口和出口节点之间选取一条路径p,如果路径中含有循环语句节点,则采用进入循环体0次或1次的策略;D、从所述路径p的入口节点开始,计算各语句节点处的上下文状态;如果存在某节点的上下文状态中有变量取值为空的情况,则表示所述路径p为不可达路径,否则,为可达路径。应用本发明的方法,能够提高程序静态分析和测试用例生成的效率,以提高软件测试效率。

    一种选取路径的方法及装置

    公开(公告)号:CN102681939B

    公开(公告)日:2014-12-10

    申请号:CN201210150054.7

    申请日:2012-05-07

    Abstract: 本发明公开了一种选取路径的方法,包括:当确定为目标覆盖元素选取的初始路径为不可达路径,并且确定目标覆盖元素的重选路径为不可达路径时,利用保存的不可达路径为目标覆盖元素选出子路径,若检测出该子路径可达,则确定该子路径为目标覆盖元素的可达路径。本发明还同时公开了一种选取路径的装置,采用本发明能进行路径重选,提高单元测试的覆盖率。

    基于覆盖率量化指标确定软件测试过程充分性的方法

    公开(公告)号:CN102419728B

    公开(公告)日:2014-10-29

    申请号:CN201110338915.X

    申请日:2011-11-01

    Abstract: 本发明提供一种基于覆盖率量化指标确定软件测试过程充分性的方法,包括:A.对被测程序进行预编译、词法分析和语法分析,得到程序的抽象语法树、控制流图和函数之间的调用关系图,并根据用户测试需求,自动生成被测单元;B.根据覆盖准则,从所述抽象语法树和控制流图中提取被测单元中相应的待覆盖元素集合;C.根据所述的覆盖准则,在被测单元的程序中插入相应的探针函数;D.根据用户测试需求,选择系统自动执行或用户手动执行的方式对插入探针函数的被测单元进行动态测试;E.根据动态测试执行的返回信息,得到测试单元的被覆盖元素集合,并计算被测单元的覆盖率。应用该方法,能够提高软件评估测试的效率和准确性。

    循环语句中变量抽象取值的迭代求精方法

    公开(公告)号:CN102495800A

    公开(公告)日:2012-06-13

    申请号:CN201110400173.9

    申请日:2011-12-05

    Abstract: 本发明提供了一种循环语句中变量抽象取值的迭代求精方法,所述方法包括:根据控制流图CFG进行数据流迭代,得到上次迭代区间LastDomain;根据循环头节点LoopHead的循环条件进行循环语句块的数据流迭代,得到本次迭代区间ThisDomain;将LastDomain和ThisDomain进行加宽Widening操作。采用本发明公开的技术方案能够解决循环语句中变量抽象取值迭代计算收敛速度慢或不收敛的技术问题。

    一种选取路径的方法及装置

    公开(公告)号:CN102681939A

    公开(公告)日:2012-09-19

    申请号:CN201210150054.7

    申请日:2012-05-07

    Abstract: 本发明公开了一种选取路径的方法,包括:当确定为目标覆盖元素选取的初始路径为不可达路径,并且确定目标覆盖元素的重选路径为不可达路径时,利用保存的不可达路径为目标覆盖元素选出子路径,若检测出该子路径可达,则确定该子路径为目标覆盖元素的可达路径。本发明还同时公开了一种选取路径的装置,采用本发明能进行路径重选,提高单元测试的覆盖率。

    基于覆盖率量化指标确定软件测试过程充分性的方法

    公开(公告)号:CN102419728A

    公开(公告)日:2012-04-18

    申请号:CN201110338915.X

    申请日:2011-11-01

    Abstract: 本发明提供一种基于覆盖率量化指标确定软件测试过程充分性的方法,包括:A、对被测程序进行预编译、词法分析和语法分析,得到程序的抽象语法树、控制流图和函数之间的调用关系图,并根据用户测试需求,自动生成被测单元;B、根据覆盖准则,从所述抽象语法树和控制流图中提取被测单元中相应的待覆盖元素集合;C、根据所述的覆盖准则,在被测单元的程序中插入相应的探针函数;D、根据用户测试需求,选择系统自动执行或用户手动执行的方式对插入探针函数的被测单元进行动态测试;E、根据动态测试执行的返回信息,得到测试单元的被覆盖元素集合,并计算被测单元的覆盖率。应用该方法,能够提高软件评估测试的效率和准确性。

    一种程序中不可达路径的静态检测方法

    公开(公告)号:CN102073587A

    公开(公告)日:2011-05-25

    申请号:CN201010622214.4

    申请日:2010-12-27

    Abstract: 本发明公开一种程序中不可达路径的静态检测方法,该方法包括:A、对待测试程序的函数单元进行词法分析、语法分析及语义分析,生成函数的控制流图;B、通过所述待测试程序中变量值范围的函数间分析得到被调用函数单元的函数摘要;C、在控制流图的入口和出口节点之间选取一条路径p,如果路径中含有循环语句节点,则采用进入循环体0次或1次的策略;D、从所述路径p的入口节点开始,计算各语句节点处的上下文状态;如果存在某节点的上下文状态中有变量取值为空的情况,则表示所述路径p为不可达路径,否则,为可达路径。应用本发明的方法,能够提高程序静态分析和测试用例生成的效率,以提高软件测试效率。

Patent Agency Ranking