CN116185806A - 一种数字货币系统的测试方法和装置 - Google Patents

一种数字货币系统的测试方法和装置 Download PDF

Info

Publication number
CN116185806A
CN116185806A CN202111423371.7A CN202111423371A CN116185806A CN 116185806 A CN116185806 A CN 116185806A CN 202111423371 A CN202111423371 A CN 202111423371A CN 116185806 A CN116185806 A CN 116185806A
Authority
CN
China
Prior art keywords
test
transaction
account
tested
information
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.)
Pending
Application number
CN202111423371.7A
Other languages
English (en)
Inventor
王帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bank of China Ltd
Digital Currency Institute of the Peoples Bank of China
Original Assignee
Bank of China Ltd
Digital Currency Institute of the Peoples Bank of China
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Bank of China Ltd, Digital Currency Institute of the Peoples Bank of China filed Critical Bank of China Ltd
Priority to CN202111423371.7A priority Critical patent/CN116185806A/zh
Publication of CN116185806A publication Critical patent/CN116185806A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test 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)
  • Cash Registers Or Receiving Machines (AREA)

Abstract

本发明公开了一种数字货币系统的测试方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额;根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试。该实施方式提高了数字货币系统测试的自动化程度、提高了测试效率和测试准确率。

Description

一种数字货币系统的测试方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种数字货币系统的测试方法和装置。
背景技术
在数字货币系统开发和测试过程中,随着系统版本与应用场景的增加,对测试周期压缩、测试质量提升提出了更高的要求。当前的数字货币系统的自动化测试,主要针对的是交易报文,通过交易报文的反馈结果来体现交易状态和结果。即,现有的数字货币系统的自动化测试方法主要考虑的测试数字货币系统是否能够正常运行,然后在交易报文反馈后,通过人工查询数据库来核对测试结果。
现有技术中至少存在如下问题:
现有的自动化测试方法主要是针对数字货币系统在不同的测试环境、不同的测试场景下的运行状况,而运行结果的测试主要是通过人工查询数据库进行核对,由于未将运行结果的测试纳入自动化测试范畴中,导致数字货币系统测试的自动化程度低,测试效率低、测试准确率低的技术问题。
发明内容
有鉴于此,本发明实施例提供一种数字货币系统的测试方法和装置,能够将运行结果的测试纳入自动化测试过程中,提高了数字货币系统测试的自动化程度、提高了测试效率和测试准确率。
为实现上述目的,根据本发明实施例的第一方面,提供了一种数字货币系统的测试方法,包括:
接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;
根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;其中,测试环境包括多个测试版本,且测试环境对应于一个或多个交易测试场景;交易测试数据包括交易双方账户、交易额度以及交易方向;
在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额;
根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试。
进一步地,根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,包括:
根据第一账户余额和交易测试数据中指示的交易额度、交易方向以及交易双方账户,确定待测试账户对应的预期余额;
通过核查预期余额和第二账户余额是否一致,以实现对待测试账户进行测试。
进一步地,交易测试数据还指示了交易类型,以及交易类型与产生的会计分录数量的对应关系;若账户测试请求还指示了会计分录测试信息;方法还包括:
根据交易测试数据指示的交易类型,以及交易类型与产生的会计分录数量的对应关系,确定待测试账户对应的会计分录数量预期值;
在模拟交易完成后,查询待测试账户对应的会计分录数量实际值;
通过核查会计分录数量实际值和会计分录数量预期值是否一致,以实现对待测试账户的会计分录数量进行测试。
进一步地,会计分录中包括多个会计科目,若账户测试请求还指示了会计科目测试信息;方法还包括:
根据会计科目测试信息指示的待测试会计科目以及账户信息,在模拟交易成功后,查询待测试账户对应的目标待测试会计科目信息,以根据交易数据对目标待测试会计科目信息进行核查。
进一步地,在接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额的步骤之前,还包括:
根据测试环境、交易测试场景、账户信息以及交易测试数据设置脚本变量,以使得用户根据脚本变量发起账户测试请求。
进一步地,还包括:
接收测试环境更新信息、交易测试场景更新信息以及业务属性更新信息中的一个或多个更新信息;
根据更新信息,对脚本变量进行更新。
进一步地,若模拟交易的结果为失败,方法还包括:
中止模拟交易,并反馈交易失败信息。
根据本发明实施例的第二方面,提供了一种数字货币系统的测试装置,包括:
测试请求接收模块,用于接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;
交易测试数据生成模块,根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;其中,测试环境包括多个测试版本,且测试环境对应于一个或多个交易测试场景;交易测试数据包括交易双方账户、交易额度以及交易方向;
查询模块,用于在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额;
测试模块,用于根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试。
根据本发明实施例的第三方面,提供了一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述任一种数字货币系统的测试方法。
根据本发明实施例的第四方面,提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上述任一种数字货币系统的测试方法。
上述发明中的一个实施例具有如下优点或有益效果:因为采用接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;其中,测试环境包括多个测试版本,且测试环境对应于一个或多个交易测试场景;交易测试数据包括交易双方账户、交易额度以及交易方向;在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额;根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试的技术手段,所以克服了现有的自动化测试方法由于主要是针对数字货币系统在不同的测试环境、不同的测试场景下的运行状况,而运行结果的测试主要是通过人工查询数据库进行核对,导致数字货币系统测试的自动化程度低,测试效率低、测试准确率低的技术问题,进而达到能够将运行结果的测试纳入自动化测试过程中,提高了数字货币系统测试的自动化程度、提高了测试效率和测试准确率的技术效果。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明第一实施例提供的数字货币系统的测试方法的主要流程的示意图;
图2是根据本发明第二实施例提供的数字货币系统的测试方法的主要流程的示意图;
图3是根据本发明实施例提供的数字货币系统的测试装置的主要模块的示意图;
图4是本发明实施例可以应用于其中的示例性系统架构图;
图5是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
现有的自动化测试方法主要是针对数字货币系统在不同的测试环境、不同的测试场景下的运行状况,而运行结果的测试主要是通过人工查询数据库进行核对。人工核对账户余额和会计分录导致测试的效率较低,同时,人工核查对测试人员的个人技能依赖过大,需要熟知测试交易场景、会计分录记账方法以及不同测试交易场景对应的会计科目及记账方向,容易造成由于技能不足导致测试项的核查遗漏或者核查过程出现错误的情况,导致测试效率较低。
为了解决上述技术问题,本发明提供了以下技术方案:
本发明第一实施例提供的数字货币系统的测试方法的主要流程的示意图;如图1所示,本发明实施例提供的数字货币系统的测试方法主要包括:
步骤S101,接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额。
接收到账户测试请求后,调用数据库接口查询待测试账户对应的第一账户余额,有助于在后续模拟交易完成之后,对交易结果(账户余额)进行核对,实现对交易结果的自动化测试,以提升数字货币系统测试的自动化程度。
具体地,根据本发明实施例,在接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额的步骤之前,还包括:
根据测试环境、交易测试场景、账户信息以及交易测试数据设置脚本变量,以使得用户根据脚本变量发起账户测试请求。
其中,测试环境主要指所部署的测试版本,不同的测试环境可以为包括一个或多个交易测试场景;交易测试场景包括存款交易场景、转账交易场景以及冲正交易场景等在数字货币系统中的具体业务场景;交易测试数据包括交易双方账户、交易额度以及交易方向。
通过上述设置,根据测试环境、交易测试场景、账户信息以及交易测试数据设置脚本变量,使得不同测试环境、不同交易测试场景下均能进行相应的测试,保障了数字货币系统测试的通用性、兼容性以及易用性。
进一步地,根据本发明实施例,还包括:
接收测试环境更新信息、交易测试场景更新信息以及业务属性更新信息中的一个或多个更新信息;
根据更新信息,对脚本变量进行更新。
通过上述设置,根据所接受到的更新信息对脚本变量进行更新,有助于提升数字货币系统测试的拓展性。
步骤S102,根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易。
测试过程是在数字货币系统中根据账户测试请求指示的测试环境和交易测试场景,所生成的交易测试数据,进行模拟交易,通过设置,有助于测试当前测试环境、交易测试场景下的数字货币系统是否能够正常运行,即是否能完成上述模拟交易。
步骤S103,在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额。
在模拟交易过程中,交易测试数据所指示的交易双方账户之间根据交易方向,完成交易额度的转移,在模拟交易完成且成功的情况下,通过调用数据库查询待测试账户对应的第二账户余额,以便于对交易结果(账户余额)进行核对,实现对交易结果的自动化测试,以提升数字货币系统测试的自动化程度。
进一步地,根据本发明实施例,若模拟交易的结果为失败,方法还包括:
中止模拟交易,并反馈交易失败信息。
具体地,若模拟交易的结果为失败,则表示当前模拟交易在当前测试坏境下的当前测试场景下无法正常运行,通过反馈失败交易信息,有助于开发人员根据失败交易信息对数字货币系统进行维护。
步骤S104,根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试。
具体地,根据本发明实施例,上述根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,包括:
根据第一账户余额和交易测试数据中指示的交易额度、交易方向以及交易双方账户,确定待测试账户对应的预期余额;
通过核查预期余额和第二账户余额是否一致,以实现对待测试账户进行测试。
通过上述设置,实现了对账户余额这一交易结果进行核对,实现了对账户余额的自动化测试,拓展了测试的范围,提升了数字货币系统测试的自动化程度。
进一步地,根据本发明实施例,上述交易测试数据还指示了交易类型,以及交易类型与产生的会计分录数量的对应关系;若账户测试请求还指示了会计分录测试信息;方法还包括:
根据交易测试数据指示的交易类型,以及交易类型与产生的会计分录数量的对应关系,确定待测试账户对应的会计分录数量预期值;
在模拟交易完成后,查询待测试账户对应的会计分录数量实际值;
通过核查会计分录数量实际值和会计分录数量预期值是否一致,以实现对待测试账户的会计分录数量进行测试。
通过上述设置,实现了对会计分录数量这一交易结果进行核对,实现了对会计分录数量的自动化测试,进一步拓展了测试的范围,提升了数字货币系统测试的自动化程度。
优选地,根据本发明实施例,上述会计分录中包括多个会计科目,若账户测试请求还指示了会计科目测试信息;方法还包括:
根据会计科目测试信息指示的待测试会计科目以及账户信息,在模拟交易成功后,查询待测试账户对应的目标待测试会计科目信息,以根据交易数据对目标待测试会计科目信息进行核查。
通过上述设置,实现了对会计科目信息(模拟交易详细信息)这一交易结果进行核对,实现了对会计科目信息的自动化测试,拓展了测试的范围,进一步提升了数字货币系统测试的自动化程度。
根据本发明实施例的技术方案,因为采用接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;其中,测试环境包括多个测试版本,且测试环境对应于一个或多个交易测试场景;交易测试数据包括交易双方账户、交易额度以及交易方向;在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额;根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试的技术手段,所以克服了现有的自动化测试方法由于主要是针对数字货币系统在不同的测试环境、不同的测试场景下的运行状况,而运行结果的测试主要是通过人工查询数据库进行核对,导致数字货币系统测试的自动化程度低,测试效率低、测试准确率低的技术问题,进而达到能够将运行结果的测试纳入自动化测试过程中,提高了数字货币系统测试的自动化程度、提高了测试效率和测试准确率的技术效果。
图2是根据本发明第二实施例提供的数字货币系统的测试方法的主要流程的示意图;如图2所示,本发明实施例提供的数字货币系统的测试方法主要包括:
步骤S201,根据测试环境、交易测试场景、账户信息以及交易测试数据设置脚本变量,以使得用户根据脚本变量发起账户测试请求。
本发明在现有的自动化测试框架(如Robot Framework,简称RF,是一款自动化测试框架,支持关键字驱动,可以同时测试多种类型的客户端或者接口)的基础上进行改进,对自动化测试框架中的数据库插件进行数据库连接,编制测试脚本以实现核对账户余额、核对会计分录功能,适用于不同交易场景的自动化测试。根据本发明实施例,可采用自动化测试框架中的数据库插件进行数据库连接及访问(如通过关键词“数据库连接”来进行连接并访问数据库,该关键词内封装有一个访问数据库的方法),通过该关键字实现RF脚本对数据库的访问,同时还可通过设置测试变量、测试交易场景,以实现针对不同测试环境、不同测试交易场景下的数字货币系统进行自动化测试(执行“模拟交易-核对账户余额-核对会计分录”这一完整过程的测试)。
通过上述设置,根据测试环境、交易测试场景、账户信息以及交易测试数据设置脚本变量,使得不同测试环境、不同交易测试场景下均能进行相应的测试,保障了数字货币系统测试的通用性、兼容性以及易用性。
根据本发明实施例的一具体实施方式,例如针对“核对账户余额”这个测试功能而言,将输入项设计为“账号”和“账户类型”,输出项设计为“账户余额”,使得在不依赖于交易类型、具体的交易码等具体的场景信息的情况下,都可以使用核对账户余额这一测试功能,从而实现了数字货币系统测试的通用性。同时,若当前数字货币系统内账户为单一类型,可将“核对账户余额”所对应的“账户类型”这一输入项默认为空,如果后续系统由于业务功能扩展,导致账户类型的数量增加,针对不同账户类型存在多个账户表,可通过“账户类型”进行更新,进而在核对账户余额时,查询对应账户类型的账户表中的相应数据,保障了数字货币系统测试的兼容性和可扩展性;另一方面,执行针对测试结果所对应的脚本变量较少,执行流程较为简单,这保障了数字货币系统测试的易用性。
进一步地,根据本发明实施例,还包括:
接收测试环境更新信息、交易测试场景更新信息以及业务属性更新信息中的一个或多个更新信息;
根据更新信息,对脚本变量进行更新。
通过上述设置,根据所接受到的更新信息对脚本变量进行更新,有助于提升数字货币系统测试的拓展性。
步骤S202,接收账户测试请求,根据账户测试请求指示的账户信息和会计分录测试信息,查询待测试账户对应的第一账户余额、当前会计分录数量。
接收到账户测试请求后,调用数据库接口查询待测试账户对应的第一账户余额,有助于在后续模拟交易完成之后,对交易结果(账户余额)进行核对,实现对交易结果的自动化测试,以提升数字货币系统测试的自动化程度。
步骤S203,根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易。
测试过程是在数字货币系统中根据账户测试请求指示的测试环境和交易测试场景,所生成的交易测试数据,进行模拟交易(数字货币系统中的账务模块作为服务提供者,向交易模块以接口的方式提供服务;当账务模块提供的服务被消费时(被交易模块执行时),会进行一些内部处理,将交易结果更新在自己的数据库中),通过设置,有助于测试当前测试环境、交易测试场景下的数字货币系统是否能够正常运行,即是否能完成上述模拟交易。
步骤S204,在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额、会计分录数量实际值;
在模拟交易过程中,交易测试数据所指示的交易双方账户之间根据交易方向,完成交易额度的转移,在模拟交易完成且成功的情况下,通过调用数据库查询待测试账户对应的第二账户余额,以便于对交易结果(账户余额、会计分录数量)进行核对,实现对交易结果的自动化测试,以提升数字货币系统测试的自动化程度。
进一步地,根据本发明实施例,若模拟交易的结果为失败,方法还包括:
中止模拟交易,并反馈交易失败信息。
具体地,若模拟交易的结果为失败,则表示当前模拟交易在当前测试坏境下的当前测试场景下无法正常运行,通过反馈失败交易信息,有助于开发人员根据失败交易信息对数字货币系统进行维护。
步骤S205,根据第一账户余额和交易测试数据中指示的交易额度、交易方向以及交易双方账户,确定待测试账户对应的预期余额,通过核查预期余额和第二账户余额是否一致,以实现对待测试账户进行测试。
通过上述设置,实现了对账户余额这一交易结果进行核对,实现了对账户余额的自动化测试,拓展了测试的范围,提升了数字货币系统测试的自动化程度。
步骤S206,根据交易测试数据指示的交易类型,以及交易类型与产生的会计分录数量的对应关系,确定待测试账户对应的会计分录数量预期值;通过核查会计分录数量实际值和会计分录数量预期值是否一致,以实现对待测试账户的会计分录数量进行测试。
每次交易都会产生相应的会计分录,根据具体业务的不同,产生的会计分录的数量也可能不一致。会计分录数量预期值是指这笔交易预期会记录几条会计分录,是根据业务规则设定的。具体地,根据业务规则,交易的类型与应该记录的会计分录数量是有对应关系的。例如,手工调账类交易应该记录2条会计分录,那么根据交易测试数据指示的交易类型,可以预期应该在数据库中查询到该笔交易会有新产生的2条会计分录的记录。核对时,如果从数据库中查询出来结果是只查到了1条或者3条会计分录,那么是不符合预期的,如果查询结果是2条,那这就是符合预期的。
通过上述设置,实现了对会计分录数量这一交易结果进行核对,实现了对会计分录数量的自动化测试,进一步拓展了测试的范围,提升了数字货币系统测试的自动化程度。
优选地,根据本发明实施例,上述会计分录中包括多个会计科目,若账户测试请求还指示了会计科目测试信息;方法还包括:
根据会计科目测试信息指示的待测试会计科目以及账户信息,在模拟交易成功后,查询待测试账户对应的目标待测试会计科目信息,以根据交易数据对目标待测试会计科目信息进行核查。
会计科目是会计分录的组成部分,是账务处理中基本的对象。一般分为资产类科目、负债类科目、资产负债共同类科目、所有者权益类科目、损益类科目等。根据借贷记账法的记账规则,有借必有贷,借贷必相等。会计分录就是记录一个交易过程中,所涉及的会计科目的余额变化情况(每个会计科目的余额是增,还是减,变化量是多少,在会计分录中并不是以“增”“减”表示会计科目余额的增减,而是以“借”“贷”作为记账符号来表示会计科目的余额变动方向)。
通过上述设置,实现了对会计科目信息(模拟交易详细信息)这一交易结果进行核对,实现了对会计科目信息的自动化测试,拓展了测试的范围,进一步提升了数字货币系统测试的自动化程度。
根据本发明实施例的技术方案,因为采用接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;其中,测试环境包括多个测试版本,且测试环境对应于一个或多个交易测试场景;交易测试数据包括交易双方账户、交易额度以及交易方向;在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额;根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试的技术手段,所以克服了现有的自动化测试方法由于主要是针对数字货币系统在不同的测试环境、不同的测试场景下的运行状况,而运行结果的测试主要是通过人工查询数据库进行核对,导致数字货币系统测试的自动化程度低,测试效率低、测试准确率低的技术问题,进而达到能够将运行结果的测试纳入自动化测试过程中,提高了数字货币系统测试的自动化程度、提高了测试效率和测试准确率的技术效果。
图3是根据本发明实施例提供的数字货币系统的测试装置的主要模块的示意图;如图3所示,本发明实施例提供的数字货币系统的测试装置300主要包括:
测试请求接收模块301,用于接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额。
在接收到账户测试请求后,调用数据库接口查询待测试账户对应的第一账户余额,有助于在后续模拟交易完成之后,对交易结果(账户余额)进行核对,实现对交易结果的自动化测试,以提升数字货币系统测试的自动化程度。
具体地,根据本发明实施例,上述数字货币系统的测试装置300还包括脚本变量设置模块,在接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额的步骤之前,脚本变量设置模块用于:
根据测试环境、交易测试场景、账户信息以及交易测试数据设置脚本变量,以使得用户根据脚本变量发起账户测试请求。
其中,测试环境主要指所部署的测试版本,不同的测试环境可以为包括一个或多个交易测试场景;交易测试场景包括存款交易场景、转账交易场景以及冲正交易场景等在数字货币系统中的具体业务场景;交易测试数据包括交易双方账户、交易额度以及交易方向。
通过上述设置,根据测试环境、交易测试场景、账户信息以及交易测试数据设置脚本变量,使得不同测试环境、不同交易测试场景下均能进行相应的测试,保障了数字货币系统测试的通用性、兼容性以及易用性。
进一步地,根据本发明实施例,上述数字货币系统的测试装置300还包括脚本变量更新模块,用于:
接收测试环境更新信息、交易测试场景更新信息以及业务属性更新信息中的一个或多个更新信息;
根据更新信息,对脚本变量进行更新。
通过上述设置,根据所接受到的更新信息对脚本变量进行更新,有助于提升数字货币系统测试的拓展性。
交易测试数据生成模块302,根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;其中,测试环境包括多个测试版本,且测试环境对应于一个或多个交易测试场景;交易测试数据包括交易双方账户、交易额度以及交易方向。
测试过程是在数字货币系统中根据账户测试请求指示的测试环境和交易测试场景,所生成的交易测试数据,进行模拟交易,通过设置,有助于测试当前测试环境、交易测试场景下的数字货币系统是否能够正常运行,即是否能完成上述模拟交易。
查询模块303,用于在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额。
在模拟交易过程中,交易测试数据所指示的交易双方账户之间根据交易方向,完成交易额度的转移,在模拟交易完成且成功的情况下,通过调用数据库查询待测试账户对应的第二账户余额,以便于对交易结果(账户余额)进行核对,实现对交易结果的自动化测试,以提升数字货币系统测试的自动化程度。
进一步地,根据本发明实施例,上述数字货币系统的测试装置300还包括反馈模块,若模拟交易的结果为失败,用于:
中止模拟交易,并反馈交易失败信息。
具体地,若模拟交易的结果为失败,则表示当前模拟交易在当前测试坏境下的当前测试场景下无法正常运行,通过反馈失败交易信息,有助于开发人员根据失败交易信息对数字货币系统进行维护。
测试模块304,用于根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试。
具体地,根据本发明实施例,上述测试模块304用于:
根据第一账户余额和交易测试数据中指示的交易额度、交易方向以及交易双方账户,确定待测试账户对应的预期余额;
通过核查预期余额和第二账户余额是否一致,以实现对待测试账户进行测试。
通过上述设置,实现了对账户余额这一交易结果进行核对,实现了对账户余额的自动化测试,拓展了测试的范围,提升了数字货币系统测试的自动化程度。
进一步地,根据本发明实施例,上述交易测试数据还指示了交易类型,以及交易类型与产生的会计分录数量的对应关系;上述数字货币系统的测试装置300还包括会计分录数量核对模块,若账户测试请求还指示了会计分录测试信息;会计分录数量核对模块用于:
根据交易测试数据指示的交易类型,以及交易类型与产生的会计分录数量的对应关系,确定待测试账户对应的会计分录数量预期值;
在模拟交易完成后,查询待测试账户对应的会计分录数量实际值;
通过核查会计分录数量实际值和会计分录数量预期值是否一致,以实现对待测试账户的会计分录数量进行测试。
通过上述设置,实现了对会计分录数量这一交易结果进行核对,实现了对会计分录数量的自动化测试,进一步拓展了测试的范围,提升了数字货币系统测试的自动化程度。
优选地,根据本发明实施例,上述会计分录中包括多个会计科目,上述数字货币系统的测试装置300还包括会计科目信息核对模块,若账户测试请求还指示了会计科目测试信息;会计科目信息核对模块用于:
根据会计科目测试信息指示的待测试会计科目以及账户信息,在模拟交易成功后,查询待测试账户对应的目标待测试会计科目信息,以根据交易数据对目标待测试会计科目信息进行核查。
通过上述设置,实现了对会计科目信息(模拟交易的详细信息)这一交易结果进行核对,实现了对会计科目信息的自动化测试,拓展了测试的范围,进一步提升了数字货币系统测试的自动化程度。
根据本发明实施例的技术方案,因为采用接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;其中,测试环境包括多个测试版本,且测试环境对应于一个或多个交易测试场景;交易测试数据包括交易双方账户、交易额度以及交易方向;在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额;根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试的技术手段,所以克服了现有的自动化测试方法由于主要是针对数字货币系统在不同的测试环境、不同的测试场景下的运行状况,而运行结果的测试主要是通过人工查询数据库进行核对,导致数字货币系统测试的自动化程度低,测试效率低、测试准确率低的技术问题,进而达到能够将运行结果的测试纳入自动化测试过程中,提高了数字货币系统测试的自动化程度、提高了测试效率和测试准确率的技术效果。
图4示出了可以应用本发明实施例的数字货币系统的测试方法或数字货币系统的测试装置的示例性系统架构400。
如图4所示,系统架构400可以包括终端设备401、402、403,网络404和服务器405(此架构仅仅是示例,具体架构中包含的组件可以根据申请具体情况调整)。网络404用以在终端设备401、402、403和服务器405之间提供通信链路的介质。网络404可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备401、402、403通过网络404与服务器405交互,以接收或发送消息等。终端设备401、402、403上可以安装有各种通讯客户端应用,例如数字货币测试类应用、数字货币支付类应用、网页浏览器应用、搜索类应用、即时通信工具、测试客户端等(仅为示例)。
终端设备401、402、403可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器405可以是提供各种服务的服务器,例如对用户利用终端设备401、402、403所(进行测试/进行数据处理)的服务器(仅为示例)。该服务器可以对接收到的账户测试请求等数据进行分析等处理,并将处理结果(例如第一账户余额、第二账户余额--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的数字货币系统的测试方法一般由服务器405执行,相应地,数字货币系统的测试装置一般设置于服务器405中。
应该理解,图4中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图5,其示出了适于用来实现本发明实施例的终端设备或服务器的计算机系统500的结构示意图。图5示出的终端设备或服务器仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机系统500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有系统500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括测试请求接收模块、交易测试数据生成模块、查询模块和测试模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,测试请求接收模块还可以被描述为“用于接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;其中,测试环境包括多个测试版本,且测试环境对应于一个或多个交易测试场景;交易测试数据包括交易双方账户、交易额度以及交易方向;在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额;根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试。
根据本发明实施例的技术方案,因为采用接收账户测试请求,根据账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;根据账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用数字货币系统根据交易测试数据进行模拟交易;其中,测试环境包括多个测试版本,且测试环境对应于一个或多个交易测试场景;交易测试数据包括交易双方账户、交易额度以及交易方向;在模拟交易完成后,根据账户信息查询待测试账户对应的第二账户余额;根据第二账户余额、第一账户余额以及交易测试数据,对待测试账户进行核查,以实现对数字货币系统的测试的技术手段,所以克服了现有的自动化测试方法由于主要是针对数字货币系统在不同的测试环境、不同的测试场景下的运行状况,而运行结果的测试主要是通过人工查询数据库进行核对,导致数字货币系统测试的自动化程度低,测试效率低、测试准确率低的技术问题,进而达到能够将运行结果的测试纳入自动化测试过程中,提高了数字货币系统测试的自动化程度、提高了测试效率和测试准确率的技术效果。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (10)

1.一种数字货币系统的测试方法,其特征在于,包括:
接收账户测试请求,根据所述账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;
根据所述账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用所述数字货币系统根据所述交易测试数据进行模拟交易;其中,所述测试环境包括多个测试版本,且所述测试环境对应于一个或多个交易测试场景;所述交易测试数据包括交易双方账户、交易额度以及交易方向;
在所述模拟交易完成后,根据所述账户信息查询所述待测试账户对应的第二账户余额;
根据所述第二账户余额、所述第一账户余额以及所述交易测试数据,对所述待测试账户进行核查,以实现对所述数字货币系统的测试。
2.根据权利要求1所述的数字货币系统的测试方法,其特征在于,所述根据所述第二账户余额、所述第一账户余额以及所述交易测试数据,对所述待测试账户进行核查,包括:
根据所述第一账户余额和所述交易测试数据中指示的交易额度、交易方向以及交易双方账户,确定所述待测试账户对应的预期余额;
通过核查所述预期余额和所述第二账户余额是否一致,以实现对所述待测试账户进行测试。
3.根据权利要求1所述的数字货币系统的测试方法,其特征在于,所述交易测试数据还指示了交易类型,以及所述交易类型与产生的会计分录数量的对应关系;若所述账户测试请求还指示了会计分录测试信息;所述方法还包括:
根据所述交易测试数据指示的交易类型,以及所述交易类型与产生的会计分录数量的对应关系,确定所述待测试账户对应的会计分录数量预期值;
在所述模拟交易完成后,查询所述待测试账户对应的会计分录数量实际值;
通过核查所述会计分录数量实际值和所述会计分录数量预期值是否一致,以实现对所述待测试账户的会计分录数量进行测试。
4.根据权利要求3所述的数字货币系统的测试方法,其特征在于,会计分录中包括多个会计科目,若所述账户测试请求还指示了会计科目测试信息;所述方法还包括:
根据所述会计科目测试信息指示的待测试会计科目以及所述账户信息,在模拟交易成功后,查询所述待测试账户对应的目标待测试会计科目信息,以根据所述交易数据对所述目标待测试会计科目信息进行核查。
5.根据权利要求1所述的数字货币系统的测试方法,其特征在于,在所述接收账户测试请求,根据所述账户测试请求指示的账户信息,查询所述待测试账户对应的第一账户余额的步骤之前,还包括:
根据所述测试环境、所述交易测试场景、所述账户信息以及所述交易测试数据设置脚本变量,以使得用户根据所述脚本变量发起账户测试请求。
6.根据权利要求5所述的数字货币系统的测试方法,其特征在于,还包括:
接收测试环境更新信息、交易测试场景更新信息以及业务属性更新信息中的一个或多个更新信息;
根据所述更新信息,对所述脚本变量进行更新。
7.根据权利要求1所述的数字货币系统的测试方法,其特征在于,若所述模拟交易的结果为失败,所述方法还包括:
中止所述模拟交易,并反馈交易失败信息。
8.一种数字货币系统的测试装置,其特征在于,包括:
测试请求接收模块,用于接收账户测试请求,根据所述账户测试请求指示的账户信息,查询待测试账户对应的第一账户余额;
交易测试数据生成模块,根据所述账户测试请求指示的测试环境和交易测试场景,生成交易测试数据,以利用所述数字货币系统根据所述交易测试数据进行模拟交易;其中,所述测试环境包括多个测试版本,且所述测试环境对应于一个或多个交易测试场景;所述交易测试数据包括交易双方账户、交易额度以及交易方向;
查询模块,用于在所述模拟交易完成后,根据所述账户信息查询所述待测试账户对应的第二账户余额;
测试模块,用于根据所述第二账户余额、所述第一账户余额以及所述交易测试数据,对所述待测试账户进行核查,以实现对所述数字货币系统的测试。
9.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。
CN202111423371.7A 2021-11-26 2021-11-26 一种数字货币系统的测试方法和装置 Pending CN116185806A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111423371.7A CN116185806A (zh) 2021-11-26 2021-11-26 一种数字货币系统的测试方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111423371.7A CN116185806A (zh) 2021-11-26 2021-11-26 一种数字货币系统的测试方法和装置

Publications (1)

Publication Number Publication Date
CN116185806A true CN116185806A (zh) 2023-05-30

Family

ID=86440808

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111423371.7A Pending CN116185806A (zh) 2021-11-26 2021-11-26 一种数字货币系统的测试方法和装置

Country Status (1)

Country Link
CN (1) CN116185806A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116703570A (zh) * 2023-07-04 2023-09-05 梅州客商银行股份有限公司 一种清算账户余额校准核对的方法、装置及电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116703570A (zh) * 2023-07-04 2023-09-05 梅州客商银行股份有限公司 一种清算账户余额校准核对的方法、装置及电子设备
CN116703570B (zh) * 2023-07-04 2023-12-15 梅州客商银行股份有限公司 一种清算账户余额校准核对的方法、装置及电子设备

Similar Documents

Publication Publication Date Title
WO2023207146A1 (zh) Esop系统的服务模拟方法、装置、设备及存储介质
CN110858172A (zh) 一种自动化测试代码生成方法和装置
CN111813804A (zh) 一种数据查询方法、装置、电子设备及存储介质
CN112463729B (zh) 数据文件的入库方法、装置、电子设备和介质
CN112559024A (zh) 一种生成交易码变更列表的方法和装置
CN110866031B (zh) 数据库访问路径的优化方法、装置、计算设备以及介质
CN110888794A (zh) 接口测试方法和装置
CN116881166A (zh) 一种测试脚本的生成方法、装置及系统
CN106990974B (zh) 一种app应用更新方法、装置及电子设备
CN116185806A (zh) 一种数字货币系统的测试方法和装置
CN111581431B (zh) 基于动态评估的数据探查方法和装置
CN113420010A (zh) 数据库的管理方法、装置、电子设备和存储介质
CN112561690A (zh) 信用卡分期业务接口的测试方法、系统、设备及存储介质
CN112860538A (zh) 基于线上日志进行接口回归测试的方法和装置
CN113296912B (zh) 任务处理方法及装置、系统、存储介质、电子设备
CN112579428B (zh) 接口测试的方法、装置、电子设备和存储介质
CN114780807A (zh) 业务检测方法、装置、计算机系统及可读存储介质
CN114529382A (zh) 一种对账数据处理方法和装置
CN112306723B (zh) 一种应用于小程序的运行信息获取方法和装置
CN108898446B (zh) 用于输出信息的方法和装置
CN113763083A (zh) 信息处理方法及装置
CN113590483B (zh) 一种用例运行方法和装置
CN118069539B (zh) 数据处理的方法、装置、电子设备和存储介质
CN112783753B (zh) 流数据处理系统的测试方法和装置
CN110032569B (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