【技术实现步骤摘要】
本专利技术涉及软件测试技术,尤其涉及基于抽象内存模型的非数值型数据的计算方 法,属于单元测试中对含非数值型数据程序的语义模拟和约束提取
技术介绍
软件测试分为动态测试和静态测试两种。动态测试是通过运行软件来检测软件的 动态行为和运行结果的正确性;静态测试是收集、查找程序的信息,对被测程序进行特征分 析,其主要优点是在程序运行之前就可以收集程序的语义信息。在实际的软件测试中,实际 的程序逻辑可以非常复杂的。基于静态分析的测试用例生成方案可以很好的支持数值型的 程序,对非数值类型的程序,该方案不能很好的记录程序的语义信息,导致自动生成非数值 类型的测试用例困难。尤其是指针的别名问题和数组的变下标引用,是符号执行的难点问 题。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种基于抽象内存模型的非数值型数据的 计算方法,其采用抽象内存建模技术存储路径分析过程中变量相关语义信息,在抽象内存 中为每个变量分配一个抽象内存单元,并将与该变量相关的指令操作映射为对抽象内存的 操作,精确记录变量的结构语义和操作语义。为达到上述目的,本专利技术的技术方案是这样实现的本 ...
【技术保护点】
一种基于抽象内存模型的非数值型数据的计算方法,其特征在于,该方法包括:A、设计抽象内存模型用于模拟数值型变量和非数值型变量的内存结构,以及存储变量操作中包含的语义信息和约束关系;B、提取数值型变量和非数值类型变量的类型操作中包含的语义信息,并将语义信息映射到抽象内存模型中;C、提取数值型变量和非数值类型变量的类型操作中包含的变量间约束和变量内约束,并将约束关系映射到抽象内存模型中;D、从抽象内存模型中提取变量的语义信息和约束关系,使用测试用例构建算法和第三方的约束求解器构建测试用例。
【技术特征摘要】
【专利技术属性】
技术研发人员:王雅文,宫云战,金大海,黄俊飞,唐荣,蔡敏,
申请(专利权)人:北京邮电大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。