用于符号执行的复杂类型输入变量懒符号化方法及系统

    公开(公告)号:CN114896145A

    公开(公告)日:2022-08-12

    申请号:CN202210453325.X

    申请日:2022-04-27

    Abstract: 一种用于符号执行的复杂类型输入变量懒符号化方法及系统,包括生成输入驱动文件,通过入口函数指定输入变量和驱动被测函数;分配符号内存;当执行到一条语句时,解释执行和符号执行分别对同一地址上的实际值和符号值进行操作;在执行过程中对内存地址访问时,解释执行直接读写实际值映射表内容;符号执行先检查符号值映射表中该地址上是否存在符号值,存在则直接读写;不存在则创建一个新符号值,符号值映射表中新增一条地址与符号值的映射,再进行正常读写;一次符号执行结束后对收集的约束取反以及求解,最终得到表达式与值的映射关系,生成用例数据文件。本发明针对复杂类型的输入变量,采用懒符号化策略,提升用例的生成速度和降低内存开销。

    一种覆盖率驱动的测试用例自动生成方法

    公开(公告)号:CN118331857A

    公开(公告)日:2024-07-12

    申请号:CN202410368374.2

    申请日:2024-03-28

    Abstract: 一种覆盖率驱动的测试用例自动生成方法,对被测程序进行静态分析记录程序中的所有分支集合以及每个循环体对应的内部分支集合;创建初始的程序执行路径,根据路径搜索策略确定当前执行路径;对当前执行路径中pc指向的语句进行符号执行,在符号执行过程中干预循环执行,裁剪大量由循环语句衍生出的冗余路径;将路径中已覆盖的所有分支记录到全局已覆盖分支中并进行约束求解,求解结果即为该路径对应的用例并输出;在确认分支全部覆盖后结束迭代,生成测试用例集合。本发明在有限的资源下提升单元测试的覆盖率,同时提升自动生成测试用例的效率及有效性。

    一种通用的嵌入式软件单元测试环境构建方法及系统

    公开(公告)号:CN117493152A

    公开(公告)日:2024-02-02

    申请号:CN202211636381.3

    申请日:2022-12-19

    Abstract: 本发明公开了一种通用的嵌入式软件单元测试环境构建方法和系统,包括平台配置单元、测试场景构建单元、环境变量添加单元和自动构建单元;构建方法包括:步骤一,添加环境变量;步骤二,创建平台配置包;步骤三,构建测试场景;步骤四,生成测试环境;本发明把单元测试环境抽象为平台配置包、测试场景和环境变量三个部分,使用参数化方式描述测试环境,形成一套嵌入式软件平台配置机制,基于该机制形成多种嵌入式平台配置包和一个构建系统,把环境变量、测试场景和对应的平台配置包输入到构建系统,生成对应的测试环境,该方法可用于软件动态测试工具套件,使其在无需修改工具代码的情况下适配多种测试环境。

    用于符号执行的复杂类型输入变量懒符号化方法及系统

    公开(公告)号:CN114896145B

    公开(公告)日:2024-09-20

    申请号:CN202210453325.X

    申请日:2022-04-27

    Abstract: 一种用于符号执行的复杂类型输入变量懒符号化方法及系统,包括生成输入驱动文件,通过入口函数指定输入变量和驱动被测函数;分配符号内存;当执行到一条语句时,解释执行和符号执行分别对同一地址上的实际值和符号值进行操作;在执行过程中对内存地址访问时,解释执行直接读写实际值映射表内容;符号执行先检查符号值映射表中该地址上是否存在符号值,存在则直接读写;不存在则创建一个新符号值,符号值映射表中新增一条地址与符号值的映射,再进行正常读写;一次符号执行结束后对收集的约束取反以及求解,最终得到表达式与值的映射关系,生成用例数据文件。本发明针对复杂类型的输入变量,采用懒符号化策略,提升用例的生成速度和降低内存开销。

    针对实时嵌入式软件源代码覆盖率分析系统

    公开(公告)号:CN115658507A

    公开(公告)日:2023-01-31

    申请号:CN202211323818.8

    申请日:2022-10-28

    Abstract: 本发明公开了针对实时嵌入式软件源代码覆盖率分析系统,包括CPU指令集模拟器模块,所述CPU指令集模拟器模块包括包括插桩模块、编译模块、目标码符号分析模块、配置文件生成模块、配置接口模块、指令执行模块、时钟计时和维护模块、函数检查模块、函数调用栈维护模块、覆盖率收集模块、覆盖率分析模块、覆盖率展示模块和报告生成模块,本发明在维持插桩方式不变的情况下,利用指令集模拟器执行实时嵌入式软件目标程序,在执行探针代码时钟暂停计时,使得插桩后代码执行的时钟周期与非插桩的一致,结合高效的源代码插桩和分析方法,该发明的系统具有膨胀率低、保证实时性的优点,同时提升了该系统的执行速度。

Patent Agency Ranking