CN115437933A - 自动化测试方法、装置、计算机设备及存储介质 - Google Patents
自动化测试方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN115437933A CN115437933A CN202211072853.7A CN202211072853A CN115437933A CN 115437933 A CN115437933 A CN 115437933A CN 202211072853 A CN202211072853 A CN 202211072853A CN 115437933 A CN115437933 A CN 115437933A
- Authority
- CN
- China
- Prior art keywords
- test
- component
- target
- code
- case
- 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/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
技术领域
本申请涉及计算机技术领域,尤其涉及一种自动化测试方法、装置、计算机设备及存储介质。
背景技术
随着自动化测试技术的发展,越来越多的软件项目采用自动化测试以节省人力成本和时间成本。
现有技术是基于python(一种高级编程语言)+pytest(一种单元测试框架)+ymal(另一种标记语言,用于管理测试数据)+allure(一种测试报告工具,用于生成测试报告)框架写接口自动化用例,然后通过jenkins(一种持续集成工具)实现自动化测试方案。
然而,现有技术中的自动化测试,无法直观查看测试用例,导致无法直观执行指定测试用例,指定测试用例时需要先查看代码,然后再修改脚本,步骤非常繁琐,当需要指定测试用例进行测试时,自动化测试的效率较低。
发明内容
本申请实施例提供了一种自动化测试方法、装置、计算机设备及存储介质,当需要指定测试用例进行测试时,可以提高自动化测试的效率。
第一方面,本申请实施例提供了一种自动化测试方法,所述方法应用于自动化测试系统,所述自动化测试系统上集成有权限登陆组件、通信组件、拉取组件以及管理组件,所述方法包括:
接收用户发送的目标项目标识;
基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;
基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;
在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;
根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。
第二方面,本申请实施例还提供了一种自动化测试装置,其包括:
输入输出单元,用于接收用户发送的目标项目标识;
处理单元,用于基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。
在一些实施例中,所述处理单元在执行所述基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码步骤时,具体用于:
根据所述权限登陆组件中的代码库地址确定所述代码库;
基于所述通信组件,根据所述权限登陆组件中的账户权限访问所述代码库;
根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码。
在一些实施例中,所述账户权限包括访问账号密码和/或安全壳协议SSH,所述访问账号密码存储在所述预设数据库中,所述SSH存储在预设文件中。
在一些实施例中,所述处理单元在执行所述根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码步骤之后,还用于:
检测预设数据库中是否存在所述目标项目标识对应的原始测试代码;
若所述预设数据库中存在所述原始测试代码,则将所述原始测试代码与所述测试代码进行合并处理,将合并后的代码作为所述测试代码。
在一些实施例中,所述处理单元在执行所述根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试步骤之后,还用于:
获取所述自动化测试对应的日志信息;
对所述日志信息进行解析,获取所述日志信息中与预设字段对应的目标日志信息;
将所述目标日志信息存入所述预设数据库中,得到日志文件,并提供所述日志文件在日志展示界面进行展示的接口。
在一些实施例中,所述处理单元在执行所述获取所述自动化测试对应的日志信息步骤之后,还用于:
对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中;
提供所述测试报告在报告展示界面进行展示的接口。
在一些实施例中,在所述处理单元执行所述对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中步骤之后,所述输入输出单元还用于:
向预设的订阅用户邮箱发送所述测试报告。
第三方面,本申请实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现上述方法。
本申请实施例提供了一种自动化测试方法、装置、计算机设备及存储介质。其中,所述方法应用于自动化测试系统,所述自动化测试系统上集成有权限登陆组件、通信组件、拉取组件以及管理组件,方法包括:接收用户发送的目标项目标识;基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。在本实施例中,由于将测试用例从测试代码中解析出来了,并且将该测试代码存入了预设数据库中,所以可以在测试用例显示界面中显示该测试用例,使得用户根据显示的测试用例进行用例的指定,故当需要指定测试用例进行测试时,通过本方案可以提高自动化测试的效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的自动化测试方法的应用场景示意图;
图2为本申请实施例提供的自动化测试方法的流程示意图;
图3为本申请实施例提供的自动化测试方法的一个界面示意图;
图4为本申请实施例提供的自动化测试方法的另一个界面示意图;
图5为本申请实施例提供的自动化测试方法的另一个界面示意图;
图6为本申请实施例提供的自动化测试方法的日志信息结构示意图;
图7为本申请实施例提供的自动化测试方法的一个整体流程示意图;
图8为本申请实施例提供的自动化测试装置的示意性框图;
图9为本申请实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本申请实施例提供了一种自动化测试方法、装置、计算机设备及存储介质。
该自动化测试方法的执行主体可以是本申请实施例提供的自动化测试装置,或者集成了该自动化测试装置的计算机设备,其中,该自动化测试装置可以采用硬件或者软件的方式实现,该计算机设备可以为终端或服务器,该终端可以是智能手机、平板电脑、掌上电脑、或者笔记本电脑等。
请参阅图1,图1为本申请实施例提供的自动化测试方法的应用场景示意图。该自动化测试方法应用于图1中的计算机设备10中,该计算机设备10上安装有自动化测试系统,且自动化测试系统上集成有权限登陆组件、通信组件、拉取组件以及管理组件,当通过计算机设备10上的自动化测试系统进行自动化测试时,首先接收用户发送的目标项目标识;然后基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。
图2是本申请实施例提供的自动化测试方法的流程示意图。如图2所示,该方法包括以下步骤S110-150。
其中,本实施例中的执行主体可以为安装在计算机设备10上的自动化测试系统,该自动化测试系统上集成有权限登陆组件、通信组件、拉取组件以及管理组件。
在一些实施例中,该自动化测试系统基于springboot(由Pivotal团队提供的全新框架)的基础上,集成权限登陆组件、通信组件、拉取组件以及管理组件。
其中,在一些实施例中,权限登陆组件通过集成jwt(JSON Web Token)以及中心授权服务(Central Authentication Service,cas)分别实现系统权限登陆以及代码库的单点登陆;通信组件通过集成websocket(基于TCP的一种新的网络协议)实现与代码库等的实时通信,并通过集成redis(一个开源的,内存存储的数据结构服务器)实现集群会话;该拉取组件通过集成Jgit(一个可以用java来对git(一个开源的分布式版本控制系统)进行操作的插件)实现代码的拉取功能,管理组件通过集成mybatisplus(Mybatis的增强工具)和mysql(一个关系型数据库管理系统)等,实现测试代码的解析及测试用例、测试代码、日志信息以及测试报告等的管理。
S110、接收用户发送的目标项目标识。
具体地,用户可以通过如图3所示的自动化测试系统中的项目管理界面输入目标项目标识(如项目名称),使得自动化测试系统接收到该目标项目标识,在该页面中,用户还可以实现项目的新增、修改、删除、导出以及下载项目代码功能。
其中,用户可以在一次测试中输入一个目标项目标识,也可以在一次测试中输入多个不同的目标项目标识,然后分别拉取各项目标识分别对应的测试代码。后续根据用户的选择,多个不同的目标项目标识对应的项目可以同步执行测试。
S120、基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码。
在一些实施例中,步骤S120包括根据所述权限登陆组件中的代码库地址确定所述代码库;基于所述通信组件,根据所述权限登陆组件中的账户权限访问所述代码库;根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码。
其中,该账户权限包括访问账号密码和/或安全壳协议(Secure Shell,SSH),所述访问账号密码存储在所述预设数据库中,所述SSH存储在预设文件中,其中,该预设文件可以为rsa文件,使用时通过拉取组件中Jgit内置的方法拉取测试代码。
在一些实施例中,该账户权限为git权限,请参阅图4,图4为本实施例提供的git权限界面示意图,用户使用鼠标等点击权限类型对应的下拉标记时,会显示访问账号密码以及SSH两种权限类型,用户通过点击显示的两种权限类型中的一种权限类型,确定为目标权限类型,后续系统将根据该目标权限类型去访问代码库。
在一些实施例中,本实施例中的代码库为gitlab(一个用于仓库管理系统的开源项目)代码库。
具体地,根据所述权限登陆组件中的账户权限访问所述代码库,然后代码库根据接收到的账户权限进行权限校验,当权限校验通过时,代码库即可被调用。
项目需要配置项目路径,下载代码时选择配置的git账号,权限校验通过即可调用拉取组件中集成的Jgit进行git clone(克隆)拉取测试代码。
需要说明的是,本实施例还需要检测预设数据库中是否存在所述目标项目标识对应的原始测试代码;若预设数据库中存在所述目标项目标识对应的原始测试代码,则将所述原始测试代码与所述测试代码进行合并处理,将合并后的代码作为所述测试代码。
具体地,测试代码拉取之后,如果发现本地存在对应的测试代码,则需要调用gitpull方法更新代码。
S130、基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中。
本实施例中,拉取到测试代码之后,需要根据管理组件中预设的解析逻辑对测试代码进行解析,分离测试代码中的测试用例代码以及测试脚本,并将测试用例代码解析为用户可直观识别的测试用例,然后将得到的测试用例以及测试脚本存入预设数据库中。
其中,该预设数据库可以为本地数据库,也可以为外部数据库,例如系统对应的云数据库,具体此处不作限定。
其中,预设数据库中维护有多个表,包括用例表、用例执行表、权限表以及项目表,其中,用例表主要用于存放解析的测试用例,用例执行表主要用于存放用例执行结果(如测试报告),通过CASE_ID与auto_case表关联,通过PROJECT_ID与auto_project表关联;权限表:例如用户gitla权限表,用于存放用户拉取代码的账户信息,如账户权限访问;项目表,用于存放下载的自动化项目,如对应的测试脚本。
S140、在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令。
本实施例中,由于将测试用例存入了预设数据库中,所以系统可以直接从预设数据库中拉取测试用例,然后将测试用例显示在测试用例显示界面上,其中,在一些实施例中,该测试用例显示界面如图5所示,每条测试用例的左侧都有一个勾选框。
S150、根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。
在一些实施例中,当用户需要选择某一个或多个测试用例时,可以勾选如图5所示的测试用例对应的勾选框,将测试用例选中,在进行自动化测试时,系统将选中的测试用例确定为目标测试用例。
其中,当选好测试用例之后,用户需要点击如图5所示的界面上方的“执行”,使系统根据目标测试用例以及测试脚本进入自动化测试步骤。
另一些实施例中,用户也可以不进行测试用例的选择,而是直接点击具体用例后方的“执行”按钮,进入自动化测试步骤,此时,目标测试用例只有一条,即该“执行”按钮对应的测试用例。
本实施例中,根据所述目标测试用例以及所述测试脚本进行自动化测试之后,方法还包括:获取所述自动化测试对应的日志信息;对所述日志信息进行解析,获取所述日志信息中与预设字段对应的目标日志信息;将所述目标日志信息存入所述预设数据库中,得到日志文件,并提供所述日志文件在日志展示界面进行展示的接口。
具体地,在一些实施例中本实施例中的日志信息如图6所示,其中,execute_err.log记录报错信息;execute_log.log记录当天执行的所有日志信息;run1656332571487.log标识任务id为1656332571487的任务执行的具体情况。
自动化测试完成后,系统会根据图6所示的这几个日志里面分析具体信息,获取与预设字段对应的字段存入预设数据库中,并展示到前端页面,也提供接口通过页面直接查看日志文件。
其中,预设字段为需要给用户所需查看的字段,可以有用户自定义设置。
在一些实施例中,得到日志信息之后,还需要对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中;然后提供所述测试报告在报告展示界面进行展示的接口。
可见,通过本实施例,用户可以通过测试报告对应的接口查看自动化测试的测试报告,方便用户对测试报告进行查看,并且实现了测试报告的实时在线查看。
在一些实施例中,对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中步骤之后,还包括:向预设的订阅用户邮箱发送所述测试报告,其中,本实施例通过简单邮件传输协议(Simple Mail TransferProtocol,SMTP)及mail(邮件)工具实现邮件发送。
可见,由于本实施例得到测试报告之后还会向订阅用户邮箱发送该测试报告,可以使得用户更加方便以及及时查看到测试报告。
为了进一步理解本申请提供的自动化测试方法,在一些实施例中,请参阅图7,图7为本实施例提供的一种自动化测试方法的一个整体流程示意图,其中,图中数据库即预设数据库。
综上所述,本申请提供的自动化测试方法应用于自动化测试系统,所述自动化测试系统上集成有权限登陆组件、通信组件、拉取组件以及管理组件,方法包括:接收用户发送的目标项目标识;基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。在本实施例中,由于将测试用例从测试代码中解析出来了,并且将该测试代码存入了预设数据库中,所以可以在测试用例显示界面中显示该测试用例,使得用户根据显示的测试用例进行用例的指定,故当需要指定测试用例进行测试时,通过本方案可以提高自动化测试的效率。
此外,本实施例中的自动化测试方法除了提供测试用例的查看、挑选、单笔/批量执行等在线管理用例功能,还将测试用例及测试执行结果存放数据库,方便用户查看历史记录,并且优化了日志格式,使用户查看日志更方便,此外还提供测试报告实时在线查看功能,无需用户再去执行命令行。
图8是本申请实施例提供的一种自动化测试装置的示意性框图。如图8所示,对应于以上自动化测试方法,本申请还提供一种自动化测试装置。该自动化测试装置包括用于执行上述自动化测试方法的单元,该装置可以被自动化测试系统中,所述自动化测试系统上集成有权限登陆组件、通信组件、拉取组件以及管理组件。具体地,请参阅图8,该自动化测试装置800包括输入输出单元801以及处理单元802。
输入输出单元801,用于接收用户发送的目标项目标识;
处理单元802,用于基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。
在一些实施例中,所述处理单元802在执行所述基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码步骤时,具体用于:
根据所述权限登陆组件中的代码库地址确定所述代码库;
基于所述通信组件,根据所述权限登陆组件中的账户权限访问所述代码库;
根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码。
在一些实施例中,所述账户权限包括访问账号密码和/或安全壳协议SSH,所述访问账号密码存储在所述预设数据库中,所述SSH存储在预设文件中。
在一些实施例中,所述处理单元802在执行所述根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码步骤之后,还用于:
检测预设数据库中是否存在所述目标项目标识对应的原始测试代码;
若所述预设数据库中存在所述原始测试代码,则将所述原始测试代码与所述测试代码进行合并处理,将合并后的代码作为所述测试代码。
在一些实施例中,所述处理单元802在执行所述根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试步骤之后,还用于:
获取所述自动化测试对应的日志信息;
对所述日志信息进行解析,获取所述日志信息中与预设字段对应的目标日志信息;
将所述目标日志信息存入所述预设数据库中,得到日志文件,并提供所述日志文件在日志展示界面进行展示的接口。
在一些实施例中,所述处理单元802在执行所述获取所述自动化测试对应的日志信息步骤之后,还用于:
对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中;
提供所述测试报告在报告展示界面进行展示的接口。
在一些实施例中,在所述处理单元802执行所述对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中步骤之后,所述输入输出单元801还用于:
向预设的订阅用户邮箱发送所述测试报告。
通过本实施例中的自动化测试装置800执行的自动化测试,由于自动化测试装置800将测试用例从测试代码中解析出来了,并且将该测试代码存入了预设数据库中,所以可以在测试用例显示界面中显示该测试用例,使得用户根据显示的测试用例进行用例的指定,故当需要指定测试用例进行测试时,通过本方案可以提高自动化测试的效率。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述自动化测试装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述自动化测试装置可以实现为一种计算机程序的形式,该计算机程序可以在如图9所示的计算机设备上运行。
请参阅图9,图9是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备900可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群,该计算机设备900中安装有自动化测试系统,所述自动化测试系统上集成有权限登陆组件、通信组件、拉取组件以及管理组件。
参阅图9,该计算机设备900包括通过系统总线901连接的处理器902、存储器和网络接口905,其中,存储器可以包括非易失性存储介质903和内存储器904。
该非易失性存储介质903可存储操作系统9031和计算机程序9032。该计算机程序9032包括程序指令,该程序指令被执行时,可使得处理器902执行一种自动化测试方法。
该处理器902用于提供计算和控制能力,以支撑整个计算机设备900的运行。
该内存储器904为非易失性存储介质903中的计算机程序9032的运行提供环境,该计算机程序9032被处理器902执行时,可使得处理器902执行一种自动化测试方法。
该网络接口905用于与其它设备进行网络通信。本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备900的限定,具体的计算机设备900可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器902用于运行存储在存储器中的计算机程序9032,以实现如下步骤:
接收用户发送的目标项目标识;
基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;
基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;
在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;
根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。
在一些实施例中,处理器902在实现所述基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码步骤时,具体实现如下步骤:
根据所述权限登陆组件中的代码库地址确定所述代码库;
基于所述通信组件,根据所述权限登陆组件中的账户权限访问所述代码库;
根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码。
在一些实施例中,所述账户权限包括访问账号密码和/或安全壳协议SSH,所述访问账号密码存储在所述预设数据库中,所述SSH存储在预设文件中。
在一些实施例中,处理器902在实现所述根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码步骤之后,还实现如下步骤:
检测预设数据库中是否存在所述目标项目标识对应的原始测试代码;
若所述预设数据库中存在所述原始测试代码,则将所述原始测试代码与所述测试代码进行合并处理,将合并后的代码作为所述测试代码。
在一些实施例中,处理器902在实现所述根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试步骤之后,还实现如下步骤:
获取所述自动化测试对应的日志信息;
对所述日志信息进行解析,获取所述日志信息中与预设字段对应的目标日志信息;
将所述目标日志信息存入所述预设数据库中,得到日志文件,并提供所述日志文件在日志展示界面进行展示的接口。
在一些实施例中,处理器902在实现所述获取所述自动化测试对应的日志信息步骤之后,还实现如下步骤:
对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中;
提供所述测试报告在报告展示界面进行展示的接口。
在一些实施例中,处理器902在实现所述对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中步骤之后,还实现如下步骤:
向预设的订阅用户邮箱发送所述测试报告。
应当理解,在本申请实施例中,处理器902可以是中央处理单元(CentralProcessing Unit,CPU),该处理器902还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本申请还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时使处理器执行如下步骤:
接收用户发送的目标项目标识;
基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;
基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;
在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;
根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。
在一些实施例中,所述处理器在执行所述程序指令而实现所述基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码步骤时,具体实现如下步骤:
根据所述权限登陆组件中的代码库地址确定所述代码库;
基于所述通信组件,根据所述权限登陆组件中的账户权限访问所述代码库;
根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码。
在一些实施例中,所述账户权限包括访问账号密码和/或安全壳协议SSH,所述访问账号密码存储在所述预设数据库中,所述SSH存储在预设文件中。
在一些实施例中,所述处理器在执行所述程序指令而实现所述根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码步骤之后,还实现如下步骤:
检测预设数据库中是否存在所述目标项目标识对应的原始测试代码;
若所述预设数据库中存在所述原始测试代码,则将所述原始测试代码与所述测试代码进行合并处理,将合并后的代码作为所述测试代码。
在一些实施例中,所述处理器在执行所述程序指令而实现所述根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试步骤之后,还实现如下步骤:
获取所述自动化测试对应的日志信息;
对所述日志信息进行解析,获取所述日志信息中与预设字段对应的目标日志信息;
将所述目标日志信息存入所述预设数据库中,得到日志文件,并提供所述日志文件在日志展示界面进行展示的接口。
在一些实施例中,所述处理器在执行所述程序指令而实现所述获取所述自动化测试对应的日志信息步骤之后,还实现如下步骤:
对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中;
提供所述测试报告在报告展示界面进行展示的接口。
在一些实施例中,所述处理器在执行所述程序指令而实现所述对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中步骤之后,还实现如下步骤:
向预设的订阅用户邮箱发送所述测试报告。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本申请实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种自动化测试方法,其特征在于,所述方法应用于自动化测试系统,所述自动化测试系统上集成有权限登陆组件、通信组件、拉取组件以及管理组件,所述方法包括:
接收用户发送的目标项目标识;
基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;
基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;
在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;
根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。
2.根据权利要求1所述的方法,其特征在于,所述基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码,包括:
根据所述权限登陆组件中的代码库地址确定所述代码库;
基于所述通信组件,根据所述权限登陆组件中的账户权限访问所述代码库;
根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码。
3.根据权利要求2所述的方法,其特征在于,所述账户权限包括访问账号密码和/或安全壳协议SSH,所述访问账号密码存储在所述预设数据库中,所述SSH存储在预设文件中。
4.根据权利要求2所述的方法,其特征在于,所述根据所述拉取组件从所述代码库中拉取与所述目标项目标识对应的所述测试代码之后,所述方法还包括:
检测预设数据库中是否存在所述目标项目标识对应的原始测试代码;
若所述预设数据库中存在所述原始测试代码,则将所述原始测试代码与所述测试代码进行合并处理,将合并后的代码作为所述测试代码。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试之后,所述方法还包括:
获取所述自动化测试对应的日志信息;
对所述日志信息进行解析,获取所述日志信息中与预设字段对应的目标日志信息;
将所述目标日志信息存入所述预设数据库中,得到日志文件,并提供所述日志文件在日志展示界面进行展示的接口。
6.根据权利要求5所述的方法,其特征在于,所述获取所述自动化测试对应的日志信息之后,所述方法还包括:
对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中;
提供所述测试报告在报告展示界面进行展示的接口。
7.根据权利要求6所述的方法,其特征在于,所述对所述日志信息进行解析,得到所述自动化测试对应的测试报告,并将所述测试报告存入所述预设数据库中之后,所述方法还包括:
向预设的订阅用户邮箱发送所述测试报告。
8.一种自动化测试装置,被配置于自动化测试系统中,其特征在于,所述自动化测试系统上集成有权限登陆组件、通信组件、拉取组件以及管理组件,所述装置包括:
输入输出单元,用于接收用户发送的目标项目标识;
处理单元,用于基于所述通信组件以及所述拉取组件,从所述权限登陆组件指定的代码库中拉取与所述目标项目标识对应的测试代码;基于所述管理组件对所述测试代码进行解析,得到与所述目标项目标识对应的测试用例以及测试脚本,并将所述测试用例以及测试脚本存入预设数据库中;在测试用例显示界面中显示所述测试用例,并接收用户的用例选择指令;根据所述用例选择指令从所述测试用例中确定目标测试用例,并根据所述目标测试用例以及所述测试脚本进行自动化测试。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211072853.7A CN115437933A (zh) | 2022-09-02 | 2022-09-02 | 自动化测试方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211072853.7A CN115437933A (zh) | 2022-09-02 | 2022-09-02 | 自动化测试方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115437933A true CN115437933A (zh) | 2022-12-06 |
Family
ID=84246435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211072853.7A Pending CN115437933A (zh) | 2022-09-02 | 2022-09-02 | 自动化测试方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115437933A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115934575A (zh) * | 2023-03-10 | 2023-04-07 | 北京全路通信信号研究设计院集团有限公司 | 一种产品测试方法、装置、设备及存储介质 |
CN117520210A (zh) * | 2024-01-05 | 2024-02-06 | 芯瞳半导体技术(山东)有限公司 | 系统软件测试方法、目标机器及远程测试中控机 |
CN117743144A (zh) * | 2023-11-07 | 2024-03-22 | 中科驭数(北京)科技有限公司 | 一种基于自动化测试的测试用例筛选方法及装置 |
-
2022
- 2022-09-02 CN CN202211072853.7A patent/CN115437933A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115934575A (zh) * | 2023-03-10 | 2023-04-07 | 北京全路通信信号研究设计院集团有限公司 | 一种产品测试方法、装置、设备及存储介质 |
CN117743144A (zh) * | 2023-11-07 | 2024-03-22 | 中科驭数(北京)科技有限公司 | 一种基于自动化测试的测试用例筛选方法及装置 |
CN117520210A (zh) * | 2024-01-05 | 2024-02-06 | 芯瞳半导体技术(山东)有限公司 | 系统软件测试方法、目标机器及远程测试中控机 |
CN117520210B (zh) * | 2024-01-05 | 2024-04-16 | 芯瞳半导体技术(山东)有限公司 | 系统软件测试方法、目标机器及远程测试中控机 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10310969B2 (en) | Systems and methods for test prediction in continuous integration environments | |
CN115437933A (zh) | 自动化测试方法、装置、计算机设备及存储介质 | |
WO2021040994A1 (en) | Systems, method, and media for determining security compliance of continuous build software | |
US20170324803A1 (en) | Automated testing of perceptible web page elements | |
US20180217921A1 (en) | System and method for generating and executing automated test cases | |
US11870741B2 (en) | Systems and methods for a metadata driven integration of chatbot systems into back-end application services | |
CN104991821B (zh) | 批量处理监控任务的方法及装置 | |
CN105550325B (zh) | 一种数据管理方法和装置 | |
US8627337B2 (en) | Programmatic modification of a message flow during runtime | |
US11086696B2 (en) | Parallel cloned workflow execution | |
US11709759B2 (en) | Contextual drill back to source code and other resources from log data | |
CN112765102B (zh) | 一种文件系统管理方法和装置 | |
CN111221727A (zh) | 测试方法、装置、电子设备和计算机可读介质 | |
CN115358873A (zh) | 一种业务场景配置系统、方法、电子设备及存储介质 | |
CN113901476A (zh) | 一种基于虚拟化环境的漏洞验证方法、系统、设备及介质 | |
CN112084114B (zh) | 用于测试接口的方法和装置 | |
CN117493188A (zh) | 接口测试方法及装置、电子设备及存储介质 | |
CN112380094A (zh) | 一种rpa业务流程处理方法及装置 | |
US20210029068A1 (en) | Systems and methods for screening electronic communications | |
US10698749B1 (en) | System and a method for automated resolution of configuration item issues | |
CN114968696A (zh) | 指标监控方法、电子设备及芯片系统 | |
CN112261072A (zh) | 一种服务调用方法、装置、设备和存储介质 | |
US20220237021A1 (en) | Systems and methods of telemetry diagnostics | |
CN114785847B (zh) | 网络控制软件开发配置方法、终端及存储介质 | |
CN111026650B (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 |