[发明专利]一种自动产生智能合约的功能测试页面的方法及装置有效
申请号: | 201711142750.2 | 申请日: | 2017-11-17 |
公开(公告)号: | CN107943691B | 公开(公告)日: | 2022-03-01 |
发明(设计)人: | 马占军 | 申请(专利权)人: | 深圳圣马歌科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F8/41 |
代理公司: | 深圳市徽正知识产权代理有限公司 44405 | 代理人: | 李想 |
地址: | 518000 广东省深圳市南山区科*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 自动 产生 智能 合约 功能 测试 页面 方法 装置 | ||
本发明实施例公开了一种自动产生智能合约的功能测试页面的方法及装置,包括:获取待测试智能合约对应的智能合约代码,对智能合约代码进行编译,输出编译文件;对编译文件进行分析后,自动生成功能测试页面;获取用户在功能测试页面上输入的参数,对智能合约进行功能测试。本发明实施例可以对智能合约自动生成功能测试页面,在功能测试页面上显示测试参数,方便用户对智能合约进行测试,提高了以太坊上的智能合约的测试效率。
技术领域
本发明涉及区块链技术领域,尤其涉及一种自动产生智能合约的功能测试页面的方法及装置。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,区块链还具有防篡改特征。以太坊是一种区块链实现方案,智能合约是以太坊上的可执行代码,通常使用truffle进行智能合约的开发。其中truffle是以太坊一种开发框架。现有技术中的智能合约的一般使用在truffle控制台调用web3接口后使用命令行进行功能测试,参数名和参数类型需要用户记忆,因此操作复杂,普通用户难以掌握,从而造成测试效率低。
发明内容
针对上述技术问题,本发明实施例提供了一种自动产生智能合约的功能测试页面的方法及装置,能够解决现有技术中智能合约开发过程的功能测试操作复杂,测试效率低的技术问题。
本发明实施例的第一方面提供一种自动产生智能合约的功能测试页面的方法,包括:
获取待测试智能合约对应的智能合约代码,对智能合约代码进行编译,输出编译文件;
对编译文件进行分析后,自动生成功能测试页面;
获取用户在功能测试页面上输入的参数,对智能合约进行功能测试。
可选地,所述获取智能合约对应的智能合约代码,对智能合约代码进行编译,输出编译文件前,包括:
预先启动一个nodejs运行环境编写的web服务器程序,并将待测试的智能合约拷贝到web服务器目录。
可选地,所述编译文件包括智能合约的二进制代码、合约的接口信息和合约发布地址。
可选地,所述编译文件为json文件,所述对编译文件进行分析后,自动生成功能测试页面包括:
运行truffle migrate把合约发布到以太坊节点后输出json文件,使用nodejs程序分析json文件;
获取web服务器中的所有json文件,对所有成功发布的json文件进行遍历;
对每个智能合约的每个接口分别生成一个表格,其中接口包含若干个智能合约的参数,表格包含若干个条目,一个条目对应一个智能合约的参数;
根据每个智能合约的表格生成每个智能合约对应的功能测试页面。
可选地,所述根据对每个智能合约生成一个功能测试页面后,还包括:
获取每个智能合约对应的功能测试页面,根据获取的功能测试页面生成主页面,其中主页面包含所有已经发布的智能合约的列表。
本发明实施例第二方面提供了一种自动产生智能合约的功能测试页面的装置,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现以下步骤:
获取待测试智能合约对应的智能合约代码,对智能合约代码进行编译,输出编译文件;
对编译文件进行分析后,自动生成功能测试页面;
获取用户在功能测试页面上输入的参数,对智能合约进行功能测试。
可选地,所述计算机程序被所述处理器执行时还实现以下步骤:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳圣马歌科技有限公司,未经深圳圣马歌科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711142750.2/2.html,转载请声明来源钻瓜专利网。