基于单个样例的代码转换推导方法和装置

    公开(公告)号:CN110633084A

    公开(公告)日:2019-12-31

    申请号:CN201910861206.6

    申请日:2019-09-12

    Applicant: 北京大学

    Abstract: 本发明涉及一种基于单个样例的代码转换推导方法和装置。该方法包括:基于修改前和修改后的样例代码片段,提取代码超图;基于修改前和修改后的样例代码片段,提取代码修改的操作序列;依据代码修改的操作序列,并通过统计分析开源项目代码中的属性频率,对代码超图进行化简,由化简之后的代码超图和代码修改的操作序列共同组成代码转换模板;给定待修改的代码片段并提取其代码超图,然后通过与代码转换模板进行匹配得到修改后的代码片段。本发明可以仅通过一个代码修改的例子来推导出、提取出一般化的代码转换,有效避免了必须依赖于使用大量的相关代码修改来进行推导,可以更有效地推导出合理的代码转换,适用于多种应用场景。

    基于单个样例的代码转换推导方法和装置

    公开(公告)号:CN110633084B

    公开(公告)日:2020-10-02

    申请号:CN201910861206.6

    申请日:2019-09-12

    Applicant: 北京大学

    Abstract: 本发明涉及一种基于单个样例的代码转换推导方法和装置。该方法包括:基于修改前和修改后的样例代码片段,提取代码超图;基于修改前和修改后的样例代码片段,提取代码修改的操作序列;依据代码修改的操作序列,并通过统计分析开源项目代码中的属性频率,对代码超图进行化简,由化简之后的代码超图和代码修改的操作序列共同组成代码转换模板;给定待修改的代码片段并提取其代码超图,然后通过与代码转换模板进行匹配得到修改后的代码片段。本发明可以仅通过一个代码修改的例子来推导出、提取出一般化的代码转换,有效避免了必须依赖于使用大量的相关代码修改来进行推导,可以更有效地推导出合理的代码转换,适用于多种应用场景。

    一种预测性变异测试方法

    公开(公告)号:CN106095684B

    公开(公告)日:2019-01-29

    申请号:CN201610437023.8

    申请日:2016-06-17

    Applicant: 北京大学

    Abstract: 本发明公布了一种预测性变异测试方法,分为训练阶段和预测阶段,通过预测方法来预测每一个变异体的执行结果;训练阶段包括:执行变异体;对已执行变异体进行特征收集,形成特征属性文件;应用分类算法创建分类模型;预测阶段包括:对未执行变异体进行特征收集;对未执行变异体利用分类模型将每一个未执行变异体分类,即获得分类结果。采用本发明技术方案进行变异测试,可对待测的变异体,直接使用建立的预测模型进行预测,不必执行变异体即可得到变异体的执行结果,可显著降低变异测试代价。

    基于执行序列的JUnit测试用例化简方法

    公开(公告)号:CN101833508B

    公开(公告)日:2012-06-13

    申请号:CN201010165343.5

    申请日:2010-05-07

    Applicant: 北京大学

    Abstract: 本发明提供了一种基于执行序列的JUnit测试用例化简方法,属于软件测试中的测试用例化简技术领域。本发明提出了一种k-序列的表示方法来描述每条JUnit测试用例,用以体现每条JUnit测试用例对方法的调用顺序,并将所有JUnit测试用例包含的方法调用序列作为化简前后需要保持不变的条件,对JUnit测试用例集合进行化简,从而保证化简后的测试用例集合可以揭示源于单个方法调用不当和源于多个方法调用顺序不当的错误。本发明提出的测试用例化简技术可以提高化简后测试用例集合的揭错能力,减少测试用例化简过程造成的测试效果损失。

    一种预测性变异测试方法

    公开(公告)号:CN106095684A

    公开(公告)日:2016-11-09

    申请号:CN201610437023.8

    申请日:2016-06-17

    Applicant: 北京大学

    CPC classification number: G06F11/3684 G06F11/3688 G06F11/3692

    Abstract: 本发明公布了一种预测性变异测试方法,分为训练阶段和预测阶段,通过预测方法来预测每一个变异体的执行结果;训练阶段包括:执行变异体;对已执行变异体进行特征收集,形成特征属性文件;应用分类算法创建分类模型;预测阶段包括:对未执行变异体进行特征收集;对未执行变异体利用分类模型将每一个未执行变异体分类,即获得分类结果。采用本发明技术方案进行变异测试,可对待测的变异体,直接使用建立的预测模型进行预测,不必执行变异体即可得到变异体的执行结果,可显著降低变异测试代价。

    基于执行序列的JUnit测试用例化简方法

    公开(公告)号:CN101833508A

    公开(公告)日:2010-09-15

    申请号:CN201010165343.5

    申请日:2010-05-07

    Applicant: 北京大学

    Abstract: 本发明提供了一种基于执行序列的JUnit测试用例化简方法,属于软件测试中的测试用例化简技术领域。本发明提出了一种k-序列的表示方法来描述每条JUnit测试用例,用以体现每条JUnit测试用例对方法的调用顺序,并将所有JUnit测试用例包含的方法调用序列作为化简前后需要保持不变的条件,对JUnit测试用例集合进行化简,从而保证化简后的测试用例集合可以揭示源于单个方法调用不当和源于多个方法调用顺序不当的错误。本发明提出的测试用例化简技术可以提高化简后测试用例集合的揭错能力,减少测试用例化简过程造成的测试效果损失。

Patent Agency Ranking