CN111444090A - 区块链中的合约测试方法、装置、电子设备及存储介质 - Google Patents
区块链中的合约测试方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN111444090A CN111444090A CN202010205208.2A CN202010205208A CN111444090A CN 111444090 A CN111444090 A CN 111444090A CN 202010205208 A CN202010205208 A CN 202010205208A CN 111444090 A CN111444090 A CN 111444090A
- Authority
- CN
- China
- Prior art keywords
- wallet
- test event
- wallet address
- addresses
- intelligent contract
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 248
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000012545 processing Methods 0.000 claims description 20
- 238000004891 communication Methods 0.000 claims description 13
- 238000010276 construction Methods 0.000 claims description 11
- 238000007726 management method Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 230000002452 interceptive effect Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 6
- 238000012544 monitoring process Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 238000005065 mining Methods 0.000 description 3
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 2
- 238000012550 audit Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 241000609666 Tuber aestivum Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明实施例公开了一种区块链中的合约测试方法、装置、电子设备及介质,其中方法包括:获取钱包地址集合;在区块链上部署第一智能合约;根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;获取所述至少一个测试事件的执行情况;根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。实施本申请实施例有利于提升区块链中测试智能合约的自动化程度,提升针对智能合约的测试效率。
Description
技术领域
本发明涉及互联网技术领域,具体涉及区块链技术领域,尤其涉及一种区块链中的合约测试方法、一种区块链中的合约测试装置、一种电子设备及一种计算机存储介质。
背景技术
随着互联网技术的发展,网络的安全性和可信程度越来越多的引起了用户的重视。区块链技术具有去中心化,全程留痕,可以追溯,公开透明和集体维护等特点,极大的提升了用户之间的信任程度。智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议,能够允许在没有第三方的情况下进行可信交易,且这些交易可追踪不可篡改。在区块链中应用符合标准的智能合约将可以使得区块链更加有序高效的实现丰富的功能;如何高效的测试智能合约是否符合标准成为当前需要解决的问题。
发明内容
本发明实施例提供了一种区块链中的合约测试方法、装置、电子设备及计算机存储介质,通过构建测试事件,以及根据测试事件的执行情况判断智能合约是否满足预设标准,提升了测试智能合约的自动化程度和测试效率。
一方面,本发明实施例提供了一种区块链中的合约测试方法,该区块链中的合约测试方法包括:
获取钱包地址集合,所述钱包地址集合由区块链上的账户地址构成;
在所述区块链上部署第一智能合约;
根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;
获取所述至少一个测试事件的执行情况;
根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。
在一种可能的实现方式中,所述钱包地址集合包括冷钱包地址集合和热钱包地址集合,所述测试事件包括第一钱包地址和第二钱包地址,所述测试事件中的资产由所述第一钱包地址转至所述第二钱包地址,所述冷钱包地址集合中包括所述第一钱包地址,所述热钱包地址集合中包括所述第二钱包地址。
在一种可能的实现方式中,所述根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准,包括:
若所述至少一个测试事件的执行行情况全部为执行失败,则确定所述第一智能合约满足所述预设标准;
否则,确定所述第一智能合约不满足所述预设标准。
在一种可能的实现方式中,所述获取所述至少一个测试事件的执行情况之后,所述方法还包括:
若所述至少一个测试事件中包括执行成功的测试事件;
则根据所述执行成功的测试事件的执行情况生成通知信息;
向预设的目标账户发送所述通知信息。
在一种可能的实现方式中,所述获取钱包地址集合,包括:
解析所述区块链中钱包存储层中每个账户的账户类型;
根据所述账户类型将所述每个账户对应的钱包地址划分至冷钱包地址集合或热钱包地址集合;
根据所述冷钱包地址集合和所述热钱包地址集合构成所述钱包地址集合。
在一种可能的实现方式中,所述根据所述钱包地址集合构建至少一个测试事件,包括:
通过外部钱包确定所述冷钱包地址中的所述第一钱包地址;
通过所述外部钱包确定所述热钱包地址中的所述第二钱包地址;
通过所述外部钱包将所述第一钱包地址中的资产转账至所述第二钱包地址,得到所述测试事件。
在一种可能的实现方式中,所述根据所述钱包地址集合构建至少一个测试事件,包括:
显示预设界面,所述第一预设界面包括所述冷钱包地址集合和所述热钱包地址集合;
接收选择信息,
根据所述选择信息确定所述冷钱包地址集合中的所述第一钱包地址和所述热钱包地址集合中的所述第二钱包地址;
显示预设按键,所述预设按键用于启动所述测试事件的构建;
接收针对所述预设按钮的第二选择信息;
将所述第一钱包地址中的资产转账至所述第二钱包地址,得到所述测试事件。
另一方面,本发明实施例提供了一种区块链中的合约测试装置,该区块链中的合约测试装置包括:
通信单元,用于获取钱包地址集合,所述钱包地址集合由区块链上的账户地址构成;
处理单元,还用于在所述区块链上部署第一智能合约;以及用于根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;
所述通信单元,还用于获取所述至少一个测试事件的执行情况;
所述处理单元,还用于根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。
再一方面,本发明实施例提供了一种电子设备,所述电子设备包括输入设备和输出设备,所述电子设备还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如下步骤:
获取钱包地址集合,所述钱包地址集合由区块链上的账户地址构成;
在所述区块链上部署第一智能合约;
根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;
获取所述至少一个测试事件的执行情况;
根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。
再一方面,本发明实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如下步骤:
获取钱包地址集合,所述钱包地址集合由区块链上的账户地址构成;
在所述区块链上部署第一智能合约;
根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;
获取所述至少一个测试事件的执行情况;
根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。
可以看出,本发明实施例中,首先,获取钱包地址集合;其次,在区块链上部署第一智能合约;其次,根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;其次,获取所述至少一个测试事件的执行情况;最后根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。可见,本发明实施例中,通过获取钱包地址集合,实现根据钱包地址集合进行测试事件的构建,提高了构建测试事件的自动化程度,提高了构建测试事件的效率,进而提升了针对第一智能合约的测试效率。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种可能的区块链构成的示意图;
图2A是本发明实施例提供的一种区块链中的合约测试方法的流程示意图;
图2B是本发明实施例提供的一种冷钱包地址转代币至热钱包地址的示意图;
图2C是本发明实施例中一种创世区块的配置信息的示意图;
图2D是本发明实施例提供的一种智能合约开发,测试和发布的流程示意图;
图3是本发明另一实施例提供的一种区块链中的合约测试方法的流程示意图;
图4是本发明实施例提供的一种区块链中的合约测试装置的结构示意图;
图5是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,图1是本发明实施例提供的一种可能的区块链构成的示意图。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
基于上述的描述,本发明实施例提出一种区块链中的合约测试方法,该区块链中的合约测试方法可以由电子设备执行。请参见图2A,该区块链中的合约测试方法可包括以下步骤S201-S205:
S201,获取钱包地址集合。
其中,所述钱包地址集合由区块链上的账户地址构成;
其中,钱包地址集合包括冷钱包地址集合和热钱包地址集合;其中,冷钱包地址指的是:钱包地址是私人从平台外生成,私钥保存在用户手中。热钱包地址指的是:钱包地址是从区块链平台生成,私钥由平台托管。
其中,获取钱包地址结合的方式可以是:通过接口分析钱包存储层maogodb的账户类型,实现自动搜集冷钱包地址和热钱包地址,根据搜集到的至少一个冷钱包地址构成冷钱包地址集合;根据搜集到的至少一个热钱包地址构成热钱包地址集合;根据冷钱包地址集合和热钱包地址集合构成钱包地址集合。
其中,在获取钱包地址集合之前,还包括:部署智能合约的测试环境。
其中,智能合约,是计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的电子货币转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以是执行对接收的信息进行处理的合约。
需要说明的是,本发明实时例中的电子设备可以包括各种具有无线通信功能的手持设备、车载设备、可穿戴设备(例如智能手表、智能手环、计步器等)、计算设备或连接到无线调制解调器的其他处理设备,以及各种形式的用户设备(User Equipment,UE),移动台(Mobile Station,MS),终端设备(terminal device)等等。为方便描述,上面提到的设备统称为电子设备。
本发明实施例的说明书和权利要求书中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
S202,在区块链上部署第一智能合约。
具体的,本发明实施例中的第一智能合约是符合ERC20标准的智能合约。ERC20是一个合约接口标准协议,设计初衷是为以太坊中的合约提供一套常见的功能和接口,任何基于ERC20标准的合约都能兼容以太坊钱包,同时支持共享和交换。
具体的,在区块链上部署第一智能合约的方法:将第一智能合约编译后部署到Geth区块链上;其中,Geth是用go语言编写,且实现以太坊ethereum协议的客户端软件。具体的,利用truffle部署智能合约,命令包括:truffle compile;truffle migrate--network test;其中,truffle是是针对基于以太坊的Solidity语言的一套开发框架。本身基于Javascript。
S203,根据钱包地址集合构建至少一个测试事件,测试事件可触发第一智能合约的执行。
其中,钱包地址集合包括冷钱包地址集合和热钱包地址集合,测试事件包括第一钱包地址和第二钱包地址,测试事件中的资产由第一钱包地址转至第二钱包地址,冷钱包地址集合中包括第一钱包地址,热钱包地址集合中包括第二钱包地址。
具体的,根据钱包地址集合构建至少一个测试事件的具体步骤包括:确定冷钱包地址集合中的第一钱包地址;确定热钱包地址集合中的第二钱包地址;自动构建从第一钱包地址转代币至第二钱包地址的测试事件。举例来说,图2B是本发明实施例提供的一种冷钱包地址转代币至热钱包地址的示意图,其中,冷钱包地址为0xDE6Aea823dE935418B7282ABe182d0C0136caE19;热钱包地址为0x706A535F849343D6dF149bB6627Def0E993e0bd4;由0xDE6Aea823dE935418B7282ABe182d0C0136caE19转200token(代币)到热钱包0x706A535F849343D6dF149bB6627Def0E993e0bd4,及如图2B所示。
其中,在构建至少一个测试事件之前,还包括:实例化第一智能合约,订阅第一智能合约的事件。之后,构建至少一个测试事件。
可选的,测试事件的构建可以是通过应用层编写相应的接口或依赖在线编译器来实现功能验证,在线编译器可以是remix。
其中,构建至少一个测试事件是模拟合约层将代币由冷钱包地址转至热钱包地址,具体的可以通过metamask等以太坊钱包进行执行。
其中,在区块链的应用层,设置有外部钱包,外部钱包是区块链应用层的一个应用程序接口(Application Programming Interface,API);外部钱包可在测试事件构建完成后通过对应的接口与区块链中的合约层进行交互,进而实现第一智能合约的触发。
S204,获取至少一个测试事件的执行情况。
其中,构建至少一个测试事件之后,可生成至少一个测试事件的测试报告,测试报告中包括每个测试事件的执行情况,执行情况包括执行成功或执行失败。
其中,订阅第一智能合约的事件且在第一智能合约被触发执行后,可实现针对第一智能合约所执行事件的监听。进而实现第一智能合约执行至少一个测试事件的监听。
S205,根据至少一个测试事件的执行情况判断第一智能合约是否满足预设标准。
其中,ERC20标准协议规定资产可由热钱包地址转到冷钱包地址,相反的,冷钱包地址转到热钱包地址则不可以,在本发明实施例应用于测试根据ERC20标准协议编译的智能合约中时,及第一智能合约为以ERC20标准协议开发的智能合约时,至少一个测试事件中每个测试事件均为冷钱包地址转账至热钱包地址,因此,若至少一个测试事件中包括执行成功的测试事件,则证明第一智能合约不满足ERC20标准协议,及第一智能合约不满足预设标准;反之,若至少一个测试事件中不包括执行成功的测试事件,则第一智能合约满足预设标准。
可以看出,本发明实施例中,首先,获取钱包地址集合;其次,在区块链上部署第一智能合约;其次,根据钱包地址集合构建至少一个测试事件,测试事件可触发第一智能合约的执行;其次,获取至少一个测试事件的执行情况;最后根据至少一个测试事件的执行情况判断第一智能合约是否满足预设标准。可见,本发明实施例中,通过获取钱包地址集合,实现根据钱包地址集合进行测试事件的构建,提高了构建测试事件的自动化程度,提高了构建测试事件的效率,进而提升了针对第一智能合约的测试效率。
在一种可能的实施方式中,获取至少一个测试事件的执行情况之后,方法还包括:若至少一个测试事件中包括执行成功的测试事件;则根据执行成功的测试事件的执行情况生成通知信息;向预设的目标账户发送通知信息。
具体的,本发明实施例中采用web3.js实例化第一智能合约,并订阅第一智能合约的事件,当构建至少一个测试事件后,电子设备可以监听第一智能合约的事件,并生成通知信息。
其中,在构建至少一个测试事件之后,电子设备可以生成至少一个测试事件的测试报告,包括至少一个测试事件中每个测试事件的具体执行情况,包括执行成功或执行失败;通知信息中包括至少一个测试事件的测试报告。其中,通知信息的表现形式可以是邮件,信息等,此处不做限定。预设的目标账户为预先设定且为通知信息的表现形式对应的账户;例如,通知信息的表现形式为邮件,则预设的目标账户为邮箱账号。
在一种可能的实施方式中,获取钱包地址集合,包括:解析区块链中钱包存储层中每个账户的账户类型;根据账户类型将每个账户对应的钱包地址划分至冷钱包地址集合或热钱包地址集合;根据冷钱包地址集合和热钱包地址集合构成钱包地址集合。
其中,账户类型包括用户账户和平台账户;其中,用户账户指的是钱包地址是私人从平台外生成的;平台账户指的是钱包地址是从区块链平台生成的。若账户类型为用户账户则将该账户对应的钱包地址划分至冷钱包地址集合;若账户类型为平台账户则将该账户对应的钱包地址划分至热钱包地址集合。
在一种可能的实施方式中,部署智能合约的测试环境,包括:下载并安装以太坊中第一协议对应的客户端,第一智能合约是基于第一协议的智能合约;通过客户端创建至少一个账户;获取创世区块的配置信息;根据配置信息创建创世区块;建立交互环境,得到区块链,交互环境用于区块链中节点之间的通信交互;通过至少一个账户执行挖矿操作。
其中,第一协议可以是ERC20标准协议。第一协议对应的客户端为Geth客户端。下载并安装Geth的命令为:git clone https://github.com/ethereum/go-ethereum;cd go-ethereum;make geth;其中,可以通过geth version查看版本号。
其中,第一智能合约是符合第一协议的,及第一智能合约是用于满足第一协议的区块链环境中的。
其中,建立至少一个账户的命令为:geth--datadir path/to/custom/data/folder account new。
其中,创世区块的配置信息可参阅图2C,图2C是本发明实施例中一种创世区块的配置信息的示意图。其中,根据配置信息创建创世区块包括:创建创世区块:Geth--datadirpath/to/custom/data/folder init path/to/store/genesisfile/genesis.json;启动创世区块:geth--datadir path/to/custom/data/folder--ipcpath path/to/custom/data/folder/geth.ipc--networkid 15。
其中,建立交互环境:geth attach ipc:/Users/zhangpeng/ethData/geth.ipc;
其中,执行挖矿操作:miner.start()。
在一种可能的实施方式中,下载并安装以太坊中第一协议对应的客户端之前,方法还包括:向软件研发提测流程管理平台发送第一智能合约;确认第一智能合约通过软件研发提测流程管理平台的测试。
其中,软件研发提测流程管理平台用于实现管理软件版本开发、提测、缺陷提交、回归测试、发布整个生命周期等功能。
在一种可能的实施方式中,根据钱包地址集合构建至少一个测试事件,包括:通过外部钱包确定冷钱包地址中的第一钱包地址;通过外部钱包确定热钱包地址中的第二钱包地址;通过外部钱包将第一钱包地址中的资产转账至第二钱包地址,得到测试事件。
其中,在区块链的应用层,设置有外部钱包,外部钱包是区块链应用层的一个应用程序接口(Application Programming Interface,API);外部钱包可在测试事件构建完成后通过对应的接口与区块链中的合约层进行交互,进而实现第一智能合约的触发。
可选的,外部钱包是区块链应用层的应用程序,通过外部钱包可实现资产的转账,同时该应用程序可通过对应的接口实现与合约层的通信,触发智能合约的执行;例如本发明实施例中的第一智能合约。
其中,外部钱包可随机选择冷钱包地址集合中的一个钱包地址,并确定为第一钱包地址;外部钱包随机选择热钱包地址集合中的一个钱包地址,并确定为第二钱包地址。
可见,本实施方式中,外部钱包可作为API实现整个测试事件的构建,使得在测试过程中,用户只需在应用层启动外部钱包即可实现测试事件的构建,提升了测试事件构建过程中的自动化程度。
在一种可能的实施方式中,根据钱包地址集合构建至少一个测试事件,包括:显示预设界面,第一预设界面包括冷钱包地址集合和热钱包地址集合;接收选择信息,根据选择信息确定冷钱包地址集合中的第一钱包地址和热钱包地址集合中的第二钱包地址;显示预设按键,预设按键用于启动测试事件的构建;接收针对预设按钮的第二选择信息;将第一钱包地址中的资产转账至第二钱包地址,得到测试事件。
其中,外部钱包可包括一系列的显示界面,进而在当前区块链的节点对应的电子设备上显示相关的显示界面,并接收用户的针对显示界面中对应内容的设置操作,根据用户的设置操作执行对应的任务;具体的,本实施方式中,预设界面中包括冷钱包地址集合中的每个钱包地址和热钱包地址集合中的每个钱包地址,电子设备接收到用户针对冷钱包地址集合中的一个钱包地址的选择信息,则外部钱包确定该钱包地址为第一钱包地址;电子设备接收到用户针对热钱包地址集合中的一个钱包地址的选择信息,则外部钱包确定该钱包地址为第二钱包地址;外部钱包控制电子设备显示预设按键,例如“确定”按键,在用户点击显示屏上的“确定”按键后,外部钱包构建资产由第一钱包地址转至第二钱包地址的测试事件,并通过对应的接口与合约层进行通信,通知合约层当前存在测试事件,若满足第一智能合约的执行条件,则会触发第一智能合约的执行。
可见,本实施方式中,用户可与应用层的外部钱包进行交互,进而确定第一钱包地址和第二钱包地址,在完成钱包地址的选择之后,由用户控制测试事件的构建,使得整个测试过程既满足用户控制的灵活性,又实现了整个测试过程的高效性。
在一种可能的实施方式中,根据钱包地址集合构建至少一个测试事件,包括:通过外部钱包确定冷钱包地址中的第一钱包地址;通过外部钱包确定热钱包地址中的第二钱包地址;显示预设按键,预设按键用于启动测试事件的构建;接收针对预设按钮的第二选择信息;将第一钱包地址中的资产转账至第二钱包地址,得到测试事件。
具体的,请参阅图2D,图2D是本发明实施例提供的一种智能合约开发,测试和发布的流程示意图。
请参见图3,图3是本发明实施例提供的另一种区块链中的合约测试方法的流程示意图,该区块链中的合约测试方法可包括以下步骤S301-S304:
S301,下载并安装以太坊中第一协议对应的客户端;
其中,第一协议为ERC20标准协议,是一个合约接口标准协议,设计初衷是为以太坊中的Token合约提供一套常见的功能和接口,任何基于ERC20标准的合约都能兼容以太坊钱包,同时支持发行、转让,合约归集是ERC20资产从热钱包地址转到冷钱包地址,相反方向则不允许转让,通常钱包应用层和合约层都应具备相应的拦截功能。
S302,通过客户端创建至少一个账户;
S303,获取创世区块的配置信息;
S304,根据配置信息创建创世区块;
其中,区块链由多个相连的区块构成,每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。第一个被最早构建的区块称为创世区块,拥有一个唯一的ID标识号。除创世块外,每个后续建立的区块均包含两个身份标识号,一个是该区块自身的身份标识号,另一个是前序区块的身份标识号。通过身份标识号间的前后指向关系,所有区块按序相连就构成了区块链。
S305,建立交互环境,得到区块链,交互环境用于区块链中节点之间的通信交互;
其中,区块链是一种多方共同维护,使用密码学保证传输和访问安全,能够实现数据一致存储、难以篡改、防止抵赖的记账技术,也就是分布式账本技术
S306,通过至少一个账户执行挖矿操作;
S307,获取钱包地址集合;
S308,根据钱包地址集合构建至少一个测试事件,测试事件可触发第一智能合约的执行。
其中,智能合约通常是指采用solidity、vyper等高级语言编写的不可改变的计算机程序,运行在区块链虚拟机(以太坊的EVM、Fabric的docker等),以确定性的方式实现去中心化应用的技术。
其中,钱包地址集合包括冷钱包地址集合和热钱包地址集合,测试事件包括第一钱包地址和第二钱包地址,测试事件中的资产由第一钱包地址转至第二钱包地址,冷钱包地址集合中包括第一钱包地址,热钱包地址集合中包括第二钱包地址。
S309,获取至少一个测试事件的执行情况;
S310,若至少一个测试事件的执行行情况全部为执行失败,则确定第一智能合约满足预设标准;否则,确定第一智能合约不满足预设标准。
可以看出,本发明实施例中,下载并安装以太坊中第一协议对应的客户端;通过客户端创建至少一个账户;获取创世区块的配置信息;根据配置信息创建创世区块;建立交互环境,得到区块链,交互环境用于区块链中节点之间的通信交互;通过至少一个账户执行挖矿操作;获取钱包地址集合;根据钱包地址集合构建至少一个测试事件,测试事件可触发第一智能合约的执行。获取至少一个测试事件的执行情况;若至少一个测试事件的执行情况全部为执行失败,则确定第一智能合约满足预设标准;否则,确定第一智能合约不满足预设标准。可见,本发明实施例中,电子设备可建立测试环境,并自动的获取钱包地址集合,进而根据钱包地址集合构建测试事件,提升了测试智能合约的自动化,提升了针对智能合约测试的效率,提升了电子设备的智能性。
基于上述区块链中的合约测试方法实施例的描述,本发明实施例还公开了一种区块链中的合约测试装置,所述区块链中的合约测试装置可以是运行于电子设备中的一个计算机程序(包括程序代码)。该区块链中的合约测试装置可以执行图2A或图3所示的方法。请参见图4,所述区块链中的合约测试装置可以运行如下单元:
通信单元402,用于获取钱包地址集合,所述钱包地址集合由区块链上的账户地址构成;
处理单元401,还用于在区块链上部署第一智能合约;以及用于根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;
所述通信单元402,还用于获取所述至少一个测试事件的执行情况;
所述处理单元401,还用于根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。
在一种实施方式中,所述钱包地址集合包括冷钱包地址集合和热钱包地址集合,所述测试事件包括第一钱包地址和第二钱包地址,所述测试事件中的资产由所述第一钱包地址转至所述第二钱包地址,所述冷钱包地址集合中包括所述第一钱包地址,所述热钱包地址集合中包括所述第二钱包地址。
在一种可能的实施方式中,处理单元401在用于根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准时,具体用于:若所述至少一个测试事件的执行情况全部为执行失败,则确定所述第一智能合约满足所述预设标准;否则,确定所述第一智能合约不满足所述预设标准。
再一种实施方式中,处理单元401在用于获取所述至少一个测试事件的执行情况之后,还用于:若所述至少一个测试事件中包括执行成功的测试事件;则根据所述执行成功的测试事件的执行情况生成通知信息;向预设的目标账户发送所述通知信息。
再一种实施方式中,处理单元401在用于获取钱包地址集合时,具体用于:解析所述区块链中钱包存储层中每个账户的账户类型;根据所述账户类型将所述每个账户对应的钱包地址划分至冷钱包地址集合或热钱包地址集合;根据所述冷钱包地址集合和所述热钱包地址集合构成所述钱包地址集合。
再一种实施方式中,处理单元401在用于部署智能合约的测试环境时,具体用于:下载并安装以太坊中第一协议对应的客户端,所述第一智能合约是符合所述第一协议的智能合约;通过所述客户端创建至少一个账户;获取创世区块的配置信息;根据所述配置信息创建所述创世区块;建立交互环境,得到所述区块链,所述交互环境用于所述区块链中节点之间的通信交互;通过所述至少一个账户执行挖矿操作。
再一种实施方式中,处理单元401在用于下载并安装以太坊中第一协议对应的客户端之前,还用于:向软件研发提测流程管理平台发送所述第一智能合约;确认所述第一智能合约通过所述软件研发提测流程管理平台的测试。
再一种实施方式中,处理单元401在用于根据所述钱包地址集合构建至少一个测试事件时,具体用于:通过外部钱包确定所述冷钱包地址中的所述第一钱包地址;通过所述外部钱包确定所述热钱包地址中的所述第二钱包地址;通过所述外部钱包将所述第一钱包地址中的资产转账至所述第二钱包地址,得到所述测试事件。
再一种实施方式中,处理单元401在用于根据所述钱包地址集合构建至少一个测试事件时,具体用于:显示预设界面,所述第一预设界面包括所述冷钱包地址集合和所述热钱包地址集合;接收选择信息,根据所述选择信息确定所述冷钱包地址集合中的所述第一钱包地址和所述热钱包地址集合中的所述第二钱包地址;显示预设按键,所述预设按键用于启动所述测试事件的构建;接收针对所述预设按钮的第二选择信息;将所述第一钱包地址中的资产转账至所述第二钱包地址,得到所述测试事件。
根据本发明的另一个实施例,图4所示的区块链中的合约测试装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本发明的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本发明的其它实施例中,基于区块链中的合约测试装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本发明的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2A或图3中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图4中所示的区块链中的合约测试装置设备,以及来实现本发明实施例的区块链中的合约测试方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
可以看出,本发明实施例中,首先,获取钱包地址集合;其次,在区块链上部署第一智能合约;其次,根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;其次,获取所述至少一个测试事件的执行情况;最后根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。可见,本发明实施例中,可通过获取钱包地址集合,实现根据钱包地址集合进行测试事件的构建,提高了构建测试事件的自动化程度,提高了构建测试事件的效率,进而提升了针对第一智能合约的测试效率。
基于上述方法实施例以及装置实施例的描述,本发明实施例还提供一种电子设备。请参见图5,该电子设备至少包括处理器501、输入设备505、输出设备503以及计算机存储介质504。其中,电子设备内的处理器501、输入设备505、输出设备503以及计算机存储介质504可通过总线或其他方式连接。
计算机存储介质504可以存储在电子设备的存储器中,所述计算机存储介质504用于存储计算机程序,所述计算机程序包括程序指令,所述处理器501用于执行所述计算机存储介质504存储的程序指令。处理器501(或称CPU(Central Processing Unit,中央处理器))是电子设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能;在一个实施例中,本发明实施例所述的处理器501可以用于进行一系列的区块链中的合约测试处理,包括:获取钱包地址集合;在区块链上部署第一智能合约;根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;获取所述至少一个测试事件的执行情况;根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。
本发明实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是电子设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括电子设备中的内置存储介质,当然也可以包括电子设备所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了电子设备的操作系统。并且,在该存储空间中还存放了适于被处理器501加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,可由处理器501加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关区块链中的合约测试实施例中的方法的相应步骤;具体实现中,计算机存储介质中的一条或多条指令由处理器501加载并执行如下步骤:
获取钱包地址集合,所述钱包地址集合由区块链上的账户地址构成;
在区块链上部署第一智能合约;
根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;
获取所述至少一个测试事件的执行情况;
根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。
在一种实施方式中,所述钱包地址集合包括冷钱包地址集合和热钱包地址集合,所述测试事件包括第一钱包地址和第二钱包地址,所述测试事件中的资产由所述第一钱包地址转至所述第二钱包地址,所述冷钱包地址集合中包括所述第一钱包地址,所述热钱包地址集合中包括所述第二钱包地址。
再一种实施方式中,在用于根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准时,所述一条或多条指令还可由处理器501加载并具体执行:若所述至少一个测试事件的执行情况全部为执行失败,则确定所述第一智能合约满足所述预设标准;否则,确定所述第一智能合约不满足所述预设标准。
再一种实施方式中,在用于获取所述至少一个测试事件的执行情况之后,所述一条或多条指令还可由处理器501加载并具体执行:若所述至少一个测试事件中包括执行成功的测试事件;则根据所述执行成功的测试事件的执行情况生成通知信息;向预设的目标账户发送所述通知信息。
再一种实施方式中,在用于获取钱包地址集合时,所述一条或多条指令还可由处理器501加载并具体执行:解析所述区块链中钱包存储层中每个账户的账户类型;根据所述账户类型将所述每个账户对应的钱包地址划分至冷钱包地址集合或热钱包地址集合;根据所述冷钱包地址集合和所述热钱包地址集合构成所述钱包地址集合。
再一种实施方式中,在用于部署智能合约的测试环境时,所述一条或多条指令还可由处理器501加载并具体执行:下载并安装以太坊中第一协议对应的客户端,所述第一智能合约是符合所述第一协议的智能合约;通过所述客户端创建至少一个账户;获取创世区块的配置信息;根据所述配置信息创建所述创世区块;建立交互环境,得到所述区块链,所述交互环境用于所述区块链中节点之间的通信交互;通过所述至少一个账户执行挖矿操作。
再一种实施方式中,在用于下载并安装以太坊中第一协议对应的客户端之前,所述一条或多条指令还可由处理器501加载并具体执行:向软件研发提测流程管理平台发送所述第一智能合约;确认所述第一智能合约通过所述软件研发提测流程管理平台的测试。
再一种实施方式中,在用于根据所述钱包地址集合构建至少一个测试事件时,所述一条或多条指令还可由处理器501加载并具体执行:通过外部钱包确定所述冷钱包地址中的所述第一钱包地址;通过所述外部钱包确定所述热钱包地址中的所述第二钱包地址;通过所述外部钱包将所述第一钱包地址中的资产转账至所述第二钱包地址,得到所述测试事件。
再一种实施方式中,在用于根据所述钱包地址集合构建至少一个测试事件时,所述一条或多条指令还可由处理器501加载并具体执行:显示预设界面,所述第一预设界面包括所述冷钱包地址集合和所述热钱包地址集合;接收选择信息,根据所述选择信息确定所述冷钱包地址集合中的所述第一钱包地址和所述热钱包地址集合中的所述第二钱包地址;显示预设按键,所述预设按键用于启动所述测试事件的构建;接收针对所述预设按钮的第二选择信息;将所述第一钱包地址中的资产转账至所述第二钱包地址,得到所述测试事件。
可以看出,本发明实施例中,首先,获取钱包地址集合;其次,在区块链上部署第一智能合约;其次,根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;其次,获取所述至少一个测试事件的执行情况;最后根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。可见,本发明实施例中,通过获取钱包地址集合,实现根据钱包地址集合进行测试事件的构建,提高了构建测试事件的自动化程度,提高了构建测试事件的效率,进而提升了针对第一智能合约的测试效率。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (10)
1.一种区块链中的合约测试方法,其特征在于,所述方法包括:
获取钱包地址集合,所述钱包地址集合由区块链上的账户地址构成;
在所述区块链上部署第一智能合约;
根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;
获取所述至少一个测试事件的执行情况;
根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。
2.如权利要求1所述的方法,其特征在于,所述钱包地址集合包括冷钱包地址集合和热钱包地址集合,所述测试事件包括第一钱包地址和第二钱包地址,所述测试事件中的资产由所述第一钱包地址转至所述第二钱包地址,所述冷钱包地址集合中包括所述第一钱包地址,所述热钱包地址集合中包括所述第二钱包地址。
3.如权利要求2所述的方法,其特征在于,所述根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准,包括:
若所述至少一个测试事件的执行情况全部为执行失败,则确定所述第一智能合约满足所述预设标准;
否则,确定所述第一智能合约不满足所述预设标准。
4.如权利要求2或3所述的方法,其特征在于,所述获取所述至少一个测试事件的执行情况之后,所述方法还包括:
若所述至少一个测试事件中包括执行成功的测试事件;
则根据所述执行成功的测试事件的执行情况生成通知信息;
向预设的目标账户发送所述通知信息。
5.如权利要求1-4任一项所述的方法,其特征在于,所述获取钱包地址集合,包括:
解析所述区块链中钱包存储层中每个账户的账户类型;
根据所述账户类型将所述每个账户对应的钱包地址划分至冷钱包地址集合或热钱包地址集合;
根据所述冷钱包地址集合和所述热钱包地址集合构成所述钱包地址集合。
6.如权利要求2-4任一项所述的方法,其特征在于,所述根据所述钱包地址集合构建至少一个测试事件,包括:
通过外部钱包确定所述冷钱包地址中的所述第一钱包地址;
通过所述外部钱包确定所述热钱包地址中的所述第二钱包地址;
通过所述外部钱包将所述第一钱包地址中的资产转账至所述第二钱包地址,得到所述测试事件。
7.如权利要求2-4任一项所述的方法,其特征在于,所述根据所述钱包地址集合构建至少一个测试事件,包括:
显示预设界面,所述第一预设界面包括所述冷钱包地址集合和所述热钱包地址集合;
接收选择信息,
根据所述选择信息确定所述冷钱包地址集合中的所述第一钱包地址和所述热钱包地址集合中的所述第二钱包地址;
显示预设按键,所述预设按键用于启动所述测试事件的构建;
接收针对所述预设按钮的第二选择信息;
将所述第一钱包地址中的资产转账至所述第二钱包地址,得到所述测试事件。
8.一种区块链中的合约测试装置,其特征在于,包括:
通信单元,用于获取钱包地址集合,所述钱包地址集合由区块链上的账户地址构成;
处理单元,还用于在所述区块链上部署第一智能合约;以及用于根据所述钱包地址集合构建至少一个测试事件,所述测试事件可触发所述第一智能合约的执行;
所述通信单元,还用于获取所述至少一个测试事件的执行情况;
所述处理单元,还用于根据所述至少一个测试事件的执行情况判断所述第一智能合约是否满足预设标准。
9.一种电子设备,包括输入设备和输出设备,其特征在于,还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-6任一项所述的区块链中的合约测试方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如权利要求1-7任一项所述的区块链中的合约测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010205208.2A CN111444090B (zh) | 2020-03-24 | 2020-03-24 | 区块链中的合约测试方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010205208.2A CN111444090B (zh) | 2020-03-24 | 2020-03-24 | 区块链中的合约测试方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111444090A true CN111444090A (zh) | 2020-07-24 |
CN111444090B CN111444090B (zh) | 2024-04-26 |
Family
ID=71629513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010205208.2A Active CN111444090B (zh) | 2020-03-24 | 2020-03-24 | 区块链中的合约测试方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111444090B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782551A (zh) * | 2020-08-04 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 针对区块链项目的测试方法、装置及计算机设备 |
WO2022131410A1 (ko) * | 2020-12-18 | 2022-06-23 | 라인 가부시키가이샤 | 고객 자산 분별 관리를 위한 암호화폐 시스템 및 암호화폐 지갑 관리 방법 |
WO2022131411A1 (ko) * | 2020-12-18 | 2022-06-23 | 라인 가부시키가이샤 | 고신뢰 오프라인 지갑을 이용한 암호화폐 시스템 및 암호화폐 지갑 관리 방법 |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070038890A1 (en) * | 2005-08-11 | 2007-02-15 | Microsoft Corporation | Configurable system and methods for writing and executing test components |
US20160078539A1 (en) * | 2014-09-15 | 2016-03-17 | Aesthetic Integration Limited | System and method for modeling and verifying financial trading platforms |
CN107943691A (zh) * | 2017-11-17 | 2018-04-20 | 深圳圣马歌科技有限公司 | 一种自动产生智能合约的功能测试页面的方法及装置 |
US20180165184A1 (en) * | 2016-12-13 | 2018-06-14 | Global Healthcare Exchange, Llc | Production-like testing and complex business to business auditing system |
CN108288159A (zh) * | 2018-03-07 | 2018-07-17 | 物数(上海)信息科技有限公司 | 基于多区块链的跨链交易方法、系统、设备及存储介质 |
CN108763058A (zh) * | 2018-04-24 | 2018-11-06 | 苏州同济区块链研究院有限公司 | 一种区块链测评系统 |
CN109345390A (zh) * | 2018-09-25 | 2019-02-15 | 深圳市元征科技股份有限公司 | 一种智能合约访问方法、系统、设备及计算机存储介质 |
JP2019053729A (ja) * | 2017-09-15 | 2019-04-04 | 富士通株式会社 | スマートコントラクトのテスト方法及びテスト装置 |
CN109636543A (zh) * | 2018-12-25 | 2019-04-16 | 北京云测网络科技有限公司 | 一种区块链测试方法和装置 |
CN109885462A (zh) * | 2019-01-10 | 2019-06-14 | 深圳银链科技有限公司 | 一种区块链节点性能测试方法、系统、设备及存储介质 |
CN110097467A (zh) * | 2019-05-05 | 2019-08-06 | 华中科技大学 | 一种针对智能合约安全性和稳定性的侧链测试方法 |
CN110162470A (zh) * | 2019-04-28 | 2019-08-23 | 阿里巴巴集团控股有限公司 | 一种区块链的测试方法和装置 |
CN110196802A (zh) * | 2018-02-26 | 2019-09-03 | 财付通支付科技有限公司 | 一种测试数据处理方法、装置和服务器 |
CN110221956A (zh) * | 2018-03-02 | 2019-09-10 | 富士通株式会社 | 用于生成区块链智能合约的测试用例的方法和设备 |
KR20190115551A (ko) * | 2018-04-03 | 2019-10-14 | 주식회사 비즈모델라인 | 블록체인 기반 스마트 컨트랙트를 이용한 암호화폐 거래 제공 방법 |
CN110633200A (zh) * | 2018-06-25 | 2019-12-31 | 富士通株式会社 | 用于测试智能合约的方法和设备 |
US20200090229A1 (en) * | 2018-09-17 | 2020-03-19 | Visa International Service Association | System, Method, and Computer Program Product to Test a Campaign End-To-End Before Launch |
-
2020
- 2020-03-24 CN CN202010205208.2A patent/CN111444090B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070038890A1 (en) * | 2005-08-11 | 2007-02-15 | Microsoft Corporation | Configurable system and methods for writing and executing test components |
US20160078539A1 (en) * | 2014-09-15 | 2016-03-17 | Aesthetic Integration Limited | System and method for modeling and verifying financial trading platforms |
US20180165184A1 (en) * | 2016-12-13 | 2018-06-14 | Global Healthcare Exchange, Llc | Production-like testing and complex business to business auditing system |
JP2019053729A (ja) * | 2017-09-15 | 2019-04-04 | 富士通株式会社 | スマートコントラクトのテスト方法及びテスト装置 |
CN107943691A (zh) * | 2017-11-17 | 2018-04-20 | 深圳圣马歌科技有限公司 | 一种自动产生智能合约的功能测试页面的方法及装置 |
CN110196802A (zh) * | 2018-02-26 | 2019-09-03 | 财付通支付科技有限公司 | 一种测试数据处理方法、装置和服务器 |
CN110221956A (zh) * | 2018-03-02 | 2019-09-10 | 富士通株式会社 | 用于生成区块链智能合约的测试用例的方法和设备 |
CN108288159A (zh) * | 2018-03-07 | 2018-07-17 | 物数(上海)信息科技有限公司 | 基于多区块链的跨链交易方法、系统、设备及存储介质 |
KR20190115551A (ko) * | 2018-04-03 | 2019-10-14 | 주식회사 비즈모델라인 | 블록체인 기반 스마트 컨트랙트를 이용한 암호화폐 거래 제공 방법 |
CN108763058A (zh) * | 2018-04-24 | 2018-11-06 | 苏州同济区块链研究院有限公司 | 一种区块链测评系统 |
CN110633200A (zh) * | 2018-06-25 | 2019-12-31 | 富士通株式会社 | 用于测试智能合约的方法和设备 |
US20200090229A1 (en) * | 2018-09-17 | 2020-03-19 | Visa International Service Association | System, Method, and Computer Program Product to Test a Campaign End-To-End Before Launch |
CN109345390A (zh) * | 2018-09-25 | 2019-02-15 | 深圳市元征科技股份有限公司 | 一种智能合约访问方法、系统、设备及计算机存储介质 |
CN109636543A (zh) * | 2018-12-25 | 2019-04-16 | 北京云测网络科技有限公司 | 一种区块链测试方法和装置 |
CN109885462A (zh) * | 2019-01-10 | 2019-06-14 | 深圳银链科技有限公司 | 一种区块链节点性能测试方法、系统、设备及存储介质 |
CN110162470A (zh) * | 2019-04-28 | 2019-08-23 | 阿里巴巴集团控股有限公司 | 一种区块链的测试方法和装置 |
CN110097467A (zh) * | 2019-05-05 | 2019-08-06 | 华中科技大学 | 一种针对智能合约安全性和稳定性的侧链测试方法 |
Non-Patent Citations (1)
Title |
---|
王德文;柳智权;: "基于智能合约的区域能源交易模型与实验测试", 电网技术, no. 06, 7 March 2019 (2019-03-07) * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782551A (zh) * | 2020-08-04 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 针对区块链项目的测试方法、装置及计算机设备 |
CN111782551B (zh) * | 2020-08-04 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 针对区块链项目的测试方法、装置及计算机设备 |
WO2022131410A1 (ko) * | 2020-12-18 | 2022-06-23 | 라인 가부시키가이샤 | 고객 자산 분별 관리를 위한 암호화폐 시스템 및 암호화폐 지갑 관리 방법 |
WO2022131411A1 (ko) * | 2020-12-18 | 2022-06-23 | 라인 가부시키가이샤 | 고신뢰 오프라인 지갑을 이용한 암호화폐 시스템 및 암호화폐 지갑 관리 방법 |
Also Published As
Publication number | Publication date |
---|---|
CN111444090B (zh) | 2024-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110599173B (zh) | 区块链的共识节点确定方法、装置、设备及存储介质 | |
CN111444090B (zh) | 区块链中的合约测试方法、装置、电子设备及存储介质 | |
CN110443075A (zh) | 一种区块链智能合约验证部署的方法及装置 | |
CN111445333A (zh) | 区块生成方法、装置、计算机设备以及存储介质 | |
CN109379369A (zh) | 单点登录方法、装置、服务器及存储介质 | |
CN112527912B (zh) | 基于区块链网络的数据处理方法、装置及计算机设备 | |
CN110602125B (zh) | 数据处理方法、装置、终端及存储介质 | |
CN110601896B (zh) | 一种基于区块链节点的数据处理方法以及设备 | |
CN111291060A (zh) | 一种管理区块链节点的方法、装置及计算机可读介质 | |
CN112801658B (zh) | 跨境资源转移真实性审核方法、装置及电子设备 | |
CN112700246B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN112613877B (zh) | 应用于区块链网络的智能合约触发方法、装置及相关设备 | |
CN111782551B (zh) | 针对区块链项目的测试方法、装置及计算机设备 | |
CN109117608A (zh) | 一种数据处理方法、装置及相关设备 | |
CN107147711A (zh) | 应用服务更新方法及装置 | |
CN110365479A (zh) | 基于区块链的随机数生成方法及装置 | |
CN112017007A (zh) | 用户行为数据的处理方法及装置、计算机设备、存储介质 | |
CN110517020A (zh) | 基于区块链网络的项目开发方法及区块链网络的节点 | |
CN109727139A (zh) | 保险套餐订制方法、装置、设备及可读存储介质 | |
CN112634047A (zh) | 外汇交易模拟测试方法、装置、计算机设备及存储介质 | |
CN107682376B (zh) | 风控数据交互方法及装置 | |
CN111352835B (zh) | 一种智能合约的测试方法、装置、设备及存储介质 | |
CN110519274A (zh) | 区块链信息传输方法、装置、设备及存储介质 | |
CN115701078B (zh) | 跨链交易处理方法、装置、电子设备以及存储介质 | |
CN112883425A (zh) | 基于区块链的数据处理方法以及区块链节点 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |