CN117555803A - 基于可视化编程的功能测试方法及装置、可视化编程系统 - Google Patents

基于可视化编程的功能测试方法及装置、可视化编程系统 Download PDF

Info

Publication number
CN117555803A
CN117555803A CN202311635927.8A CN202311635927A CN117555803A CN 117555803 A CN117555803 A CN 117555803A CN 202311635927 A CN202311635927 A CN 202311635927A CN 117555803 A CN117555803 A CN 117555803A
Authority
CN
China
Prior art keywords
test
flow
service function
function test
code
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
CN202311635927.8A
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.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
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 Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202311635927.8A priority Critical patent/CN117555803A/zh
Publication of CN117555803A publication Critical patent/CN117555803A/zh
Pending legal-status Critical Current

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于可视化编程的功能测试方法及装置、可视化编程系统,涉及金融科技领域或其他相关领域,其中,该方法包括:接收功能测试请求和用户操作信息集合;基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档;基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序;响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。本发明解决了相关技术中业务测试人员不能独立完成自动化功能测试的技术问题。

Description

基于可视化编程的功能测试方法及装置、可视化编程系统
技术领域
本发明涉及金融科技领域或其他相关技术领域,具体而言,涉及一种基于可视化编程的功能测试方法及装置、可视化编程系统。
背景技术
功能自动化测试是指通过代码程序来进行检验业务功能逻辑变更的正确性,通常来说,每变更一次业务功能逻辑,就需要进行多个场景的功能回归测试,需要在代码生产过程中及时进行代码修订,这需要测试人员与开发人员及时沟通修改详情以及共同评估代码修订对原有测试流程以及其他功能测试的影响,有可能带来很多质量守护方面难以避免的漏洞和困难。
目前,通常使用自动化功能测试脚本全覆盖来避免由于测试人员和开发人员沟通不及时或不彻底可能带来的质量守护方面的问题,然而自动化功能测试脚本全覆盖存在很明显的的缺陷:成本高昂,以及需要高素质的测试开发人员来预先编写测试脚本,该自动化功能测试脚本全覆盖方法目前仍然存在以下问题:1)普通测试开发人员通常不能兼具良好的脚本开发能力以及熟练的业务关联能力,难以从业务、测试两个角度进行全面逻辑覆盖;2)即使在测试代码开发的过程中调用业务测试人员进行业务场景辅助分析,并提供大量的业务测试数据,测试开发人员制作的测试数据也往往会更具有代码倾向,常常以命中测试分支为目的,而忽略了实际业务场景验证的需求,导致测试结果中出现数据不全面,数据不健康等问题,难以真正实现功能脚本的较全面的覆盖。
相关技术中,尚未出现一种在出现功能逻辑变更之后,无需测试开发人员参与,仅由业务测试人员即可独立进行功能测试代码生成,进而完成自动化功能测试的方法。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种基于可视化编程的功能测试方法及装置、可视化编程系统,以至少解决相关技术中业务测试人员不能独立完成自动化功能测试的技术问题。
根据本发明实施例的一个方面,提供了一种基于可视化编程的功能测试方法,包括:接收功能测试请求和用户操作信息集合,其中,所述功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,所述预设流程图形用于链接位于后端的代码生成器中的操作代码脚本;基于所述用户操作信息集合在系统数据库中调取所述待测业务功能对应的测试文档,其中,所述测试文档用于记录对所述待测业务功能进行测试的测试流程中所需的流程配置信息;基于所述用户操作信息集合和所述测试文档中的所述流程配置信息生成业务功能测试代码,并将所述业务功能测试代码编译为可执行的业务功能测试程序;响应所述功能测试请求,执行所述业务功能测试程序,得到所述待测业务功能对应的功能测试报告。
可选地,在接收功能测试请求和用户操作信息集合之前,还包括:获取所述金融业务系统中M个业务功能的调用流程,得到M个流程文档,其中,所述流程文档用于记录所述金融业务系统在调用所述业务功能的过程中涉及到的R个操作步骤,M、R均为正整数;对于每个所述业务功能,获取所述业务功能对应的所述流程文档中记录的每个操作步骤的操作类型;整合所有所述业务功能对应的所述流程文档中的所有所述操作步骤的所述操作类型,得到操作类型清单,其中,所述操作类型清单中包含N个所述操作类型,N为正整数。
可选地,在整合所有所述业务功能对应的所述流程文档中的所有所述操作步骤的所述操作类型,得到操作类型清单之后,还包括:对于所述操作类型清单中的每个所述操作类型,使用预设编程语言编写所述操作代码脚本,其中,所述操作代码脚本与所述操作类型一一对应,所述操作代码脚本中的所有运算数据字段均使用预设初始化数值进行填充;整合所述操作类型清单中N个所述操作类型对应的N个所述操作代码脚本,得到操作代码脚本集合;将所述操作代码脚本集合存储至位于后端的所述代码生成器中。
可选地,在整合所述操作类型清单中N个所述操作类型对应的N个所述操作代码脚本,得到操作代码脚本集合之后,还包括:对所述操作代码脚本集合中的N个所述操作代码脚本绘制N个不同结构的所述预设流程图形,其中,每个所述操作代码脚本对应一个所述预设流程图形;在绘制所述预设流程图形的过程中,建立所述预设流程图形与对应的所述操作代码脚本之间的链接关系;整合所有所述预设流程图形以及每个所述预设流程图形携带的所述链接关系,得到流程图形菜单;将所述流程图形菜单发送至所述前端显示界面。
可选地,基于所述用户操作信息集合在系统数据库中调取所述待测业务功能对应的测试文档的步骤,包括:基于所述用户操作信息集合中的所有所述用户操作信息生成操作文档,其中,所述操作文档中包含对所述待测业务功能对应的所述测试流程进行配置的过程中涉及到的流程配置元素,所述流程配置元素的类型至少包括:测试环境配置元素和测试案例配置元素;在所述系统数据库中对所述操作文档中的每个所述流程配置元素进行查找,得到每个所述流程配置元素对应的所述流程配置信息;整合所有所述流程配置元素对应的所有所述流程配置信息,得到所述测试文档。
可选地,基于所述用户操作信息集合和所述测试文档中的所述流程配置信息生成业务功能测试代码的步骤,包括:基于所述用户操作信息集合中的所述用户操作信息调取与所述预设流程图形具备链接关系的所述操作代码脚本;使用所述测试文档中的所述流程配置信息对所述操作代码脚本中的所有运算数据字段下对应的预设初始化数值进行替换,得到测试代码脚本;依据所述用户操作信息集合中的所述用户操作信息所指示的操作顺序对所有所述测试代码脚本进行拼接,得到所述业务功能测试代码。
可选地,使用所述测试文档中的所述流程配置信息对所述操作代码脚本中的所有运算数据字段下对应的预设初始化数值进行替换,得到测试代码脚本的步骤,包括:定位所述操作代码脚本中的所有运算数据字段;对于每个所述运算数据字段,获取每个所述运算数据字段的字段类型以及所述运算数据字段下的所述预设初始化数值的数据属性;在所述流程配置信息中依据所述数据属性提取所述待测业务功能涉及到的运算数据,并依据所述字段类型对提取到的所述运算数据进行格式转换;使用格式转换后得到的所述运算数据对所述预设初始化数值进行替换;在所述操作代码脚本中的所有所述预设初始化数值全部被替换完成的情况下,得到所述测试代码脚本。
根据本发明实施例的另一方面,还提供了一种可视化编程系统,与金融业务系统连接,用于执行上述任意一项所述的基于可视化编程的功能测试方法,包括:可视流程编辑器,用于向用户终端屏幕的前端显示界面上显示流程图形菜单以及N个预设流程图形,通过所述预设流程图形关联的功能控件接收用户操作信息集合,并将接收到的所述用户操作信息集合传输至位于后端的代码生成器,其中,N为正整数;所述代码生成器,与所述可视流程编辑器连接,用于基于所述用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,并基于所述测试文档中的流程配置信息生成业务功能测试代码;程序执行组件,与所述代码生成器连接,用于将所述业务功能测试代码编译为可执行的业务功能测试程序,并执行所述业务功能测试程序,得到所述待测业务功能的功能测试报告。
根据本发明实施例的另一方面,还提供了一种基于可视化编程的功能测试装置,包括:接收单元,用于接收功能测试请求和用户操作信息集合,其中,所述功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,所述预设流程图形用于链接位于后端的代码生成器中的操作代码脚本;调取单元,用于基于所述用户操作信息集合在系统数据库中调取所述待测业务功能对应的测试文档,其中,所述测试文档用于记录对所述待测业务功能进行测试的测试流程中所需的流程配置信息;生成单元,用于基于所述用户操作信息集合和所述测试文档中的所述流程配置信息生成业务功能测试代码,并将所述业务功能测试代码编译为可执行的业务功能测试程序;执行单元,用于响应所述功能测试请求,执行所述业务功能测试程序,得到所述待测业务功能对应的功能测试报告。
可选地,所述基于可视化编程的功能测试装置还包括:第一获取模块,用于获取所述金融业务系统中M个业务功能的调用流程,得到M个流程文档,其中,所述流程文档用于记录所述金融业务系统在调用所述业务功能的过程中涉及到的R个操作步骤,M、R均为正整数;第二获取模块,用于对于每个所述业务功能,获取所述业务功能对应的所述流程文档中记录的每个操作步骤的操作类型;第一整合模块,用于整合所有所述业务功能对应的所述流程文档中的所有所述操作步骤的所述操作类型,得到操作类型清单,其中,所述操作类型清单中包含N个所述操作类型,N为正整数。
可选地,所述基于可视化编程的功能测试装置还包括:编写模块,用于对于所述操作类型清单中的每个所述操作类型,使用预设编程语言编写所述操作代码脚本,其中,所述操作代码脚本与所述操作类型一一对应,所述操作代码脚本中的所有运算数据字段均使用预设初始化数值进行填充;第二整合模块,用于整合所述操作类型清单中N个所述操作类型对应的N个所述操作代码脚本,得到操作代码脚本集合;存储模块,用于将所述操作代码脚本集合存储至位于后端的所述代码生成器中。
可选地,所述基于可视化编程的功能测试装置还包括:绘制模块,用于对所述操作代码脚本集合中的N个所述操作代码脚本绘制N个不同结构的所述预设流程图形,其中,每个所述操作代码脚本对应一个所述预设流程图形;建立模块,用于在绘制所述预设流程图形的过程中,建立所述预设流程图形与对应的所述操作代码脚本之间的链接关系;第三整合模块,用于整合所有所述预设流程图形以及每个所述预设流程图形携带的所述链接关系,得到流程图形菜单;发送模块,用于将所述流程图形菜单发送至所述前端显示界面。
可选地,所述调取单元包括:生成模块,用于基于所述用户操作信息集合中的所有所述用户操作信息生成操作文档,其中,所述操作文档中包含对所述待测业务功能对应的所述测试流程进行配置的过程中涉及到的流程配置元素,所述流程配置元素的类型至少包括:测试环境配置元素和测试案例配置元素;查找模块,用于在所述系统数据库中对所述操作文档中的每个所述流程配置元素进行查找,得到每个所述流程配置元素对应的所述流程配置信息;第四整合模块,用于整合所有所述流程配置元素对应的所有所述流程配置信息,得到所述测试文档。
可选地,所述生成单元包括:调取模块,用于基于所述用户操作信息集合中的所述用户操作信息调取与所述预设流程图形具备链接关系的所述操作代码脚本;替换模块,用于使用所述测试文档中的所述流程配置信息对所述操作代码脚本中的所有运算数据字段下对应的预设初始化数值进行替换,得到测试代码脚本;拼接模块,用于依据所述用户操作信息集合中的所述用户操作信息所指示的操作顺序对所有所述测试代码脚本进行拼接,得到所述业务功能测试代码。
可选地,所述替换模块包括:定位子模块,用于定位所述操作代码脚本中的所有运算数据字段;获取子模块,用于对于每个所述运算数据字段,获取每个所述运算数据字段的字段类型以及所述运算数据字段下的所述预设初始化数值的数据属性;提取子模块,用于在所述流程配置信息中依据所述数据属性提取所述待测业务功能涉及到的运算数据,并依据所述字段类型对提取到的所述运算数据进行格式转换;替换子模块,用于使用格式转换后得到的所述运算数据对所述预设初始化数值进行替换;判断子模块,用于在所述操作代码脚本中的所有所述预设初始化数值全部被替换完成的情况下,得到所述测试代码脚本。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任意一项所述的基于可视化编程的功能测试方法。
根据本发明实施例的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述任意一项所述的基于可视化编程的功能测试方法。
本发明中,提出一种基于可视化编程的功能测试方法,先接收功能测试请求和用户操作信息集合,其中,功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,预设流程图形用于链接位于后端的代码生成器中的操作代码脚本,再基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,其中,测试文档用于记录对待测业务功能进行测试的测试流程中所需的流程配置信息,然后基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序,最后响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
本发明中,通过接收用户操作信息集合得到用户对预设流程图形的编辑操作,进而获取到用户实际想要调取的操作代码脚本和流程配置信息,基于用户操作信息集合在系统数据库中调取流程配置信息组成测试文档,再将操作代码脚本和测试文档中的流程配置信息组成业务功能测试代码,编译为业务功能测试程序,最后执行业务功能测试程序,输出功能测试报告,本发明通过在前端显示界面提供用于可视化流程编辑的预设流程图形,业务测试人员可以通过对预设流程图形进行点选、编辑、拖拽等操作实现对预设流程图形所链接的操作代码脚本的逻辑组合,得到组合代码,再通过调用待测业务功能对应的测试案例数据,将案例数据注入至组合代码,得到业务功能测试代码,整个实施过程无需测试开发人员参与,仅由业务测试人员就可以独立完成,进而解决了相关技术中业务测试人员不能独立完成自动化功能测试的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的基于可视化编程的功能测试方法的流程图;
图2是根据本发明实施例的一种可选的自动化功能测试脚本的可视化开发方法的流程图;
图3是根据本发明实施例的一种可选的可视化编程系统的结构示意图;
图4是根据本发明实施例的一种可选的基于可视化编程的功能测试装置的示意图;
图5是根据本发明实施例的一种用于基于可视化编程的功能测试方法的电子设备(或移动设备)的硬件结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,本发明中的基于可视化编程的功能测试方法及装置可用于金融科技领域在进行待测业务功能的自动化功能测试的情况下,也可用于除金融科技领域之外的任何领域在进行待测业务功能的自动化功能测试的情况下,本发明中对基于可视化编程的功能测试方法及其装置的应用领域不做限定。
需要说明的是,本发明所涉及的相关信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关地区的法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。例如,本系统和相关用户或机构间设置有接口,在获取相关信息之前,需要通过接口向前述的用户或机构发送获取请求,并在接收到前述的用户或机构反馈的同意信息后,获取相关信息。
本发明下述各实施例可应用于各种需要进行变更业务功能自动化测试的系统/应用/设备中,能够实现无需测试开发人员参与,仅由业务测试人员就可以独立完成对待测功能业务进行自动化测试。
本发明通过在前端显示界面提供用于可视化流程编辑的预设流程图形,业务测试人员可以通过对预设流程图形进行点选、编辑、拖拽等操作实现对预设流程图形所链接的操作代码脚本的逻辑组合,得到组合代码,再通过调用待测业务功能对应的测试案例数据,将案例数据注入至组合代码,得到业务功能测试代码,整个实施过程无需测试开发人员参与,仅由业务测试人员就可以独立完成。
下面结合各个实施例来详细说明本发明。
实施例一
根据本发明实施例,提供了一种基于可视化编程的功能测试方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种可选的基于可视化编程的功能测试方法的流程图,如图1所示,该方法包括如下步骤:
步骤S101,接收功能测试请求和用户操作信息集合。
步骤S102,基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,其中,测试文档用于记录对待测业务功能进行测试的测试流程中所需的流程配置信息。
步骤S103,基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序。
步骤S104,响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
通过上述步骤,可以先接收功能测试请求和用户操作信息集合,其中,功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,预设流程图形用于链接位于后端的代码生成器中的操作代码脚本,再基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,其中,测试文档用于记录对待测业务功能进行测试的测试流程中所需的流程配置信息,然后基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序,最后响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
本发明实施例中,通过接收用户操作信息集合得到用户对预设流程图形的编辑操作,进而获取到用户实际想要调取的操作代码脚本和流程配置信息,基于用户操作信息集合在系统数据库中调取流程配置信息组成测试文档,再将操作代码脚本和测试文档中的流程配置信息组成业务功能测试代码,编译为业务功能测试程序,最后执行业务功能测试程序,输出功能测试报告,本发明通过在前端显示界面提供用于可视化流程编辑的预设流程图形,业务测试人员可以通过对预设流程图形进行点选、编辑、拖拽等操作实现对预设流程图形所链接的操作代码脚本的逻辑组合,得到组合代码,再通过调用待测业务功能对应的测试案例数据,将案例数据注入至组合代码,得到业务功能测试代码,整个实施过程无需测试开发人员参与,仅由业务测试人员就可以独立完成,进而解决了相关技术中业务测试人员不能独立完成自动化功能测试的技术问题。
下面结合上述各步骤对本发明实施例进行详细说明。
本发明实施例的实施主体可以是金融业务系统,结合可视化编程系统帮助业务测试人员通过对预先编写的操作代码脚本进行逻辑组合并注入待测业务功能对应的测试案例哦数据即可完成对待测业务功能的自动化测试流程,输出测试报告。
步骤S101,接收功能测试请求和用户操作信息集合。
需要说明的是,功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,预设流程图形用于链接位于后端的代码生成器中的操作代码脚本。
需要说明的是,用户对预设流程图形所操作的动作包括但不限于:拖拽、点选、调整顺序以及键入信息等,不同形状的预设流程图形用于表征程序代码在执行过程中的不同指令步骤,例如,椭圆状流程图形表征程序的开始步骤,菱形流程图形表征程序进入判断步骤,矩形流程图形表征程序的步进步骤。用户操作信息集合中除了用户对每个预设流程图形所操作的动作之外,还包含了用户对所有预设流程图形的操作顺序以及组合方式,进而可以通过用户操作信息集合获取到用户对操作代码脚本的组合方式。
可选地,在执行步骤S101之前,还包括:获取金融业务系统中M个业务功能的调用流程,得到M个流程文档,其中,流程文档用于记录金融业务系统在调用业务功能的过程中涉及到的R个操作步骤,M、R均为正整数;对于每个业务功能,获取业务功能对应的流程文档中记录的每个操作步骤的操作类型;整合所有业务功能对应的流程文档中的所有操作步骤的操作类型,得到操作类型清单,其中,操作类型清单中包含N个操作类型,N为正整数。
需要说明的是,在对待测业务功能进行回归测试之前需要预先对金融业务系统中所有可能涉及到回归测试的业务功能进行调用流程查询,业务功能在实际调用过程中的操作步骤与对业务功能进行回归测试的测试步骤是相同的,调取用于记录业务功能调用流程的流程文档可以获取到所有测试步骤对应的操作类型,得到覆盖整个回归测试过程的操作类型清单,以便于根据操作类型清单编写每个操作类型对应的操作代码脚本。
可选地,在整合所有业务功能对应的流程文档中的所有操作步骤的操作类型,得到操作类型清单之后,还包括:对于操作类型清单中的每个操作类型,使用预设编程语言编写操作代码脚本,其中,操作代码脚本与操作类型一一对应,操作代码脚本中的所有运算数据字段均使用预设初始化数值进行填充;整合操作类型清单中N个操作类型对应的N个操作代码脚本,得到操作代码脚本集合;将操作代码脚本集合存储至位于后端的代码生成器中。
需要说明的是,获取操作类型清单的目的就是为了便于测试开发人员预先编写每个操作类型对应的操作代码脚本,此处的操作代码脚本是用于某一类操作类型的通用代码脚本,该操作代码脚本中的运算数据字段均使用符合字段规则的预设初始化数值进行填充,业务测试人员根据实际测试需要对所有预设初始化数值进行替换,即可利用该操作代码脚本完成测试,无需再与其他测试开发人员进行业务数据沟通。
可选地,在整合操作类型清单中N个操作类型对应的N个操作代码脚本,得到操作代码脚本集合之后,还包括:对操作代码脚本集合中的N个操作代码脚本绘制N个不同结构的预设流程图形,其中,每个操作代码脚本对应一个预设流程图形;在绘制预设流程图形的过程中,建立预设流程图形与对应的操作代码脚本之间的链接关系;整合所有预设流程图形以及每个预设流程图形携带的链接关系,得到流程图形菜单;将流程图形菜单发送至前端显示界面。
需要说明的是,操作类型清单中的每个操作类型除了在后端对应一个操作代码脚本以外,还在前端对应一个预设流程图形,根据不同的操作类型绘制不同形状的预设流程图形,并建立与操作类型对应的前端预设流程图形和后端操作代码脚本之间的链接关系,以便于用户通过对前端预设流程图形进行编辑操作来实现对后端操作代码脚本的排列组合。
步骤S102,基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,其中,测试文档用于记录对待测业务功能进行测试的测试流程中所需的流程配置信息。
可选地,步骤S102包括:基于用户操作信息集合中的所有用户操作信息生成操作文档,其中,操作文档中包含对待测业务功能对应的测试流程进行配置的过程中涉及到的流程配置元素,流程配置元素的类型至少包括:测试环境配置元素和测试案例配置元素;在系统数据库中对操作文档中的每个流程配置元素进行查找,得到每个流程配置元素对应的流程配置信息;整合所有流程配置元素对应的所有流程配置信息,得到测试文档。
需要说明的是,对测试环境配置元素进行举例说明,包括但不限于:测试环境链接地址、程序请求方式、测试流程触发方式、密钥挡板状态设置以及关联功能测试状态等;对测试案例配置元素进行举例说明,至少包括:测试案例数据文档链接地址。
需要说明的是,测试环境是指金融业务系统中用于业务功能测试的仿真交易环境;程序请求方式包括RPC请求以及HTTP请求,其中,RPC请求是指符合远程过程调用协议的请求,HTTP请求是指符合超文本传输协议的请求;测试流程触发方式包括但不限于:主动触发、被动触发以及文件触发;密钥挡板状态包含打开状态和关闭状态,其中,处于打开状态下的密钥挡板会拦截业务功能发出的密钥验证信息,并模拟真实情况向处于测试状态的业务功能返回合规密钥,若待测试业务功能无需进行密钥验证,则可以将密钥挡板状态设置到关闭状态;关联功能测试状态是指当前的待测业务功能的测试范围涉及到其他业务功能的业务范围的情况下,考虑将这些业务功能设置为关联功能,进而实现对这些关联功能进行联合测试。
步骤S103,基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序。
可选地,步骤S103包括:基于用户操作信息集合中的用户操作信息调取与预设流程图形具备链接关系的操作代码脚本;使用测试文档中的流程配置信息对操作代码脚本中的所有运算数据字段下对应的预设初始化数值进行替换,得到测试代码脚本;依据用户操作信息集合中的用户操作信息所指示的操作顺序对所有测试代码脚本进行拼接,得到业务功能测试代码。
需要说明的是,除了使用测试文档中的流程配置信息对预设初始化数值进行替换之外,还可以调用案例数据库中的案例文档,使用案例文档中符合运算数据字段要求的案例数据对预设初始化数值进行替换,在案例数据库中进行筛选时的筛选条件是根据待测业务功能的测试需求确定的。
可选地,使用测试文档中的流程配置信息对操作代码脚本中的所有运算数据字段下对应的预设初始化数值进行替换,得到测试代码脚本的步骤,包括:定位操作代码脚本中的所有运算数据字段;对于每个运算数据字段,获取每个运算数据字段的字段类型以及运算数据字段下的预设初始化数值的数据属性;在流程配置信息中依据数据属性提取待测业务功能涉及到的运算数据,并依据字段类型对提取到的运算数据进行格式转换;使用格式转换后得到的运算数据对预设初始化数值进行替换;在操作代码脚本中的所有预设初始化数值全部被替换完成的情况下,得到测试代码脚本。
需要说明的是,运算数据中至少包括待测业务功能的测试入参以及期望响应,对运算数据进行格式转换是指将流程配置信息中提取到的数据进行规范,例如,将提取到的日期信息“2023年11月28日”转换为代码中的时间日期字段类型“20231128”,字段类型包括但不限于:小数类型、整数类型、字符串类型、时间日期类型。
步骤S104,响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
需要说明的是,执行业务功能测试程序后,程序会根据测试入参输出程序的实际响应,将实际响应与期望响应进行对比可以得到关于待测功能业务的测试断言,测试断言用于指示待测业务功能在逻辑变更后是否能得出预期结果,功能测试报告中至少包含测试断言。
本发明实施例中,通过在前端显示界面提供用于可视化流程编辑的预设流程图形,业务测试人员可以通过对预设流程图形进行点选、编辑、拖拽等操作实现对预设流程图形所链接的操作代码脚本的逻辑组合,可以帮助业务测试人员在脱离测试开发人员的帮助的情况下得到测试代码程序。
本发明实施例还通过可视化编程系统与金融业务系统的连接实现了对变更业务功能进行测试案例数据的自动调取以及测试流程代码的自动生成,便于业务测试人员随时对变更业务功能进行回归测试,降低了测试开发成本,提高了业务测试效率,有效提升测试的质量守护能力。
下面结合另一种具体的实施方式来说明本发明。
本发明实施例通过规范化的代码编写方式和可视化模块的调用和配置,将复杂的功能测试脚本开发工作变成模板式可视化编程工作,便于业务测试人员轻松上手进行自动化测试脚本编写。
图2是根据本发明实施例的一种可选的自动化功能测试脚本的可视化开发方法的流程图,如图2所示,该开发方法包括如下步骤:
步骤S201,在前端可视化编程界面上对不同的流程图形进行编辑操作,得到测试流程图。
需要说明的是,编辑操作包括:点选、拖拽、键入数据以及调用文件等,不同的流程图形用于表征不同的流程步骤,例如,椭圆状流程图形表征程序的开始步骤,菱形流程图形表征程序进入判断步骤,矩形流程图形表征程序的步进步骤。
需要说明的是,所有流程图形在前端可视化编程界面上收录在流程图形菜单中,流程图形菜单对应后端的代码步骤设置菜单以及配置参数设置菜单。
步骤S202,基于测试流程图在后端的代码生成器中进行操作代码脚本组合,得到业务功能测试代码。
需要说明的是,与所有流程图形对应的操作代码脚本被预先存储在后端的代码生成器中,通过测试流程图中包含的逻辑信息和代码组装顺序对操作代码脚本进行组合,再基于测试流程图中每个流程图形携带的键入信息和/或文件信息获取测试入参,将测试入参注入至操作代码脚本中的指定位置,得到业务功能测试代码。
步骤S203,将业务功能测试代码编译为可执行的业务功能测试程序,并执行业务功能测试程序,得到功能测试报告。
需要说明的是,执行业务功能测试程序后,程序会根据测试入参输出程序的实际响应,将实际响应与期望响应进行对比可以得到关于待测功能业务的测试断言,测试断言用于指示待测业务功能在逻辑变更后是否能得出预期结果,功能测试报告中至少包含测试断言。
本发明实施例中,通过在前端显示界面提供用于可视化流程编辑的预设流程图形,业务测试人员可以通过对预设流程图形进行点选、编辑、拖拽等操作实现对预设流程图形所链接的操作代码脚本的逻辑组合,可以帮助业务测试人员在脱离测试开发人员的帮助的情况下得到测试代码程序。
本发明实施例还通过可视化编程系统与金融业务系统的连接实现了对变更业务功能进行测试案例数据的自动调取以及测试流程代码的自动生成,便于业务测试人员随时对变更业务功能进行回归测试,降低了测试开发成本,提高了业务测试效率,有效提升测试的质量守护能力。
下面结合另一种可选的实施例来说明本发明。
实施例二
本实施例中提供的一种可视化编程系统包含多个实施组件,可视化编程系统与金融业务系统连接,用于实现上述实施例一中的各个实施步骤。
图3是根据本发明实施例的一种可选的可视化编程系统的结构示意图,如图3所示,该可视化编程系统可以包括:可视流程编辑器31,用于向用户终端屏幕的前端显示界面上显示流程图形菜单以及N个预设流程图形,通过预设流程图形关联的功能控件接收用户操作信息集合,并将接收到的用户操作信息集合传输至位于后端的代码生成器,其中,N为正整数;代码生成器32,与可视流程编辑器连接,用于基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,并基于测试文档中的流程配置信息生成业务功能测试代码;程序执行组件33,与代码生成器连接,用于将业务功能测试代码编译为可执行的业务功能测试程序,并执行业务功能测试程序,得到待测业务功能的功能测试报告。
本发明实施例提供的上述可视化编程系统至少用于执行上述实施例一中的如下执行步骤:
接收功能测试请求和用户操作信息集合,其中,功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,预设流程图形用于链接位于后端的代码生成器中的操作代码脚本。
基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,其中,测试文档用于记录对待测业务功能进行测试的测试流程中所需的流程配置信息。
基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序。
响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
本发明实施例中,通过可视化编程系统中的各实施组件可以实现先接收功能测试请求和用户操作信息集合,其中,功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,预设流程图形用于链接位于后端的代码生成器中的操作代码脚本,再基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,其中,测试文档用于记录对待测业务功能进行测试的测试流程中所需的流程配置信息,然后基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序,最后响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
在本发明实施例中,通过接收用户操作信息集合得到用户对预设流程图形的编辑操作,进而获取到用户实际想要调取的操作代码脚本和流程配置信息,基于用户操作信息集合在系统数据库中调取流程配置信息组成测试文档,再将操作代码脚本和测试文档中的流程配置信息组成业务功能测试代码,编译为业务功能测试程序,最后执行业务功能测试程序,输出功能测试报告,本发明通过在前端显示界面提供用于可视化流程编辑的预设流程图形,业务测试人员可以通过对预设流程图形进行点选、编辑、拖拽等操作实现对预设流程图形所链接的操作代码脚本的逻辑组合,得到组合代码,再通过调用待测业务功能对应的测试案例数据,将案例数据注入至组合代码,得到业务功能测试代码,整个实施过程无需测试开发人员参与,仅由业务测试人员就可以独立完成,进而解决了相关技术中业务测试人员不能独立完成自动化功能测试的技术问题。
实施例三
本实施例中提供的一种基于可视化编程的功能测试装置包含了多个实施单元,每个实施单元对应于上述实施例一中的各个实施步骤。
图4是根据本发明实施例的一种可选的基于可视化编程的功能测试装置的示意图,如图4所示,该装置可以包括:接收单元41,调取单元42,生成单元43,执行单元44。
其中,接收单元41,用于接收功能测试请求和用户操作信息集合,其中,功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,预设流程图形用于链接位于后端的代码生成器中的操作代码脚本。
调取单元42,用于基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,其中,测试文档用于记录对待测业务功能进行测试的测试流程中所需的流程配置信息。
生成单元43,用于基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序。
执行单元44,用于响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
上述基于可视化编程的功能测试装置,可以先通过接收单元41接收功能测试请求和用户操作信息集合,其中,功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,预设流程图形用于链接位于后端的代码生成器中的操作代码脚本,再通过调取单元42基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,其中,测试文档用于记录对待测业务功能进行测试的测试流程中所需的流程配置信息,然后通过生成单元43基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序,最后通过执行单元44响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
在本发明实施例中,通过接收用户操作信息集合得到用户对预设流程图形的编辑操作,进而获取到用户实际想要调取的操作代码脚本和流程配置信息,基于用户操作信息集合在系统数据库中调取流程配置信息组成测试文档,再将操作代码脚本和测试文档中的流程配置信息组成业务功能测试代码,编译为业务功能测试程序,最后执行业务功能测试程序,输出功能测试报告,本发明通过在前端显示界面提供用于可视化流程编辑的预设流程图形,业务测试人员可以通过对预设流程图形进行点选、编辑、拖拽等操作实现对预设流程图形所链接的操作代码脚本的逻辑组合,得到组合代码,再通过调用待测业务功能对应的测试案例数据,将案例数据注入至组合代码,得到业务功能测试代码,整个实施过程无需测试开发人员参与,仅由业务测试人员就可以独立完成,进而解决了相关技术中业务测试人员不能独立完成自动化功能测试的技术问题。
可选地,基于可视化编程的功能测试装置还包括:第一获取模块,用于获取金融业务系统中M个业务功能的调用流程,得到M个流程文档,其中,流程文档用于记录金融业务系统在调用业务功能的过程中涉及到的R个操作步骤,M、R均为正整数;第二获取模块,用于对于每个业务功能,获取业务功能对应的流程文档中记录的每个操作步骤的操作类型;第一整合模块,用于整合所有业务功能对应的流程文档中的所有操作步骤的操作类型,得到操作类型清单,其中,操作类型清单中包含N个操作类型,N为正整数。
可选地,基于可视化编程的功能测试装置还包括:编写模块,用于对于操作类型清单中的每个操作类型,使用预设编程语言编写操作代码脚本,其中,操作代码脚本与操作类型一一对应,操作代码脚本中的所有运算数据字段均使用预设初始化数值进行填充;第二整合模块,用于整合操作类型清单中N个操作类型对应的N个操作代码脚本,得到操作代码脚本集合;存储模块,用于将操作代码脚本集合存储至位于后端的代码生成器中。
可选地,基于可视化编程的功能测试装置还包括:绘制模块,用于对操作代码脚本集合中的N个操作代码脚本绘制N个不同结构的预设流程图形,其中,每个操作代码脚本对应一个预设流程图形;建立模块,用于在绘制预设流程图形的过程中,建立预设流程图形与对应的操作代码脚本之间的链接关系;第三整合模块,用于整合所有预设流程图形以及每个预设流程图形携带的链接关系,得到流程图形菜单;发送模块,用于将流程图形菜单发送至前端显示界面。
可选地,调取单元包括:生成模块,用于基于用户操作信息集合中的所有用户操作信息生成操作文档,其中,操作文档中包含对待测业务功能对应的测试流程进行配置的过程中涉及到的流程配置元素,流程配置元素的类型至少包括:测试环境配置元素和测试案例配置元素;查找模块,用于在系统数据库中对操作文档中的每个流程配置元素进行查找,得到每个流程配置元素对应的流程配置信息;第四整合模块,用于整合所有流程配置元素对应的所有流程配置信息,得到测试文档。
可选地,生成单元包括:调取模块,用于基于用户操作信息集合中的用户操作信息调取与预设流程图形具备链接关系的操作代码脚本;替换模块,用于使用测试文档中的流程配置信息对操作代码脚本中的所有运算数据字段下对应的预设初始化数值进行替换,得到测试代码脚本;拼接模块,用于依据用户操作信息集合中的用户操作信息所指示的操作顺序对所有测试代码脚本进行拼接,得到业务功能测试代码。
可选地,替换模块包括:定位子模块,用于定位操作代码脚本中的所有运算数据字段;获取子模块,用于对于每个运算数据字段,获取每个运算数据字段的字段类型以及运算数据字段下的预设初始化数值的数据属性;提取子模块,用于在流程配置信息中依据数据属性提取待测业务功能涉及到的运算数据,并依据字段类型对提取到的运算数据进行格式转换;替换子模块,用于使用格式转换后得到的运算数据对预设初始化数值进行替换;判断子模块,用于在操作代码脚本中的所有预设初始化数值全部被替换完成的情况下,得到测试代码脚本。
上述的基于可视化编程的功能测试装置还可以包括处理器和存储器,上述接收单元41,调取单元42,生成单元43,执行单元44等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
上述处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
上述存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:接收功能测试请求和用户操作信息集合,其中,功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,预设流程图形用于链接位于后端的代码生成器中的操作代码脚本;基于用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,其中,测试文档用于记录对待测业务功能进行测试的测试流程中所需的流程配置信息;基于用户操作信息集合和测试文档中的流程配置信息生成业务功能测试代码,并将业务功能测试代码编译为可执行的业务功能测试程序;响应功能测试请求,执行业务功能测试程序,得到待测业务功能对应的功能测试报告。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的计算机程序,其中,在计算机程序运行时控制计算机可读存储介质所在设备执行上述实施例一中任意一项的基于可视化编程的功能测试方法。
根据本发明实施例的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,存储器用于存储一个或多个程序,其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述实施例一中任意一项的基于可视化编程的功能测试方法。
图5是根据本发明实施例的一种用于基于可视化编程的功能测试方法的电子设备(或移动设备)的硬件结构框图。如图5所示,电子设备可以包括一个或多个(图5中采用502a、502b,……,502n来示出)处理器502(处理器502可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器504。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、键盘、电源和/或相机。本领域普通技术人员可以理解,图5所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子设备还可包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (11)

1.一种基于可视化编程的功能测试方法,其特征在于,包括:
接收功能测试请求和用户操作信息集合,其中,所述功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,所述预设流程图形用于链接位于后端的代码生成器中的操作代码脚本;
基于所述用户操作信息集合在系统数据库中调取所述待测业务功能对应的测试文档,其中,所述测试文档用于记录对所述待测业务功能进行测试的测试流程中所需的流程配置信息;
基于所述用户操作信息集合和所述测试文档中的所述流程配置信息生成业务功能测试代码,并将所述业务功能测试代码编译为可执行的业务功能测试程序;
响应所述功能测试请求,执行所述业务功能测试程序,得到所述待测业务功能对应的功能测试报告。
2.根据权利要求1所述的功能测试方法,其特征在于,在接收功能测试请求和用户操作信息集合之前,还包括:
获取所述金融业务系统中M个业务功能的调用流程,得到M个流程文档,其中,所述流程文档用于记录所述金融业务系统在调用所述业务功能的过程中涉及到的R个操作步骤,M、R均为正整数;
对于每个所述业务功能,获取所述业务功能对应的所述流程文档中记录的每个操作步骤的操作类型;
整合所有所述业务功能对应的所述流程文档中的所有所述操作步骤的所述操作类型,得到操作类型清单,其中,所述操作类型清单中包含N个所述操作类型,
N为正整数。
3.根据权利要求2所述的功能测试方法,其特征在于,在整合所有所述业务功能对应的所述流程文档中的所有所述操作步骤的所述操作类型,得到操作类型清单之后,还包括:
对于所述操作类型清单中的每个所述操作类型,使用预设编程语言编写所述操作代码脚本,其中,所述操作代码脚本与所述操作类型一一对应,所述操作代码脚本中的所有运算数据字段均使用预设初始化数值进行填充;
整合所述操作类型清单中N个所述操作类型对应的N个所述操作代码脚本,得到操作代码脚本集合;
将所述操作代码脚本集合存储至位于后端的所述代码生成器中。
4.根据权利要求3所述的功能测试方法,其特征在于,在整合所述操作类型清单中N个所述操作类型对应的N个所述操作代码脚本,得到操作代码脚本集合之后,还包括:
对所述操作代码脚本集合中的N个所述操作代码脚本绘制N个不同结构的所述预设流程图形,其中,每个所述操作代码脚本对应一个所述预设流程图形;
在绘制所述预设流程图形的过程中,建立所述预设流程图形与对应的所述操作代码脚本之间的链接关系;
整合所有所述预设流程图形以及每个所述预设流程图形携带的所述链接关系,得到流程图形菜单;
将所述流程图形菜单发送至所述前端显示界面。
5.根据权利要求1所述的功能测试方法,其特征在于,基于所述用户操作信息集合在系统数据库中调取所述待测业务功能对应的测试文档的步骤,包括:
基于所述用户操作信息集合中的所有所述用户操作信息生成操作文档,其中,所述操作文档中包含对所述待测业务功能对应的所述测试流程进行配置的过程中涉及到的流程配置元素,所述流程配置元素的类型至少包括:测试环境配置元素和测试案例配置元素;
在所述系统数据库中对所述操作文档中的每个所述流程配置元素进行查找,得到每个所述流程配置元素对应的所述流程配置信息;
整合所有所述流程配置元素对应的所有所述流程配置信息,得到所述测试文档。
6.根据权利要求1所述的功能测试方法,其特征在于,基于所述用户操作信息集合和所述测试文档中的所述流程配置信息生成业务功能测试代码的步骤,包括:
基于所述用户操作信息集合中的所述用户操作信息调取与所述预设流程图形具备链接关系的所述操作代码脚本;
使用所述测试文档中的所述流程配置信息对所述操作代码脚本中的所有运算数据字段下对应的预设初始化数值进行替换,得到测试代码脚本;
依据所述用户操作信息集合中的所述用户操作信息所指示的操作顺序对所有所述测试代码脚本进行拼接,得到所述业务功能测试代码。
7.根据权利要求6所述的功能测试方法,其特征在于,使用所述测试文档中的所述流程配置信息对所述操作代码脚本中的所有运算数据字段下对应的预设初始化数值进行替换,得到测试代码脚本的步骤,包括:
定位所述操作代码脚本中的所有运算数据字段;
对于每个所述运算数据字段,获取每个所述运算数据字段的字段类型以及所述运算数据字段下的所述预设初始化数值的数据属性;
在所述流程配置信息中依据所述数据属性提取所述待测业务功能涉及到的运算数据,并依据所述字段类型对提取到的所述运算数据进行格式转换;
使用格式转换后得到的所述运算数据对所述预设初始化数值进行替换;
在所述操作代码脚本中的所有所述预设初始化数值全部被替换完成的情况下,得到所述测试代码脚本。
8.一种可视化编程系统,其特征在于,与金融业务系统连接,用于执行权利要求1-7中任意一项所述的基于可视化编程的功能测试方法,包括:
可视流程编辑器,用于向用户终端屏幕的前端显示界面上显示流程图形菜单以及N个预设流程图形,通过所述预设流程图形关联的功能控件接收用户操作信息集合,并将接收到的所述用户操作信息集合传输至位于后端的代码生成器,其中,N为正整数;
所述代码生成器,与所述可视流程编辑器连接,用于基于所述用户操作信息集合在系统数据库中调取待测业务功能对应的测试文档,并基于所述测试文档中的流程配置信息生成业务功能测试代码;
程序执行组件,与所述代码生成器连接,用于将所述业务功能测试代码编译为可执行的业务功能测试程序,并执行所述业务功能测试程序,得到所述待测业务功能的功能测试报告。
9.一种基于可视化编程的功能测试装置,其特征在于,包括:
接收单元,用于接收功能测试请求和用户操作信息集合,其中,所述功能测试请求用于指示金融业务系统对存在变更的待测业务功能进行测试,用户操作信息是指用户对前端显示界面的预设流程图形所操作的动作对应的操作信息,所述预设流程图形用于链接位于后端的代码生成器中的操作代码脚本;
调取单元,用于基于所述用户操作信息集合在系统数据库中调取所述待测业务功能对应的测试文档,其中,所述测试文档用于记录对所述待测业务功能进行测试的测试流程中所需的流程配置信息;
生成单元,用于基于所述用户操作信息集合和所述测试文档中的所述流程配置信息生成业务功能测试代码,并将所述业务功能测试代码编译为可执行的业务功能测试程序;
执行单元,用于响应所述功能测试请求,执行所述业务功能测试程序,得到所述待测业务功能对应的功能测试报告。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至7中任意一项所述的基于可视化编程的功能测试方法。
11.一种电子设备,其特征在于,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至7中任意一项所述的基于可视化编程的功能测试方法。
CN202311635927.8A 2023-11-30 2023-11-30 基于可视化编程的功能测试方法及装置、可视化编程系统 Pending CN117555803A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311635927.8A CN117555803A (zh) 2023-11-30 2023-11-30 基于可视化编程的功能测试方法及装置、可视化编程系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311635927.8A CN117555803A (zh) 2023-11-30 2023-11-30 基于可视化编程的功能测试方法及装置、可视化编程系统

Publications (1)

Publication Number Publication Date
CN117555803A true CN117555803A (zh) 2024-02-13

Family

ID=89820408

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311635927.8A Pending CN117555803A (zh) 2023-11-30 2023-11-30 基于可视化编程的功能测试方法及装置、可视化编程系统

Country Status (1)

Country Link
CN (1) CN117555803A (zh)

Similar Documents

Publication Publication Date Title
US10303581B2 (en) Graphical transaction model
CN109062780B (zh) 自动化测试用例的开发方法及终端设备
CN101046767B (zh) 用于自动测试基于图形的编程工具的方法和系统
CN107102947B (zh) Atm交易流程测试装置及方法
US8402434B2 (en) Graphical user interface (GUI) script generation and documentation
CN108845940A (zh) 一种企业级信息系统自动化功能测试方法和系统
CN110928763A (zh) 测试方法、装置、存储介质及计算机设备
US20200327043A1 (en) System and a method for automated script generation for application testing
CN115658529A (zh) 用户页面的自动化测试方法以及相关设备
CN112882930B (zh) 自动化测试方法、装置、存储介质及电子设备
CN112181854A (zh) 一种生成流程自动化脚本的方法、装置、设备及存储介质
CN109739704A (zh) 一种接口测试方法、服务端及计算机可读存储介质
CN114297961A (zh) 一种芯片测试用例处理方法及相关装置
CN117493188A (zh) 接口测试方法及装置、电子设备及存储介质
CN116719735A (zh) 一种测试用例生成方法及装置
CN116719736A (zh) 一种用于测试软件界面的测试用例生成方法及装置
CN117555803A (zh) 基于可视化编程的功能测试方法及装置、可视化编程系统
CN114706738A (zh) 客户端自动埋点的方法及装置
CN115480940A (zh) 一种财务比率指标页面化调用方法、装置及介质
CN114880239A (zh) 一种基于数据驱动的接口自动化测试框架及方法
CN114691491A (zh) 一种用于智慧屏的用例模板生成方法、系统及介质
CN115437621A (zh) 基于机器人流程自动化的流程编辑方法、装置
Ragnarsson et al. ModRec: a tool to support empirical study design for Papyrus and the Eclipse Modeling Framework
CN112579455B (zh) 一种接口自动化测试方法、装置、电子设备及存储介质
CN116166537A (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