一种使用结构化种子用例引导的单元测试智能生成方法

    公开(公告)号:CN119988237A

    公开(公告)日:2025-05-13

    申请号:CN202510457455.4

    申请日:2025-04-14

    Abstract: 一种使用结构化种子用例引导的单元测试智能生成方法,属于软件测试技术领域,包括:解析被测函数,构建被测函数的上下文,并根据被测函数构建预设结构的种子用例;根据被测函数的上下文、代码块和种子用例构建提示词,将提示词输入大模型生成所述预设结构的测试用例,并将测试用例转化为预设标准的测试代码;执行所述测试代码,获得测试覆盖率,根据测试覆盖率情况确定优化需求。本发明通过分析被测函数接口数据,为被测函数构建一个结构化的种子用例,用于引导大模型生成结构化的测试用例,使用基于规则的方法将结构化的测试用例转为测试代码,解决了大模型直接生成测试代码出错概率高的问题,提高了大模型在单元测试中的表现能力。

    一种面向数据流模型的高阶调用代码生成方法及装置

    公开(公告)号:CN112506521B

    公开(公告)日:2024-05-14

    申请号:CN202011496767.X

    申请日:2020-12-17

    Abstract: 本发明公开了一种面向数据流模型的高阶调用代码生成方法及装置。方法包括:对数据流中的计算模块进行解析,得到计算模块的解析结果;根据解析结果,确定计算模块是否为子模块调用模块;在计算模块为子模块调用模块,或计算模块为非子模块调用模块且计算模块为矩阵函数运算模块的情况下,确定计算模块对应的数组维度与预先设定的最大展开次数之间的大小关系;在数组维度大于最大展开次数的情况下,基于循环调用的方式进行函数调用,生成所述计算模块对应的高阶调用代码;在所述数组维度小于所述最大展开次数的情况下,根据所述数组维度展开调用函数,生成所述计算模块对应的高阶调用代码。本发明可以简化生成的代码,生成符合用户查看的简洁代码。

    一种基于贝叶斯网络模型的代码生成方法、系统及介质

    公开(公告)号:CN115951867A

    公开(公告)日:2023-04-11

    申请号:CN202210692933.6

    申请日:2022-11-30

    Abstract: 一种基于贝叶斯网络模型的代码生成方法,涉及贝叶斯网络的推理方法和实现,以及自动代码生成技术。本发明方法包括:由待处理概率图模型信息生成对应的贝叶斯网络模型;根据贝叶斯网络模型生成动态C代码文件,结合预设的固定C代码文件,并根据预设的指派节点事件取第几个值的编号信息,实现根据底事件发生的概率求顶事件发生的概率,生成的动态C代码文件和预设的固定C代码文件交由计算机执行。本发明使用C代码实现了贝叶斯推理网络,根据输入的贝叶斯网络模型动态生成C代码,配合固定的C代码,可以实现根据底事件发生的概率求顶事件发生的概率,完成了贝叶斯推理网络的嵌入式实现,给出了嵌入式平台移植的解决方案。

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

    公开(公告)号:CN117493152A

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

    申请号:CN202211636381.3

    申请日:2022-12-19

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

    面向人工智能的基于计算图模型的代码生成方法及装置

    公开(公告)号:CN114385179A

    公开(公告)日:2022-04-22

    申请号:CN202111537354.6

    申请日:2021-12-15

    Abstract: 本发明公开了一种面向人工智能的基于计算图模型的代码生成方法及装置。所述方法包括:获取计算图和输出节点;从输出节点开始,根据计算图中的有向边进行向前查找,直至找到所有的输入节点;以查找路径上的所有节点为集合,构建计算逻辑树;根据所有节点的节点类型,对所有节点进行预处理;从计算逻辑树中的层数最大的叶节点之一N1进行向上生成,N1和其兄弟节点、父节点生成为新的叶节点;重复执行从计算逻辑树中的层数最大的叶节点之一N1进行向上生成,N1和其兄弟节点、父节点生成为新的叶节点,直至根节点作为父节点。本发明可以解决在星载计算机上存储空间有限,无法容纳相应的依赖库和运行时占用的内存的问题。

    一种面向数据流模型的高阶调用代码生成方法及装置

    公开(公告)号:CN112506521A

    公开(公告)日:2021-03-16

    申请号:CN202011496767.X

    申请日:2020-12-17

    Abstract: 本发明公开了一种面向数据流模型的高阶调用代码生成方法及装置。方法包括:对数据流中的计算模块进行解析,得到计算模块的解析结果;根据解析结果,确定计算模块是否为子模块调用模块;在计算模块为子模块调用模块,或计算模块为非子模块调用模块且计算模块为矩阵函数运算模块的情况下,确定计算模块对应的数组维度与预先设定的最大展开次数之间的大小关系;在数组维度大于最大展开次数的情况下,基于循环调用的方式进行函数调用,生成所述计算模块对应的高阶调用代码;在所述数组维度小于所述最大展开次数的情况下,根据所述数组维度展开调用函数,生成所述计算模块对应的高阶调用代码。本发明可以简化生成的代码,生成符合用户查看的简洁代码。

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

    公开(公告)号:CN115658507A

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

    申请号:CN202211323818.8

    申请日:2022-10-28

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

    面向数据流模型的模型组件执行顺序确定方法及装置

    公开(公告)号:CN112560273A

    公开(公告)日:2021-03-26

    申请号:CN202011519760.5

    申请日:2020-12-21

    Abstract: 本发明公开了一种面向数据流模型的模型组件执行顺序确定方法及装置。方法包括:获取数据流图中的待排序模块;将待排序模块作为邻接矩阵的顶点,构建三个邻接矩阵;三个邻接矩阵分别为数据流关系邻接矩阵(简称数据流阵)、控制流关系邻接矩阵(简称控制流阵)和数据流与控制流的合成关系邻接矩阵(简称合成阵);根据数据流阵、控制流阵和合成阵对应的查找顺序,查找三个邻接矩阵中的无前置顶点的目标顶点;在查找得到目标顶点的情况下,删除目标顶点,并对删除目标顶点对应的其它顶点进行排序,以得到待排序模块对应的执行顺序。本发明可以对控制流线,数据流线不全部成环的情况进行排序,可以避免数据流线构成代数环后无法排序的情况。

    面向数据流模型的模型组件执行顺序确定方法及装置

    公开(公告)号:CN112560273B

    公开(公告)日:2023-11-10

    申请号:CN202011519760.5

    申请日:2020-12-21

    Abstract: 本发明公开了一种面向数据流模型的模型组件执行顺序确定方法及装置。方法包括:获取数据流图中的待排序模块;将待排序模块作为邻接矩阵的顶点,构建三个邻接矩阵;三个邻接矩阵分别为数据流关系邻接矩阵(简称数据流阵)、控制流关系邻接矩阵(简称控制流阵)和数据流与控制流的合成关系邻接矩阵(简称合成阵);根据数据流阵、控制流阵和合成阵对应的查找顺序,查找三个邻接矩阵中的无前置顶点的目标顶点;在查找得到目标顶点的情况下,删除目标顶点,并对删除目标顶点对应的其它顶点进行排序,以得到待排序模块对应的执行顺序。本发明可以对控制流线,数据流线不全部成环的情况进行排序,可以避免数据流线构成代数环后无法排序的情况。

    一种基于数据流和状态机的模型覆盖率分析统计方法

    公开(公告)号:CN116627806A

    公开(公告)日:2023-08-22

    申请号:CN202310540000.X

    申请日:2023-05-15

    Abstract: 一种基于数据流和状态机的模型覆盖率分析统计方法,包括步骤一,分析数据流和状态机模型;步骤二,条件关键点分析;步骤三,生成模型代码;步骤四,执行及覆盖率分析;所述步骤一中,对于数据流模型进行遍历:根据输出节点获取以其为终止节点的有向边;根据有向边查找其起始节点;重复上述两步,直至找到节点满足以下条件:没有其作为终止节点的有向边;遍历过程中,遍历到的每个节点都作为一个基本块;本发明通过分析模型的基本块和关键点,并基于分析结果对模型生成代码并插桩,在仿真后对基本块覆盖情况和条件覆盖情况进行统计分析,该方法已经在真实程序中进行了验证,可以计算出基本块覆盖率和条件覆盖率。

Patent Agency Ranking