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

    公开(公告)号:CN110633084A

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

    申请号:CN201910861206.6

    申请日:2019-09-12

    Applicant: 北京大学

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

    一种基于运行时模型的云计算容错机制配置方法

    公开(公告)号:CN105005509B

    公开(公告)日:2018-08-14

    申请号:CN201510393804.7

    申请日:2015-07-07

    Applicant: 北京大学

    Abstract: 本发明公开了一种基于运行时模型的云计算容错机制配置方法。本方法为:1)构造云平台的云容错运行时模型和目标应用的构件依赖图;云平台根据该构件依赖图对该目标应用的各个构件设置容错机制;2)云平台根据步骤1)中设置的容错机制制定容错部署方案,将该容错机制部署到该云容错运行时模型中;3)利用该云容错运行时模型将容错机制代码部署至运行时系统中,并维护该云容错运行时模型与运行时云平台的双向同步。本发明通过对目标应用结构分析,选择合适的容错机制,根据容错机制以及用户需求,制定合适的容错部署方案,并在运行时模型中实现容错测试。

    一种云计算平台的自动化容错配置方法

    公开(公告)号:CN103500126B

    公开(公告)日:2016-06-15

    申请号:CN201310517763.9

    申请日:2013-10-28

    Applicant: 北京大学

    Abstract: 本发明公开了一种云计算平台的自动化容错配置方法。本方法为:1)云计算平台容错配置系统采集云计算平台的运行时信息,运行时信息的载体为运行时软件体系结构;2)云计算平台容错配置系统根据用户需求与当前运行时信息从容错机制库中选择一容错机制;3)云计算平台容错配置系统根据选择的容错机制对该云计算平台的运行时软件体系结构进行配置;4)云计算平台管理系统将3)配置过程中运行时软件体系结构发生变化的部分同步到该云计算平台中。本发明可系统化的为云计算平台提供自适应的容错配置,且节约了云计算平台资源、容错性能得到大大提高。

    基于内部状态检查的单元测试方法

    公开(公告)号:CN103365775B

    公开(公告)日:2016-04-06

    申请号:CN201310250702.0

    申请日:2013-06-21

    Applicant: 北京大学

    Abstract: 一种基于内部状态检查的单元测试方法,其特征在于,用户在测试用例中编写内部状态约束,所述约束为执行到被测代码的目标位置时,相关变量应满足的算术或逻辑约束,从而最终实现对被测代码内部状态进行检查。通过本发明,软件开发者可以在测试用例中添加对被测代码中间状态的检查,使开发者可以只编写较少的测试用例就能发现更多的错误,而且帮助开发者更快地排查错误,提高了开发者进行的测试的效率。

    一种基于运行时模型的云计算容错机制配置方法

    公开(公告)号:CN105005509A

    公开(公告)日:2015-10-28

    申请号:CN201510393804.7

    申请日:2015-07-07

    Applicant: 北京大学

    Abstract: 本发明公开了一种基于运行时模型的云计算容错机制配置方法。本方法为:1)构造云平台的云容错运行时模型和目标应用的构件依赖图;云平台根据该构件依赖图对该目标应用的各个构件设置容错机制;2)云平台根据步骤1)中设置的容错机制制定容错部署方案,将该容错机制部署到该云容错运行时模型中;3)利用该云容错运行时模型将容错机制代码部署至运行时系统中,并维护该云容错运行时模型与运行时云平台的双向同步。本发明通过对目标应用结构分析,选择合适的容错机制,根据容错机制以及用户需求,制定合适的容错部署方案,并在运行时模型中实现容错测试。

    一种面向软件升级的软件测试方法

    公开(公告)号:CN104699595A

    公开(公告)日:2015-06-10

    申请号:CN201310655851.5

    申请日:2013-12-06

    Applicant: 北京大学

    Abstract: 一种面向软件升级的软件测试方法,所述方法基于等式描述的蜕变关系自动构造。在软件升级前,测试人员针对现有软件,构造每个程序的蜕变关系;所述程序指的是实现特定函数计算功能的程序代码;在软件升级后,针对修改后的程序,测试人员产生n个一定范围内的随机数作为测试用例,然后将每个测试用例和其在修改后程序中相应的输出代入修改之前程序构造出的蜕变关系式中,查看蜕变关系式是否成立,若修改后的程序不符合之前所构造出来的蜕变关系,则说明软件在升级过程中存在错误。通过本发明,测试人员可以将构造出的蜕变关系应用到蜕变测试中,从而验证软件版本升级过程中程序的正确性。

    时间适配的自动化缺陷定位方法和装置

    公开(公告)号:CN109376080B

    公开(公告)日:2021-10-01

    申请号:CN201811128264.X

    申请日:2018-09-27

    Applicant: 北京大学

    Abstract: 本发明提供一种时间适配的自动化缺陷定位方法和装置,其能使软件行业从业人员在程序调试实际工作中进行更高效的缺陷定位并提高定位精准度。本发明的时间适配的自动化缺陷定位方法包括:测量选定的不同现有自动化缺陷定位方法的执行时间,并按照执行时间将这些选定的方法划分为由快至慢的不同级别;执行最快级别方法的组合,或者慢级别方法与较其快速的各级别方法的组合,分别对各组合的输出结果进行分数归一化处理,然后进行训练以建立各组合的排序学习模型;在具体程序调试场景中,依次执行由快至慢的各级别选定的方法,当软件开发和维护人员请求缺陷定位结果时,根据当前执行完毕的级别,使用各组合的排序学习模型自动综合结果分数并进行排序。

    基于原子状态函数的浮点数误差检测方法和装置

    公开(公告)号:CN111290946B

    公开(公告)日:2021-04-20

    申请号:CN202010056313.4

    申请日:2020-01-18

    Applicant: 北京大学

    Abstract: 本发明涉及一种基于原子状态函数的浮点数误差检测方法和装置。本发明对源代码或程序进行插桩以获取程序运行时的内部状态;通过程序运行时的内部状态,计算每个浮点数运算的原子状态函数,挖掘原子状态函数与浮点数误差的内在联系,推断出原子状态函数与误差的强关联性;构建搜索框架,利用搜索算法得到会触发高危原子状态函数的测试用例集合;该测试用例集合即为揭错率高,会触发显著浮点数误差的输入。由于计算原子状态函数不需要引入高精度浮点数,不依赖于测试预言,使得本发明不依赖于测试预言,并且揭错率高,运行开销小,不依赖于高精度浮点数,运行时间快。

Patent Agency Ranking