CN114138674A - 自动化测试方法、装置及计算机设备 - Google Patents
自动化测试方法、装置及计算机设备 Download PDFInfo
- Publication number
- CN114138674A CN114138674A CN202111563707.XA CN202111563707A CN114138674A CN 114138674 A CN114138674 A CN 114138674A CN 202111563707 A CN202111563707 A CN 202111563707A CN 114138674 A CN114138674 A CN 114138674A
- Authority
- CN
- China
- Prior art keywords
- interface
- test
- service
- call chain
- parameter
- 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
Links
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/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- 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/3676—Test management for coverage analysis
-
- 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)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种自动化测试方法、装置及计算机设备,方法包括基于每个测试场景的接口调用链以及接口调用链对应接口的参数值生成测试数据矩阵表;创建实现接口入参赋值及接口调用的业务关键字;基于测试数据矩阵表以及业务关键字生成自动化脚本库;将自动化测试脚本设计传统方式中最耗时的部分(即长业务链路中的多个接口频繁调用及入参赋值),通过整合成测试数据矩阵表的形式,快速完成该长链路测试场景的自动化脚本设计,大大缩减了单条自动化测试脚本的步骤数量和代码量,有效提高自动化测试效率。
Description
技术领域
本发明涉及计算机测试领域,具体涉及一种自动化测试方法、装置及计算机设备。
背景技术
测试脚本是测试自动化中的必要组成部分,脚本的具体内容依赖于使用的测试工具及脚本技术,以往自动化测试脚本重点关注在单接口上,只关注对系统或组件之间的单个接口进行测试,对全链路串接问题关注不足,导致测试深度和广度不够,即测试深度有限、测试相关类型少,且单接口测试脚本逐个独立设计的成本高,基线库脚本管理和维护繁琐,造成执行结果统计和分析耗时长、效率低。
因此需要一套自动化测试方法,降低测试成本、提高测试效率。
发明内容
本发明目的是:提供一种高效的自动化测试方法、装置及计算机设备。
本发明的技术方案是:第一方面,本发明提供一种自动化测试方法,所述方法包括:
基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表;
创建实现接口入参赋值及接口调用的业务关键字;
基于所述测试数据矩阵表以及所述业务关键字生成自动化脚本库;
执行所述自动化脚本库进行测试。
在一种较佳的实施方式中,所述基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表之前,所述方法还包括:
根据业务产品的业务风险覆盖度获得全业务逻辑测试场景;
获取所述全业务逻辑测试场景中各测试场景对应的接口调用链;
根据所述测试场景确定对应的接口调用链中的对应接口的参数值。
在一种较佳的实施方式中,所述基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表包括:
根据每个测试场景对应的接口调用链及所述接口调用链对应接口的入参数据创建测试数据矩阵表,并维护入测试数据文件。
在一种较佳的实施方式中,所述基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表还包括:
设置所述测试数据矩阵表中的数据格式及规则。
在一种较佳的实施方式中,所述设置所述测试数据矩阵表中的数据格式及规则包括:
设置“|”符号分割日切和日切后操作;
设置“&”符号分割接口入参和接口编码;
设置“{}”符号包围所述接口的参数值;
设置“;”分隔接口的参数值;
设置“=”符号左侧为参数名,右侧为参数值。
在一种较佳的实施方式中,所述创建实现接口入参赋值及接口调用的业务关键字包括:
编写jar包并将所述jar包导入自动化测试工具中封装为实现接口入参赋值及接口调用的业务关键字。
在一种较佳的实施方式中,所述执行所述自动化脚本库进行测试包括:
接收测试请求,所述测试请求至少包括目标测试场景;
基于所述业务关键字和所述目标测试场景从所述测试数据矩阵表中读取目标接口调用链及所述目标接口调用链对应接口的参数值;
基于所述业务关键字和预设解析规则解析所述目标接口调用链及所述目标接口调用链对应接口的参数值,生成所述目标测试场景对应的远程服务调用序列及接口入参报文;
基于所述目标测试场景对应的远程服务调用序列及接口入参报文加载测试环境,依次调用远程服务调用接口执行测试。
在一种较佳的实施方式中,若所述目标接口调用链对应接口的参数值为空,所述基于所述业务关键字和预设解析规则解析所述目标接口调用链及所述目标接口调用链对应接口的参数值之前,所述执行所述自动化脚本库进行测试还包括:
基于所述业务关键字和所述目标测试场景自定义所述目标接口调用链对应接口的参数值。
第二方面,本发明提供一种自动化测试装置,所述装置包括:
第一生成模块,用于基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表;
创建模块,用于创建实现接口入参赋值及接口调用的业务关键字;
第二生成模块,基于所述测试数据矩阵表以及所述业务关键字生成自动化脚本库;
执行模块,用于执行所述自动化脚本库进行测试。
第三方面,本发明提供一种计算机设备,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行第一方面中任一所述的方法。
本发明的优点是:提供一种自动化测试方法、装置及计算机设备,方法包括基于每个测试场景的接口调用链以及接口调用链对应接口的参数值生成测试数据矩阵表;创建实现接口入参赋值及接口调用的业务关键字;基于测试数据矩阵表以及业务关键字生成自动化脚本库;将自动化测试脚本设计传统方式中最耗时的部分(即长业务链路中的多个接口频繁调用及入参赋值),通过整合成测试数据矩阵表的形式,快速完成该长链路测试场景的自动化脚本设计,大大缩减了单条自动化测试脚本的步骤数量和代码量,有效提高自动化测试效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有业务流接口调用链路示意图;
图2为现有技术中自动化测试脚本设计方式示意图;
图3为本申请中自动化测试脚本方式示意设计图;
图4为实施例一所提供的自动化测试方法流程图;
图5为实施例二所提供的自动化测试方法流程图;
图6为实施例二所提供的自动化测试方法中脚本设计示意图;
图7为实施例二所提供的自动化测试方法的示意图;
图8为本申请实施例中的自动化测试架构图;
图9为实施例三所提供的自动化测试装置的示意图;
图10为实施例四所提供的计算机设备的架构图;
图11为本申请实施例中自动化脚本库应用于持续集成测试及测试前置示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如背景技术中所述,参照图1所示,目前通常一条完整的业务流中需要使用多个接口,例如新用户申请贷还款业务流,需要使用接口A、B、C…G7个接口,传统的自动化测试脚本设计方式如图2所示,针对单个接口一一获取单个接口的入参信息,即对A、B、C…G7个接口分别根据入参信息设计出7个接口各自对应的测试脚本,7个接口的测试脚本组成测试脚本库,但由于设计单个接口的测试脚本时只关注该单个接口本身,不关注接口的调用关系,容易出现单个接口的测试脚本之间的冲突,并且一一针对接口进行测试脚本设计编写步骤多、耗时长、管理和维护成本也高。
为解决上述问题,本发明创造性地提出了一种自动化测试方法、装置及计算机设备,参照图3所示,本发明按测试场景梳理出接口调用链路以及每个接口调用链路对应的接口和接口入参,将测试场景对应的接口调用链路以及接口调用链路对应的接口和接口入参整合成测试数据矩阵表的形式,测试前生成测试脚本时根据测试场景从测试数据矩阵表中迅速查询读取相应的接口调用链和接口调用链对应的接口入参,快速完成该长链路测试场景的自动化脚本设计,大大缩减了单条自动化测试脚本的步骤数量和代码量,有效提高自动化测试效率。
下面将结合具体实施例对本发明所提供的自动化测试方法、装置及计算机设备作进一步说明。
实施例一:本实施例提供一种自动化测试方法,参照图4所示,该方法包括:
S410、基于每个测试场景的接口调用链以及接口调用链对应接口的参数值生成测试数据矩阵表。
S420、创建实现接口入参赋值及接口调用的业务关键字。
S430、基于测试数据矩阵表以及业务关键字生成自动化脚本库。
S440、执行自动化脚本库进行测试。
本实施例所提供的自动化测试方法,包括:基于每个测试场景的接口调用链以及接口调用链对应接口的参数值生成测试数据矩阵表;创建实现接口入参赋值及接口调用的业务关键字;基于测试数据矩阵表以及业务关键字生成自动化脚本库;将自动化测试脚本设计传统方式中最耗时的部分(即长业务链路中的多个接口频繁调用及入参赋值),通过整合成测试数据矩阵表的形式,快速完成该长链路测试场景的自动化脚本设计,大大缩减了单条自动化测试脚本的步骤数量和代码量,有效提高自动化测试效率。
实施例二:本实施例提供一种自动化测试方法,参照图5所示,该方法包括:
S510、根据业务产品的业务风险覆盖度获得全业务逻辑测试场景。
全业务逻辑测试场景中包括至少两个测试场景,示例性的,全业务逻辑测试场景包括测试场景A、测试场景B和测试场景C。
S520、获取全业务逻辑测试场景中各测试场景对应的接口调用链。
具体的,每个测试场景都对应有一条完整的接口调用链。示例性的:测试场景A对应的接口调用链为接口a1→接口a2→接口a3,测试场景B对应的接口调用链为接口b1→接口b2→接口b3→接口b4,测试场景C对应的接口调用链为接口c1→接口c2→接口c3→接口c4。
S530、根据测试场景确定对应的接口调用链中的对应接口的参数值。
按业务产品的业务风险覆盖度,使用组合覆盖、线性膨胀法(Linear Expansion)等案例设计方法,进行全业务逻辑测试场景设计,并细化各测试场景的接口调用链及对应接口的参数值。
示例性的,根据测试场景A确定对应的接口调用链接口a1→接口a2→接口a3中对应接口a1的调用入参数据、接口a2的调用入参数据和接口a3的调用入参数据;根据测试场景B确定对应的接口调用链接口b1→接口b2→接口b3→接口b4中对应接口b1的调用入参数据、接口b2的调用入参数据、接口b3的调用入参数据和接口b4的调用入参数据;根据测试场景C确定对应的接口调用链接口c1→接口c2→接口c3→接口c4中对应接口c1的调用入参数据、接口c2的调用入参数据、接口c3的调用入参数据和接口c4的调用入参数据。
S540、基于每个测试场景的接口调用链以及接口调用链对应接口的参数值生成测试数据矩阵表。
优选的,本步骤具体包括:
S541、根据每个测试场景对应的接口调用链及所述接口调用链对应接口的入参数据创建测试数据矩阵表,并维护入测试数据文件。
具体的,按测试场景、接口的调用入参数据创建测试数据矩阵表,维护入统一Excel或cvs等测试数据文件。
示例性的,测试数据矩阵表中,行为测试场景A、B、C,列为场景对应的接口调用链和对应接口的参数值(调用入参数据)。
优选的,S540还包括:
S542、设置测试数据矩阵表中的数据格式及规则。
具体的,设置所述测试数据矩阵表中的数据格式及规则包括:
设置“|”符号分割日切和日切后操作;
设置“&”符号分割接口入参和接口编码;
设置“{}”符号包围所述接口的参数值;
设置“;”分隔接口的参数值;
设置“=”符号左侧为参数名,右侧为参数值。
上述格式及规则的设置步骤不分前后。
S550、创建实现接口入参赋值及接口调用的业务关键字。
在一种实施方式中,本步骤包括:
编写jar包并将jar包导入自动化测试工具中封装为实现接口入参赋值及接口调用的业务关键字。
java中的jar文件,装的是.class文件。它是一种压缩,和zip兼容,被称为jar包。JAR文件的全称是Java Archive File,意思就是Java档案文件。把一个JAR文件添加到系统的classpath环境变量中后,Java将会把这个jar文件当成一个路径来处理。实际上jar文件就是一个路径,jar文件通常使用jar命令压缩而成,当使用jar命令压缩生成jar文件时,可以把一个或者多个路径全部压缩成一个jar文件。
S560、基于测试数据矩阵表以及业务关键字生成自动化脚本库。
具体的,使用自动化测试工具SAT,调用上述业务关键字,可根据测试点,添加check检查点,从而实现全业务测试场景的自动化脚本库搭建。
SAT是基于RCP平台上实现自动化用例设计和自动化执行的工具。SAT采用自动化测试架构中的关键字驱动(Keyword)思想,使测试设计和测试实现分离,将实现不同公共组件类、业务类Keyword集成到一个用例中运行,也最大限度地实现Keyword共享,降低测试组重复开发的工作量,使测试人员可以更关注业务本身的测试;另外工具提供了完善的日志和测试报告功能,方便用户查看用例执行日志和批量执行测试报告;最大限度地降低工具使用门槛,提高了其自动化开发、测试效率。
S570、执行自动化脚本库进行测试。
具体的,执行所述自动化脚本库进行测试包括:
S571、接收测试请求,测试请求至少包括目标测试场景。
示例性的,请求测试场景A。
S572、基于业务关键字和目标测试场景从测试数据矩阵表中读取目标接口调用链及目标接口调用链对应接口的参数值。
示例性的,根据测试场景A,基于业务关键字从测试数据矩阵表中读物测试场景A对应的接口调用链接口a1→接口a2→接口a3,以及接口调用链接口a1→接口a2→接口a3对应的接口的参数值。
S573、基于业务关键字和预设解析规则解析目标接口调用链及目标接口调用链对应接口的参数值,生成目标测试场景对应的远程服务调用序列及接口入参报文。
具体的,按约定解析规则,生成目标测试场景——测试场景A的业务流RSF(RemoteSupport Facility,远程支持设施)调用序列及接口入参json格式报文。
S574、基于目标测试场景对应的远程服务调用序列及接口入参报文加载测试环境,依次调用远程服务调用接口执行测试。
具体的,按上述测试场景A的业务流RSF调用序列及接口入参json格式报文,加载测试环境,依次调用RSF接口执行方法。
更优选的,若目标接口调用链对应接口的参数值为空,在S573之前,执行所述自动化脚本库进行测试还包括:
S57A、基于业务关键字和目标测试场景自定义目标接口调用链对应接口的参数值。
具体的,业务关键字也支持自定义参数,可实现对测试数据文件中的部分测试场景(定义执行的行数即可)进行测试。
迭代版本的需求定稿后,开发和测试同步进行,开发完成概要设计和详细设计后,进入编码阶段后,即可通过自研研发管理平台-研发云(一下简称为“研发云”)的流水线功能,实现测试环境的每日代码发布和环境构建;同时,测试团队完成基线脚本库的维护和新增脚本的设计后,也会通过研发云的流水线功能,实现脚本的每日持续执行和跟踪。
通过此自动化测试前置的策略,更大程度上提前自动化介入测试,尽早的发现代码问题,从而辅助开发团队提升转测质量,降低项目整体的代码修复成本。
本实施例提供的自动化测试方法,将自动化测试脚本设计传统方式中最耗时的部分——长业务链路中的多个接口频繁调用及入参赋值,通过整合成测试数据矩阵表的形式,快速完成该长链路测试场景的自动化脚本设计,大大缩减了单条自动化测试脚本的步骤数量和代码量。将复杂逻辑的业务,按测试场景、业务入参等创建测试数据矩阵表,维护入统一Excel/cvs等测试数据文件中,实现全场景自动化基线库的统一管理,从而降低自动化脚本库的迭代维护成本,提升自动化测试效率。
通过持续集成和自动化测试前置、基线库脚本批跑,可缩减版本测试轮次为两轮,缩短整体执行测试周期、测试速度提升30%以上。
实施例三:本发明提供一种自动化测试装置,参照图9所示,该装置包括:
第一生成模块910,用于基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表;
创建模块920,用于创建实现接口入参赋值及接口调用的业务关键字;
第二生成模块930,基于所述测试数据矩阵表以及所述业务关键字生成自动化脚本库;
执行模块940,用于执行所述自动化脚本库进行测试。
优选的,该装置还包括:
第一获取模块950,用于根据业务产品的业务风险覆盖度获得全业务逻辑测试场景;
第二获取模块960,用于获取所述全业务逻辑测试场景中各测试场景对应的接口调用链;
确定模块970,用于根据所述测试场景确定对应的接口调用链中的对应接口的参数值。
更优选的,第一生成模块910包括:
创建单元911,用于根据每个测试场景对应的接口调用链及所述接口调用链对应接口的入参数据创建测试数据矩阵表,并维护入测试数据文件。
更优选的,第一生成模块910还包括:
设置单元912,用于设置所述测试数据矩阵表中的数据格式及规则。
更优选的,设置单元912包括:
第一设置子单元9121,用于设置“|”符号分割日切和日切后操作;
第二设置子单元9122,用于设置“&”符号分割接口入参和接口编码;
第三设置子单元9123,用于设置“{}”符号包围所述接口的参数值;
第四设置子单元9124,用于设置“;”分隔接口的参数值;
第五设置子单元9125,用于设置“=”符号左侧为参数名,右侧为参数值。
优选的,创建模块920包括:
编写导入单元921,用于编写jar包并将所述jar包导入自动化测试工具中封装为实现接口入参赋值及接口调用的业务关键字。
更优选的,执行模块940包括:
接收单元941,用于接收测试请求,所述测试请求至少包括目标测试场景;
读取单元942,用于基于所述业务关键字和所述目标测试场景从所述测试数据矩阵表中读取目标接口调用链及所述目标接口调用链对应接口的参数值;
解析生成单元943,用于基于所述业务关键字和预设解析规则解析所述目标接口调用链及所述目标接口调用链对应接口的参数值,生成所述目标测试场景对应的远程服务调用序列及接口入参报文;
加载测试单元944,用于基于所述目标测试场景对应的远程服务调用序列及接口入参报文加载测试环境,依次调用远程服务调用接口执行测试。
更优选的,执行模块940还包括:
自定义单元945,用于在所述目标接口调用链对应接口的参数值为空时,在基于所述业务关键字和预设解析规则解析所述目标接口调用链及所述目标接口调用链对应接口的参数值之前,基于所述业务关键字和所述目标测试场景自定义所述目标接口调用链对应接口的参数值。
本实施例所提供的一种服务集群资源分配装置,用于执行实施例一或实施例二所提供的服务集群资源分配方法,其有益效果与所执行的服务集群资源分配方法的有益效果相同,在此不做赘述。
需要说明的是:上述实施例提供的自动化测试装置在触发自动化测试业务时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的自动化测试装置与实施例一、实施例二提供的自动化测试方法的实施例属于同一构思,即该装置是基于该方法的,其具体实现过程详见方法实施例,这里不再赘述。
实施例四:本发明提供一种计算机设备,包括:
一个或多个处理器;以及
与一个或多个处理器关联的存储器,存储器用于存储程序指令,程序指令在被一个或多个处理器读取执行时,执行以下步骤:
其中,图10示例性的展示出了计算机系统的架构,具体可以包括处理器1010,视频显示适配器1011,磁盘驱动器1012,输入/输出接口1013,网络接口1014,以及存储器1020。上述处理器1010、视频显示适配器1011、磁盘驱动器1012、输入/输出接口1013、网络接口1014,与存储器1020之间可以通过通信总线1030进行通信连接。
其中,处理器1010可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。
存储器1020可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1020可以存储用于控制电子设备1000运行的操作系统1021,用于控制电子设备1000的低级别操作的基本输入输出系统(BIOS)1022。另外,还可以存储网页浏览器1023,数据存储管理系统1024,以及图标字体处理系统1025等等。上述图标字体处理系统1025就可以是本申请实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器1020中,并由处理器1010来调用执行。
输入/输出接口1013用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
网络接口1014用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1030包括一通路,在设备的各个组件(例如处理器1010、视频显示适配器1011、磁盘驱动器1012、输入/输出接口1013、网络接口1014,与存储器1020)之间传输信息。
另外,该电子设备1000还可以从虚拟资源对象领取条件信息数据库中获得具体领取条件的信息,以用于进行条件判断,等等。
需要说明的是,尽管上述设备仅示出了处理器1010、视频显示适配器1011、磁盘驱动器1012、输入/输出接口1013、网络接口1014,存储器1020,总线1030等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机设备上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储器被安装,或者从ROM被安装。在该计算机程序被处理器执行时,执行本申请的实施例的方法中限定的上述功能。
需要说明的是,本申请的实施例的计算机设备可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请的实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请的实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机设备,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机设备上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(RadioFrequency,射频)等等,或者上述的任意合适的组合。
上述计算机设备可以是上述服务器中所包含的;也可以是单独存在,而未装配入该服务器中。上述计算机设备承载有一个或者多个程序,当上述一个或者多个程序被该服务器执行时,使得该服务器:响应于检测到终端的外设模式未激活时,获取终端上应用的帧率;在帧率满足息屏条件时,判断用户是否正在获取终端的屏幕信息;响应于判断结果为用户未获取终端的屏幕信息,控制屏幕进入立即暗淡模式。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的实施例的操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的自动化测试方法、装置及计算机设备,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。
上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。当然上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明主要技术方案的精神实质所做的修饰,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种自动化测试方法,其特征在于,所述方法包括:
基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表;
创建实现接口入参赋值及接口调用的业务关键字;
基于所述测试数据矩阵表以及所述业务关键字生成自动化脚本库;
执行所述自动化脚本库进行测试。
2.根据权利要求1所述的自动化测试方法,其特征在于,所述基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表之前,所述方法还包括:
根据业务产品的业务风险覆盖度获得全业务逻辑测试场景;
获取所述全业务逻辑测试场景中各测试场景对应的接口调用链;
根据所述测试场景确定对应的接口调用链中的对应接口的参数值。
3.根据权利要求2所述的自动化测试方法,其特征在于,所述基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表包括:
根据每个测试场景对应的接口调用链及所述接口调用链对应接口的入参数据创建测试数据矩阵表,并维护入测试数据文件。
4.根据权利要求3所述的自动化测试方法,其特征在于,所述基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表还包括:
设置所述测试数据矩阵表中的数据格式及规则。
5.根据权利要求4所述的自动化测试方法,其特征在于,所述设置所述测试数据矩阵表中的数据格式及规则包括:
设置“|”符号分割日切和日切后操作;
设置“&”符号分割接口入参和接口编码;
设置“{}”符号包围所述接口的参数值;
设置“;”分隔接口的参数值;
设置“=”符号左侧为参数名,右侧为参数值。
6.根据权利要求1所述的自动化测试方法,其特征在于,所述创建实现接口入参赋值及接口调用的业务关键字包括:
编写j ar包并将所述ja r包导入自动化测试工具中封装为实现接口入参赋值及接口调用的业务关键字。
7.根据权利要求6所述的自动化测试方法,其特征在于,所述执行所述自动化脚本库进行测试包括:
接收测试请求,所述测试请求至少包括目标测试场景;
基于所述业务关键字和所述目标测试场景从所述测试数据矩阵表中读取目标接口调用链及所述目标接口调用链对应接口的参数值;
基于所述业务关键字和预设解析规则解析所述目标接口调用链及所述目标接口调用链对应接口的参数值,生成所述目标测试场景对应的远程服务调用序列及接口入参报文;
基于所述目标测试场景对应的远程服务调用序列及接口入参报文加载测试环境,依次调用远程服务调用接口执行测试。
8.根据权利要求7所述的自动化测试方法,其特征在于,若所述目标接口调用链对应接口的参数值为空,所述基于所述业务关键字和预设解析规则解析所述目标接口调用链及所述目标接口调用链对应接口的参数值之前,所述执行所述自动化脚本库进行测试还包括:
基于所述业务关键字和所述目标测试场景自定义所述目标接口调用链对应接口的参数值。
9.一种自动化测试装置,其特征在于,所述装置包括:
第一生成模块,用于基于每个测试场景的接口调用链以及所述接口调用链对应接口的参数值生成测试数据矩阵表;
创建模块,用于创建实现接口入参赋值及接口调用的业务关键字;
第二生成模块,基于所述测试数据矩阵表以及所述业务关键字生成自动化脚本库;
执行模块,用于执行所述自动化脚本库进行测试。
10.一种计算机设备,其特征在于,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行根据权利要求1-8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111563707.XA CN114138674A (zh) | 2021-12-20 | 2021-12-20 | 自动化测试方法、装置及计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111563707.XA CN114138674A (zh) | 2021-12-20 | 2021-12-20 | 自动化测试方法、装置及计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114138674A true CN114138674A (zh) | 2022-03-04 |
Family
ID=80383237
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111563707.XA Pending CN114138674A (zh) | 2021-12-20 | 2021-12-20 | 自动化测试方法、装置及计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114138674A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114691529A (zh) * | 2022-05-31 | 2022-07-01 | 云账户技术(天津)有限公司 | 一种gRPC接口性能测试的方法及装置 |
CN114721969A (zh) * | 2022-06-07 | 2022-07-08 | 广州易方信息科技股份有限公司 | 接口自动化测试数据和测试代码分离的方法及装置 |
CN116467189A (zh) * | 2023-03-31 | 2023-07-21 | 青岛民航凯亚系统集成有限公司 | 接口调用完成性能压测及全链路数据监控的方法和系统 |
-
2021
- 2021-12-20 CN CN202111563707.XA patent/CN114138674A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114691529A (zh) * | 2022-05-31 | 2022-07-01 | 云账户技术(天津)有限公司 | 一种gRPC接口性能测试的方法及装置 |
CN114691529B (zh) * | 2022-05-31 | 2022-08-02 | 云账户技术(天津)有限公司 | 一种gRPC接口性能测试的方法及装置 |
CN114721969A (zh) * | 2022-06-07 | 2022-07-08 | 广州易方信息科技股份有限公司 | 接口自动化测试数据和测试代码分离的方法及装置 |
CN116467189A (zh) * | 2023-03-31 | 2023-07-21 | 青岛民航凯亚系统集成有限公司 | 接口调用完成性能压测及全链路数据监控的方法和系统 |
CN116467189B (zh) * | 2023-03-31 | 2023-12-05 | 青岛民航凯亚系统集成有限公司 | 接口调用完成性能压测及全链路数据监控的方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108415832B (zh) | 接口自动化测试方法、装置、设备及存储介质 | |
CN114138674A (zh) | 自动化测试方法、装置及计算机设备 | |
CN112104709B (zh) | 智能合约的处理方法、装置、介质及电子设备 | |
CN110780856B (zh) | 一种基于微服务的用电数据发布平台 | |
CN116028025A (zh) | 一种汽车服务化模型框架生成方法、装置、设备及介质 | |
CN113986402A (zh) | 函数调用方法、装置、电子设备及存储介质 | |
CN111666201A (zh) | 回归测试方法、装置、介质及电子设备 | |
CN115509913A (zh) | 软件自动化测试方法、装置、机器可读介质及设备 | |
CN113032256A (zh) | 自动化测试方法、装置、计算机系统和可读存储介质 | |
CN113806231A (zh) | 一种代码覆盖率分析方法、装置、设备和介质 | |
CN111949259A (zh) | 风险决策配置方法、系统、电子设备及存储介质 | |
CN112860538A (zh) | 基于线上日志进行接口回归测试的方法和装置 | |
CN114553688B (zh) | 云计算部署方法、装置、设备及计算机可读存储介质 | |
CN112561690B (zh) | 信用卡分期业务接口的测试方法、系统、设备及存储介质 | |
CN117331548B (zh) | 一种基于智慧楼宇软件的低代码开发系统 | |
CN113032003B (zh) | 开发文件导出方法、装置、电子设备及计算机存储介质 | |
CN117591104B (zh) | 模型的生成方法、装置、电子设备及存储介质 | |
CN110825438B (zh) | 用于模拟人工智能芯片的数据处理的方法和装置 | |
CN114389948B (zh) | 基于白名单的功能升级及验证方法、装置、设备及介质 | |
CN113190453A (zh) | 一种用户界面测试方法、装置、服务器和介质 | |
CN116991729A (zh) | 一种测试用例生成方法、装置、设备及其存储介质 | |
CN112561690A (zh) | 信用卡分期业务接口的测试方法、系统、设备及存储介质 | |
CN117196275A (zh) | 一种基于低代码的自定义财务处理流程配置方法及装置 | |
CN116627478A (zh) | 一种文件数据处理方法、装置、电子设备及可读存储介质 | |
CN113204866A (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 |