-
公开(公告)号:CN103914381A
公开(公告)日:2014-07-09
申请号:CN201410115283.4
申请日:2014-03-25
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明涉及一种生成时序安全属性类缺陷模式相关的函数摘要信息的方法,包括:判定被测程序中时序安全属性类的缺陷模式,并生成时序安全属性类缺陷模式的描述文件;根据所述描述文件获取所述时序安全属性类缺陷模式的有限自动状态机;根据所述有限自动状态机为所述被测程序中的函数生成函数摘要信息。本发明根据描述时序安全属性类缺陷模式的有限自动状态机为被测程序中的函数生成函数摘要信息,通过所述函数摘要信息进行软件静态测试,从而提高软件静态缺陷的检测效率。
-
公开(公告)号:CN103914379A
公开(公告)日:2014-07-09
申请号:CN201410114863.1
申请日:2014-03-25
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明涉及一种故障自动注入与故障检测的方法及其系统,该方法包括:S1,对被测文件进行故障自动化注入,进行分析并生成多个故障文件;S2,对所述多个故障文件分别进行处理,生成多个可执行文件;S3,根据所述被测文件选择特定的用例库,将所述用例库中的用例逐一在所述每个可执行文件上运行,进行故障检测,并计算故障检测率。本发明使用源代码故障注入的方法,可以加速错误的发生,进而判断出软件中是否存在故障,并且检错能力强,尤其对于一些小概率错误具有较好的测试效果。
-
公开(公告)号:CN103577324A
公开(公告)日:2014-02-12
申请号:CN201310524093.3
申请日:2013-10-30
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开一种移动应用中隐私信息泄露的静态检测方法,包括:首先检查代码的完备性,如果代码不完备则对源代码进行准备工作,加载隐私泄露对应的状态机描述文件,得到相关的状态机信息,对源代码进行编译,得到类和函数等的详细信息,对源代码进行预分析,生成抽象语法树等基本数据结构,得到函数间的调用关系。再以函数为单位进行检测分析,根据状态机中关联的方法来为各个状态机创建状态机实例,在函数对应的控制流图上进行状态机实例迭代,当状态机实例进入错误状态时,报告错误,在检测完成后人工对检测到的错误进行检查,确认检测结果。应用本发明能够有效检测不同操作系统平台的应用程序中存在的隐私泄露代码,有效防止用户隐私信息泄露。
-
公开(公告)号:CN102110051B
公开(公告)日:2014-02-05
申请号:CN201010624200.6
申请日:2010-12-31
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开一种应用程序切片技术的静态缺陷检测方法,包括:A.获取待检测缺陷模式的缺陷特征;B.根据所述的缺陷特征,计算所有分支节点的路径条件,并生成切片准则;C.按照所述的切片准则,遍历控制流图进行程序切片,对控制流图进行重构,得到已重构的控制流图;D.利用所述已重构的控制流图,应用缺陷状态迭代算法,进行缺陷模式状态机计算;E.若当前控制流图节点为非汇合节点,则将所有缺陷状态中的状态条件进行汇聚及更新操作;F.如果当前控制流图节点为汇合节点,则按照当前缺陷状态的状态条件进行状态合并。采用该方法能够在一定程度上提高缺陷检测的效率,并减少基于路径合并策略的路径敏感检测方法的误报。
-
公开(公告)号:CN102073587B
公开(公告)日:2013-07-03
申请号:CN201010622214.4
申请日:2010-12-27
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开一种程序中不可达路径的静态检测方法,该方法包括:A、对待测试程序的函数单元进行词法分析、语法分析及语义分析,生成函数的控制流图;B、通过所述待测试程序中变量值范围的函数间分析得到被调用函数单元的函数摘要;C、在控制流图的入口和出口节点之间选取一条路径p,如果路径中含有循环语句节点,则采用进入循环体0次或1次的策略;D、从所述路径p的入口节点开始,计算各语句节点处的上下文状态;如果存在某节点的上下文状态中有变量取值为空的情况,则表示所述路径p为不可达路径,否则,为可达路径。应用本发明的方法,能够提高程序静态分析和测试用例生成的效率,以提高软件测试效率。
-
公开(公告)号:CN102999426A
公开(公告)日:2013-03-27
申请号:CN201210506230.6
申请日:2012-11-30
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明提供了一种基于抽象内存模型的非数值型数据的计算方法,包括:A、设计抽象内存模型用于模拟数值型变量和非数值型变量的内存结构,以及存储变量操作中包含的语义信息和约束关系;B、提取数值型变量和非数值类型变量的类型操作中包含的语义信息,并将语义信息映射到抽象内存模型中;C、提取数值型变量和非数值类型变量的类型操作中包含的变量间约束和变量内约束,并将约束关系映射到抽象内存模型;D、从抽象内存模型中提取变量的语义信息和约束关系,使用测试用例构建算法和第三方的约束求解器构建测试用例。采用本发明,可以克服现有技术无法精确支持非数值型变量程序语义的不足,实现包含非数值型的程序自动生成测试用例的目的。
-
公开(公告)号:CN101894064B
公开(公告)日:2013-01-02
申请号:CN200910084547.3
申请日:2009-05-21
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开了一种应用跨函数分析的软件测试方法,解决软件静态测试中函数调用对区间精度的影响、对环境约束信息未充分利用以及由异常处理导致的控制流变更等问题。通过定义函数摘要信息及其前置信息、后置信息、约束信息和特征信息,对程序中不同类型的缺陷检测相应地规定了判定方法;而且在软件测试过程中通过收集函数摘要信息,并将其应用在控制流图的语句节点上和缺陷模式的判定过程中,在测试完成后输出被测程序中所有函数的摘要信息。通过实验证明,应用本发明方法的测试软件比现有测试软件的测试结果相比,具有更高的函数间分析准确度和更低的测试结果误报率和漏报率。
-
公开(公告)号:CN102708053A
公开(公告)日:2012-10-03
申请号:CN201210127864.0
申请日:2012-04-27
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开了一种程序路径中确定函数调用的上下文环境影响的方法,该方法将返回值、被调用函数重定义的全局变量、指针或引用类型参数作为被调用函数的输出型变量,并采用路径敏感和上下文敏感的符号化区间运算技术,计算被调用函数在路径上各调用点输出型变量必需满足的上下文条件,最后根据该条件生成模拟替换函数,模拟替换函数根据各调用点的条件动态调整输出型变量的取值,保证程序按照目标路径执行。该方法可以用于自动化单元测试中面向路径的测试,包括面向全路径测试、面向子路径测试和面向目标测试等,实验证明,采用本发明所述方法,能够保证被测程序按照目标路径执行,并提高单元测试效率。
-
公开(公告)号:CN102662829A
公开(公告)日:2012-09-12
申请号:CN201210071743.9
申请日:2012-03-16
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明公开了一种复杂数据结构在代码静态测试中的处理方法,在符号表中记录与复杂数据类型相关的基本数据类型信息;对控制流图的每个节点的复杂数据类型,根据与所述复杂数据类型相关的基本数据类型信息进行基本数据类型拆分,将基本数据类型拆分后得到的每个独立变量进行独立分析,更新相应的控制流图节点信息;输出更新后的控制流图;本发明同时还公开了一种复杂数据结构在代码静态测试中的处理装置,通过本发明的方案,能够解决静态测试中对复杂数据类型整体建模分析不完善所产生的漏报问题,在一定程度上提高静态测试的精度。
-
公开(公告)号:CN102073588A
公开(公告)日:2011-05-25
申请号:CN201010622570.6
申请日:2010-12-28
Applicant: 北京邮电大学
IPC: G06F11/36
Abstract: 本发明提供一种基于代码静态分析的多线程死锁检测方法及系统,该方法包括:对待测软件源程序进行词法、语法及语义分析,生成抽象语法树和控制流图;通过遍历抽象语法树,生成程序的指向分析图,对程序中的线程类进行分析,生成线程类并发特征集合;通过对控制流图的遍历,对程序进行可达分析,生成线程并发特征集并进行分析,生成占有请求特征集和锁图并进行分析,检测潜在的死锁,找到锁对象的门锁集合,删除不同线程锁对象存在相同门锁情况的死锁,更新潜在死锁集合;通过并发与逃逸分析,删除不可能的死锁情况,得到最终的死锁集合。应用本发明的方法及系统能够有效检测两个或多个线程产生死锁的情况,提高测试精度和自动化程度。
-
-
-
-
-
-
-
-
-