-
公开(公告)号:CN103218296A
公开(公告)日:2013-07-24
申请号:CN201310141769.0
申请日:2013-04-22
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开了一种充分检测空指针引用缺陷的方法,包括:基于抽象语法树识别出被测应用的全部可寻址表达式;根据控制流图对被测应用进行保守的区间运算与指针分析并根据区间运算与指针分析的结果,生成函数摘要;根据所述函数摘要以及抽象语法树识别出全部的指针引用以及被引用的指针,并对每个被引用的指针创建空指针引用缺陷状态机实例;基于控制流图运行空指针引用缺陷状态机实例,在控制流图的每个节点上,根据区间运算、指针分析的结果对每个缺陷状态机实例进行状态迁移,进行空指针引用检测。采用本发明,能有效解决空指针引用缺陷的漏报问题,实现空指针引用缺陷检测零漏报及低误报。
-
公开(公告)号:CN103207833A
公开(公告)日:2013-07-17
申请号:CN201310113328.X
申请日:2013-04-02
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开了一种软件测试中循环代码的处理方法,先依据程序控制流图,查找被测代码的循环体,确定当前循环体的循环体前子路径,再确定当前循环体的所有单条子路径,组合所述单条子路径为组合子路径,所述循环体前子路径与所述组合子路径的集合路径为可达时,确定所述组合子路径为当前循环体的确定子路径,确定所述循环体前子路径与所述确定子路径的集合路径为可达时,生成测试用例,并依据所述测试用例,执行被测代码,捕获所述当前循环体的实际执行路径,重复上述步骤,直至处理完被测代码的所有循环体。同时本发明还公开了一种软件测试中循环代码的处理系统。本发明灵活性高、能够节省人力成本、避免路径爆炸。
-
公开(公告)号:CN102073589B
公开(公告)日:2013-07-03
申请号:CN201010622730.7
申请日:2010-12-29
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开了一种基于代码静态分析的数据竞争检测方法及系统,该方法包括:读取待测软件,对待测软件源程序进行静态分析,生成待测软件的抽象语法树、控制流图、全局函数调用图;在此基础之上计算每个函数内部的别名信息、函数间出口别名信息、锁集合信息、函数内部访问可逃逸变量的访问链以及线程创建关系图;根据访问链计算每两个线程之间访问节点的初始化语句对集合;根据别名信息、锁集合信息、并发关系对该集合进行逐步删减得到最终可能发生数据竞争的语句对。本发明提供的检测方法与检测系统能对C/C++编写的多线程程序进行有效的数据竞争检测,具有测试精度高和自动化程度高的特点,适用于对两个线程或多个线程导致的数据竞争的检测。
-
公开(公告)号:CN102915271A
公开(公告)日:2013-02-06
申请号:CN201210426628.9
申请日:2012-10-31
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开了一种基于控制流图的单元回归测试用例集合优化方法,包括:A、在被测单元修改前后的控制流图中找出被修改部分对应的修改点;B、筛选出执行路径经过修改点的测试用例,作为回归测试用例集合的一部分即选择测试用例集Tselected,运行集合中的所有测试用例;C、计算修改点的所有可达后继节点,选出步骤B运行过程中未被覆盖的节点子集N;D、若N为空,执行步骤F,否则执行步骤E;E、从N中取出一个节点作为覆盖目标生成测试用例,将其加入新增测试用例集合Tnew并运行完毕,更新N,删除在此次运行中已被覆盖的节点,返回步骤D;F、回归测试用例集合TR构造完毕。应用本发明,能够提高回归测试的效率,并保证回归测试的有效性与充分性。
-
-
公开(公告)号:CN102419728A
公开(公告)日:2012-04-18
申请号:CN201110338915.X
申请日:2011-11-01
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明提供一种基于覆盖率量化指标确定软件测试过程充分性的方法,包括:A、对被测程序进行预编译、词法分析和语法分析,得到程序的抽象语法树、控制流图和函数之间的调用关系图,并根据用户测试需求,自动生成被测单元;B、根据覆盖准则,从所述抽象语法树和控制流图中提取被测单元中相应的待覆盖元素集合;C、根据所述的覆盖准则,在被测单元的程序中插入相应的探针函数;D、根据用户测试需求,选择系统自动执行或用户手动执行的方式对插入探针函数的被测单元进行动态测试;E、根据动态测试执行的返回信息,得到测试单元的被覆盖元素集合,并计算被测单元的覆盖率。应用该方法,能够提高软件评估测试的效率和准确性。
-
公开(公告)号:CN113791757B
公开(公告)日:2023-08-22
申请号:CN202110796925.1
申请日:2021-07-14
Applicant: 北京邮电大学
IPC: G06F8/10 , G06F40/205 , G06F40/30 , G06F18/22
Abstract: 本发明提供一种软件需求和代码映射方法及系统,方法包括:基于需求文档,根据需求文档语义特征提取模型,确定需求文本语义向量;基于源代码文本,根据源代码特征提取模型,确定源代码特征向量;其中,所述源代码特征向量包括:源代码文本语义信息和源代码功能语义信息;基于所述需求文本语义向量和所述源代码特征向量的相似度,确定所述软件需求和代码的映射关系。能够有效建立起从软件的需求到代码间的映射,利用此映射,提高相关的软件活动效率和质量。
-
公开(公告)号:CN102708053B
公开(公告)日:2017-10-20
申请号:CN201210127864.0
申请日:2012-04-27
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开了一种程序路径中确定函数调用的上下文环境影响的方法,该方法将返回值、被调用函数重定义的全局变量、指针或引用类型参数作为被调用函数的输出型变量,并采用路径敏感和上下文敏感的符号化区间运算技术,计算被调用函数在路径上各调用点输出型变量必需满足的上下文条件,最后根据该条件生成模拟替换函数,模拟替换函数根据各调用点的条件动态调整输出型变量的取值,保证程序按照目标路径执行。该方法可以用于自动化单元测试中面向路径的测试,包括面向全路径测试、面向子路径测试和面向目标测试等,实验证明,采用本发明所述方法,能够保证被测程序按照目标路径执行,并提高单元测试效率。
-
公开(公告)号:CN103914381B
公开(公告)日:2017-06-13
申请号:CN201410115283.4
申请日:2014-03-25
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明涉及一种生成时序安全属性类缺陷模式相关的函数摘要信息的方法,包括:判定被测程序中时序安全属性类的缺陷模式,并生成时序安全属性类缺陷模式的描述文件;根据所述描述文件获取所述时序安全属性类缺陷模式的有限自动状态机;根据所述有限自动状态机为所述被测程序中的函数生成函数摘要信息。本发明根据描述时序安全属性类缺陷模式的有限自动状态机为被测程序中的函数生成函数摘要信息,通过所述函数摘要信息进行软件静态测试,从而提高软件静态缺陷的检测效率。
-
公开(公告)号:CN103577324B
公开(公告)日:2017-01-18
申请号:CN201310524093.3
申请日:2013-10-30
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开一种移动应用中隐私信息泄露的静态检测方法,包括:首先检查代码的完备性,如果代码不完备则对源代码进行准备工作,加载隐私泄露对应的状态机描述文件,得到相关的状态机信息,对源代码进行编译,得到类和函数等的详细信息,对源代码进行预分析,生成抽象语法树等基本数据结构,得到函数间的调用关系。再以函数为单位进行检测分析,根据状态机中关联的方法来为各个状态机创建状态机实例,在函数对应的控制流图上进行状态机实例迭代,当状态机实例进入错误状态时,报告错误,在检测完成后人工对检测到的错误进行检查,确认检测结果。应用本发明能够有效检测不同操作系统平台的应用程序中存在的隐私泄露代码,有效防止用户隐私信息泄露。
-
-
-
-
-
-
-
-
-