一种基于多目标优化的智能合约测试方法

    公开(公告)号:CN112069050B

    公开(公告)日:2022-05-17

    申请号:CN201910498422.9

    申请日:2019-06-11

    Abstract: 本发明涉及一种基于多目标优化的智能合约测试方法,针对以太坊智能合约源程序利用truffle编译获得ABI,进而通过解析ABI获取智能合约的方法,生成一系列随机测试套件;通过在本地链上运行测试套件来获取其gas消耗、测试用例数目、分支覆盖率以及变异得分这几个相互冲突的目标;再根据收集到的信息进行非支配排序,找到Pareto最优解,从而在多个目标之间取得平衡。本发明的目的在于自动化地生成既具有成本效益,又具有代表性的智能合约测试套件,帮助合约测试人员提高测试充分性的同时降低测试成本,最终实现提高智能合约测试效果、保障智能约质量的目标。

    一种基于窥孔优化的以太坊智能合约Gas优化方法

    公开(公告)号:CN112070605A

    公开(公告)日:2020-12-11

    申请号:CN201910498379.6

    申请日:2019-06-11

    Abstract: 本发明提出一种基于窥孔优化的以太坊智能合约Gas优化方法。该方法首先收集以太坊中部署的智能合约操作码。将以太坊智能合约操作码中进行拆分指令序列处理,获得的所有指令序列,得到指令序列集。然后对指令序列集后进行标准化处理,对指令中的寄存器、常数等参数进行标准化。得到标准化后的操作码后进行指令序列划分,并计算Gas消耗,每一类作为一个替换规则。然后进行待优化合约匹配,优化过程中使用替换规则进行匹配,如果检测到等价片段,则添加进替换规则中。最后进行指令序列替换,选择Gas消耗最低的片段将其替换,如果该等价片段Gas消耗更低则不进行替换。最后达到降低智能合约Gas消耗的效果。

    一种基于LSTM的以太坊交易打包等待时间的预测方法

    公开(公告)号:CN112069250A

    公开(公告)日:2020-12-11

    申请号:CN201910498423.3

    申请日:2019-06-11

    Abstract: 本发明涉及一种基于LSTM的以太坊交易打包等待时间的预测方法。该方法基于特征提取和相关数据计算对历史交易信息进行处理,构建用于模型训练的特征矩阵和交易等待时间向量;在此基础上,应用LSTM神经网络方法构建预测模型,并在模型构建时不断通过训练结果和误差评估模型表现并基于Adam优化算法调整模型权重,从而学习生成一个交易打包等待时间预测模型LSTM‑Model;最后,将当前用户的预期价格和Gas Limit以及当前的影响因素输入到LSTM‑Model中,最终生成当前交易的打包等待时间的预测结果。本发明目的在于帮助以太坊用户判断给定GasPrice下交易打包等待的时间,进而对定价进行必要的调整,减少用户的Gas支出,从而有效提高用户的交易效率并降低交易成本。

    一种面向代码可读性的单元测试用例优化方法

    公开(公告)号:CN110377493A

    公开(公告)日:2019-10-25

    申请号:CN201810325049.2

    申请日:2018-04-12

    Abstract: 本发明涉及一种面向代码可读性的单元测试用例优化方法,针对源程序利用控制流分析和数据依赖分析挖掘源程序中出现的每个类的实例化代码片段,从而构建类实例化片段仓库;在此基础上,针对自动化生成工具生成单元测试用例代码中所有的类实例化片段,自上而下不断从类实例化片段仓库中选择可行的片段进行替换,保留执行结果不变且满足覆盖条件的替换结果,最终生成优化后的单元测试用例结果。本发明目的在于解决目前自动化生成工具所生成单元测试用例代码可读性低、影响研发人员测试效率的问题,进而来大幅提高自动化生成方法及相关工具在软件生产实践中的实用性和易用性,最终实现提高软件测试效率、保障软件质量的目标。

    一种基于LSTM的以太坊交易打包等待时间的预测方法

    公开(公告)号:CN112069250B

    公开(公告)日:2022-05-17

    申请号:CN201910498423.3

    申请日:2019-06-11

    Abstract: 本发明涉及一种基于LSTM的以太坊交易打包等待时间的预测方法。该方法基于特征提取和相关数据计算对历史交易信息进行处理,构建用于模型训练的特征矩阵和交易等待时间向量;在此基础上,应用LSTM神经网络方法构建预测模型,并在模型构建时不断通过训练结果和误差评估模型表现并基于Adam优化算法调整模型权重,从而学习生成一个交易打包等待时间预测模型LSTM‑Model;最后,将当前用户的预期价格和Gas Limit以及当前的影响因素输入到LSTM‑Model中,最终生成当前交易的打包等待时间的预测结果。本发明目的在于帮助以太坊用户判断给定GasPrice下交易打包等待的时间,进而对定价进行必要的调整,减少用户的Gas支出,从而有效提高用户的交易效率并降低交易成本。

    一种面向代码可读性的单元测试用例优化方法

    公开(公告)号:CN110377493B

    公开(公告)日:2022-05-17

    申请号:CN201810325049.2

    申请日:2018-04-12

    Abstract: 本发明涉及一种面向代码可读性的单元测试用例优化方法,针对源程序利用控制流分析和数据依赖分析挖掘源程序中出现的每个类的实例化代码片段,从而构建类实例化片段仓库;在此基础上,针对自动化生成工具生成单元测试用例代码中所有的类实例化片段,自上而下不断从类实例化片段仓库中选择可行的片段进行替换,保留执行结果不变且满足覆盖条件的替换结果,最终生成优化后的单元测试用例结果。本发明目的在于解决目前自动化生成工具所生成单元测试用例代码可读性低、影响研发人员测试效率的问题,进而来大幅提高自动化生成方法及相关工具在软件生产实践中的实用性和易用性,最终实现提高软件测试效率、保障软件质量的目标。

    一种面向Diem区块链的性能测试方法

    公开(公告)号:CN113326197A

    公开(公告)日:2021-08-31

    申请号:CN202110658031.6

    申请日:2021-06-11

    Abstract: 本发明是一种面向Diem区块链的性能测试方法,其特征是能够测试Diem区块链整体以及共识层两方面的性能,并生成包含吞吐量和交易延迟两个维度指标的可靠的Diem性能测试报告。首先,我们根据用户提供的Diem区块链配置(DC)在Diem CLI客户端完成Diem测试链搭建,并将其部署在服务器上;其次,我们根据用户提供的Diem区块链整体性能测试配置(DWTC)执行Diem区块链整体性能测试,生成包含吞吐量和交易延迟两个维度指标的Diem整体性能测试数据;最后,我们根据用户提供的Diem区块链共识性能测试配置(DCTC)执行Diem区块链共识性能测试,生成包含吞吐量和交易延迟两个维度指标的Diem共识性能测试数据。

    一种面向以太坊区块链的性能测试方法

    公开(公告)号:CN112073254A

    公开(公告)日:2020-12-11

    申请号:CN201910498380.9

    申请日:2019-06-11

    Abstract: 本发明是一种面向以太坊区块链的性能测试方法,该方法以以太坊区块链作为研究对象,建立了一套系统的性能测试策略与性能指标体系。首先,我们提出一套性能测试策略。我们以智能合约作为性能测试基准,提出了三类智能合约,用于从存储、共识、EVM的角度测试以太坊性能。通过将智能合约部署到区块链上,模拟大量用户向智能合约发起交易,达到性能测试的目的。第二,我们提出了一套性能指标体系。我们将性能指标分为四个维度:以太坊性能指标、区块链性能指标、分布式系统性能指标、系统资源消耗指标。在进行性能测试的的同时,监控并收集性能指标信息。最终,通过性能测试最终生成一个包含四个维度的性能指标的测试报告,对以太坊性能进行评估。

Patent Agency Ranking