CN117667745A - 目标***的测试方法和装置、存储介质及电子装置 - Google Patents
目标***的测试方法和装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN117667745A CN117667745A CN202311855464.6A CN202311855464A CN117667745A CN 117667745 A CN117667745 A CN 117667745A CN 202311855464 A CN202311855464 A CN 202311855464A CN 117667745 A CN117667745 A CN 117667745A
- Authority
- CN
- China
- Prior art keywords
- test
- target system
- file
- testing
- target
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 560
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000004044 response Effects 0.000 claims abstract description 15
- 230000006870 function Effects 0.000 claims description 91
- 238000004590 computer program Methods 0.000 claims description 12
- 238000010998 test method Methods 0.000 claims description 12
- 238000005516 engineering process Methods 0.000 abstract description 6
- 239000008186 active pharmaceutical agent Substances 0.000 description 17
- XSQUKJJJFZCRTK-NJFSPNSNSA-N UREA C 14 Chemical compound N[14C](N)=O XSQUKJJJFZCRTK-NJFSPNSNSA-N 0.000 description 12
- 230000008569 process Effects 0.000 description 8
- BUGBHKTXTAQXES-UHFFFAOYSA-N Selenium Chemical compound [Se] BUGBHKTXTAQXES-UHFFFAOYSA-N 0.000 description 6
- 229910052711 selenium Inorganic materials 0.000 description 6
- 239000011669 selenium Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000012423 maintenance Methods 0.000 description 5
- 230000006399 behavior Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种目标***的测试方法和装置、存储介质及电子装置,上述方法包括:响应于接收到的第一配置操作配置关键字库,其中,所述关键字库包含:用于指示测试指令的关键字;根据第二配置操作配置测试文件,其中,所述测试文件包括测试步骤和所述测试步骤对应的关键字,所述测试步骤用于执行目标***的目标功能,所述测试步骤对应的关键字用于指示对所述目标功能执行的测试指令;根据所述测试文件对所述目标***进行测试;采用上述方案,解决了相关技术中现有的UI和API自动化测试的编写和维护需要大量的编程知识和经验,用户使用难度大的问题。
Description
技术领域
本申请涉及通信领域,具体而言,涉及一种目标***的测试方法和装置、存储介质及电子装置。
背景技术
在软件开发过程中,自动化测试已经成为一个不可或缺的组成部分。UI和API自动化测试是软件测试中最重要的两个方面,UI自动化测试是一种测试方法,可以自动执行Web应用程序的操作并验证其行为是否符合预期,API自动化测试则是通过调用API来检查软件***的功能和性能。
然而,UI和API自动化测试的编写和维护是一项具有挑战性的任务,需要大量的编程知识和经验,导致用户使用难度较大。
针对相关技术中,现有的UI和API自动化测试的编写和维护需要大量的编程知识和经验,用户使用难度大等问题,目前尚未发现有效的解决方案。
发明内容
本申请实施例提供了一种目标***的测试方法和装置、存储介质及电子装置,以至少解决相关技术中,现有的UI和API自动化测试的编写和维护需要大量的编程知识和经验,用户使用难度大的问题。
根据本申请实施例的一个实施例,提供了一种目标***的测试方法,包括:响应于接收到的第一配置操作配置关键字库,其中,所述关键字库包含:用于指示测试指令的关键字;根据第二配置操作配置测试文件,其中,所述测试文件包括测试步骤和所述测试步骤对应的关键字,所述测试步骤用于执行目标***的目标功能,所述测试步骤对应的关键字用于指示对所述目标功能执行的测试指令;根据所述测试文件对所述目标***进行测试。
在一个示例性实施例中,根据第二配置操作配置测试文件,包括:配置步骤:根据接收到的第一选择操作确定所述测试步骤所指示的所述目标***的目标功能或目标组件,以及根据接收到的第二选择操作在所述关键字库中选择所述测试步骤对应的关键字,其中,所述第二配置操作包括所述第一选择操作和所述第二选择操作;执行多次所述配置步骤,以得到所述测试文件,其中,所述测试文件包括多个测试步骤和多个关键字,所述多个测试步骤和所述多个关键字一一对应。
在一个示例性实施例中,根据所述测试文件对所述目标***进行测试之前,所述方法还包括:接收第三配置操作携带的测试参数,其中,所述测试参数用于指示执行所述测试文件中的关键字对应的测试指令所需的参数;根据所述测试参数和所述测试文件对所述目标***进行测试。
在一个示例性实施例中,根据所述测试参数和所述测试文件对所述目标***进行测试,包括:确定所述测试参数包含的多个测试子参数与所述测试文件包含的多个关键字的对应关系;根据所述对应关系将至少一个测试子参数传递给所述测试步骤对应的关键字;根据所述至少一个测试子参数对测试步骤所指示的目标功能执行所述关键字所指示的测试指令,以对所述目标***的目标功能进行测试。
在一个示例性实施例中,根据所述测试文件对所述目标***进行测试之后,所述方法还包括:获取所述测试文件的测试结果,并将所述测试结果与所述第三配置操作携带的预期测试结果进行比对,其中,所述预期测试结果用于指示与所述测试参数对应的测试文件的预期执行结果;在比对结果指示所述测试结果与所述预期测试结果相同的情况下,确定所述目标功能通过测试;在所述比对结果指示所述测试结果与所述预期测试结果不同的情况下,确定所述目标功能未通过测试。
在一个示例性实施例中,根据所述测试文件对所述目标***进行测试之后,所述方法还包括:生成所述测试文件对应的测试报告,其中,所述测试报告包括:所述测试文件的测试结果,每一个测试步骤的执行结果,每一个测试步骤对应的测试子参数;将所述测试报告发送给第二对象。
在一个示例性实施例中,响应于接收到的第一配置操作配置关键字库,包括:在预设环境中导入多个第三方包,其中,所述多个第三方包包含多个函数方法;根据所述第一配置操作分别为所述多个函数方法配置关键字,其中,函数方法与测试指令一一对应;根据得到的多个关键字生成所述关键字库。
根据本申请实施例的另一个实施例,还提供了一种目标***的测试装置,包括:第一配置模块,用于响应于接收到的第一配置操作配置关键字库,其中,所述关键字库包含:用于指示测试指令的关键字;第二配置模块,用于根据第二配置操作配置测试文件,其中,所述测试文件包括测试步骤和所述测试步骤对应的关键字,所述测试步骤用于执行目标***的目标功能,所述测试步骤对应的关键字用于指示对所述目标功能执行的测试指令;测试模块,用于根据所述测试文件对所述目标***进行测试。
根据本申请实施例的另一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述目标***的测试方法。
根据本申请实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的目标***的测试方法。
在本申请实施例中,响应于接收到的第一配置操作配置出关键字库,其中,该关键字库包含有用于指示测试指令的关键字;根据接收到的第二配置操作配置测试文件,测试文件包含有测试步骤和测试步骤对应的关键字,测试步骤用于执行目标***的目标功能,测试步骤对应的关键字用于指示对目标功能执行的测试指令;然后根据该测试文件对该目标***进行测试;采用上述方案,通过关键字驱动测试框架,将测试文件中的测试步骤和操作定义为关键字,通过关键字驱动来编写和执行测试用例,使得测试脚本(测试文件)易于理解和维护;从而解决了相关技术中现有的UI和API自动化测试的编写和维护需要大量的编程知识和经验,用户使用难度大的问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本申请实施例的一种可选的目标***的测试方法的计算机终端的硬件结构框图;
图2是根据本申请实施例的一种可选的目标***的测试方法的流程图;
图3是根据本申请实施例的一种可选的目标***的测试方法的***流程图;
图4是根据本申请实施例的一种可选的目标***的测试装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
以下对本申请中出现的专业词汇进行解释说明:
1、Gitlab:使用Gitlab做源代码管理,且源代码按不同的环境创建了不同的分支,tst分支(测试环境),stg分支(预发环境),prd分支(生产环境);
2、Selenium:是一种流行的UI自动化测试工具,可用于测试Web应用程序。Selenium提供了一组API,可以与Web浏览器进行交互,并模拟用户的行为,例如单击、填写表单等。Pytest是一个流行的Python测试框架,可用于编写各种类型的测试,包括UI和API自动化测试。它提供了许多有用的功能,例如断言、参数化测试和测试报告;
3、Pytest:是一个功能强大的Python测试框架,它支持单元测试、集成测试、功能测试和API测试。Pytest具有以下特点:
a、灵活性:Pytest可以运行任何Python函数作为测试用例,不需要遵循特定的测试用例类或方法的命名规则。
b、插件***:Pytest具有丰富的插件***,可以轻松扩展测试框架的功能,例如支持HTML测试报告、测试覆盖率、性能测试等。
c、自动化:Pytest具有自动化的测试收集和运行功能,它可以自动发现和运行所有符合特定命名规则的测试用例。
d、断言库:Pytest提供了内置的断言库,支持丰富的断言方法和自定义错误信息。
本申请实施例所提供的方法实施例可以在计算机终端或者类似的运算***中执行。以运行在计算机终端上为例,图1是本申请实施例的一种目标***的测试方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理***)和用于存储数据的存储器104,在一个示例性实施例中,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的目标***的测试方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储***、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。
在本实施例中提供了一种目标***的测试方法,应用于上述计算机终端,图2是根据本申请实施例的一种可选的目标***的测试方法的流程图,该流程包括如下步骤:
步骤S202,响应于接收到的第一配置操作配置关键字库,其中,所述关键字库包含:用于指示测试指令的关键字;
步骤S204,根据第二配置操作配置测试文件,其中,所述测试文件包括测试步骤和所述测试步骤对应的关键字,所述测试步骤用于执行目标***的目标功能,所述测试步骤对应的关键字用于指示对所述目标功能执行的测试指令;
步骤S206,根据所述测试文件对所述目标***进行测试。
通过上述步骤,响应于接收到的第一配置操作配置出关键字库,其中,该关键字库包含有用于指示测试指令的关键字;根据接收到的第二配置操作配置测试文件,测试文件包含有测试步骤和测试步骤对应的关键字,测试步骤用于执行目标***的目标功能,测试步骤对应的关键字用于指示对目标功能执行的测试指令;然后根据该测试文件对该目标***进行测试;采用上述方案,通过关键字驱动测试框架,将测试文件中的测试步骤和操作定义为关键字,通过关键字驱动来编写和执行测试用例,使得测试脚本(测试文件)易于理解和维护;从而解决了相关技术中现有的UI和API自动化测试的编写和维护需要大量的编程知识和经验,用户使用难度大的问题。
在一个示例性实施例中,根据第二配置操作配置测试文件,包括:配置步骤:根据接收到的第一选择操作确定所述测试步骤所指示的所述目标***的目标功能或目标组件,以及根据接收到的第二选择操作在所述关键字库中选择所述测试步骤对应的关键字,其中,所述第二配置操作包括所述第一选择操作和所述第二选择操作;执行多次所述配置步骤,以得到所述测试文件,其中,所述测试文件包括多个测试步骤和多个关键字,所述多个测试步骤和所述多个关键字一一对应。
先根据接收到的第一选择操作确定测试步骤所指示的目标功能或目标组件,以及根据接收到的第二选择操作在关键字库中选择测试步骤对应的关键字,第二配置操作包括第一选择操作和第二选择操作;执行多次该配置步骤,从而得到测试文件,测试文件中包括有多个测试步骤和多个关键字,每个测试步骤对应有一个关键字。
可选的,执行上述步骤S206:根据所述测试文件对所述目标***进行测试之前,所述方法还包括:接收第三配置操作携带的测试参数,其中,所述测试参数用于指示执行所述测试文件中的关键字对应的测试指令所需的参数;根据所述测试参数和所述测试文件对所述目标***进行测试。
在进行测试之前,需要先接收第三配置操作所携带的测试参数,该测试参数是执行每一个测试指令所需要的参数,也即测试数据,例如执行登录***操作时,需要配置好进行测试时所需要的账号和密码数据;然后根据接收到的测试参数和测试文件来对该目标***进行测试。
可选的,上述步骤S206:根据所述测试参数和所述测试文件对所述目标***进行测试,包括:确定所述测试参数包含的多个测试子参数与所述测试文件包含的多个关键字的对应关系;根据所述对应关系将至少一个测试子参数传递给所述测试步骤对应的关键字;根据所述至少一个测试子参数对测试步骤所指示的目标功能执行所述关键字所指示的测试指令,以对所述目标***的目标功能进行测试。
先确定接收到的测试参数中包含的多个测试子参数与该测试文件包含的多个关键字的对应关系;然后根据对应关系将每一个关键字对应的至少一个测试子参数传递给关键字,然后根据这些至少一个测试子参数执行测试指令,从而完成对目标***的目标功能的测试。
执行上述步骤S206:根据所述测试文件对所述目标***进行测试之后,所述方法还包括:获取所述测试文件的测试结果,并将所述测试结果与所述第三配置操作携带的预期测试结果进行比对,其中,所述预期测试结果用于指示与所述测试参数对应的测试文件的预期执行结果;在比对结果指示所述测试结果与所述预期测试结果相同的情况下,确定所述目标功能通过测试;在所述比对结果指示所述测试结果与所述预期测试结果不同的情况下,确定所述目标功能未通过测试。
在根据测试文件来对目标***进行测试之后,需要获取该测试文件对应的测试结果,然后将测试结果与第三配置操作所携带的预期测试结果进行比对,该预期测试结果为与该测试参数对应的测试文件的预期执行结果;例如,对于登录功能而言,若输入正确的账号与密码,对应的预期测试结果应当为登陆成功,并弹出提示消息;而输入错误的账号或密码之后,对应的预期测试结果应当为登录失败,以及弹出对应的提示消息;若比对结果指示二者相同,则确定该目标功能通过测试,若不相同,则该目标功能未通过测试。
可选的,执行上述步骤S206:根据所述测试文件对所述目标***进行测试之后,所述方法还包括:生成所述测试文件对应的测试报告,其中,所述测试报告包括:所述测试文件的测试结果,每一个测试步骤的执行结果,每一个测试步骤对应的测试子参数;将所述测试报告发送给第二对象。
完成测试之后,还可以根据测试结果生成测试报告,该测试报告包括测试文件的测试结果,以及每一个测试步骤的执行结果,以及每一个测试步骤对应的测试子参数;然后将测试报告发送给团队成员,以便于团队成员根据测试报告对测试过程进行分析,以及在测试失败时及时进行调整。
可选的,上述步骤S202:响应于接收到的第一配置操作配置关键字库,可以通过以下步骤来实现,包括:在预设环境中导入多个第三方包,其中,所述多个第三方包包含多个函数方法;根据所述第一配置操作分别为所述多个函数方法配置关键字,其中,函数方法与测试指令一一对应;根据得到的多个关键字生成所述关键字库。
首先需要在预设环境中导入多个第三方包,该多个第三方包包含有多个函数方法,然后根据接收到的第一配置操作分别为该多个函数方法配置关键字,而这些函数方法是与测试指令一一对应的,即测试指令是调用了这些函数方法,最后根据得到的多个关键字生成该关键字库。
为了更好的理解上述目标***的测试方法的过程,以下再结合可选实施例对上述目标***的测试的实现方法流程进行说明,但不用于限定本申请实施例的技术方案。
本申请还提供了一个可选的目标***的测试方法,包括如下步骤:
步骤1、安装python可运行环境(相当于上述预设环境),导入selenium、pytest、allure第三方包(相当于上述多个第三方包);
步骤2、定义关键字库,每种关键字对应一种测试操作。例如,UI测试可以包括点击、输入、获取元素属性等关键字,API测试可以包括请求、断言、解析响应等关键字;
步骤3、使用YAML文件定义测试用例和测试数据。测试用例需要定义测试步骤和对应的关键字,测试数据需要包含测试用例中需要的参数(相当于上述测试参数)和预期结果(相当于上述预期测试结果);
步骤4、定义测试执行器,读取测试用例和测试数据,并将测试数据传递给对应的关键字执行测试;
步骤5、使用Selenium WebDriver或API请求库执行测试操作。在UI测试中,需要使用Selenium WebDriver操作浏览器,模拟用户的交互操作;在API测试中,需要使用API请求库发送请求并解析响应数据;
步骤6、通过run文件运行,读取不同目录下的yaml测试用例,调用写入函数,函数内部定义.py文件具体内容,自动生成.py文件至tests目录内;
步骤7、利用pytest命令行执行,利用pytest特性收集test.py测试文件,运行所有测试用例;
步骤8、使用CI/CD工具集成测试框架,并在代码提交后自动执行测试,然后为测试结果生成详细的测试报告,包含测试用例的执行情况、测试结果和测试数据等信息,并将测试报告发送给团队成员。
在本申请实施例中,通过通过结合Selenium和Pytest,可以实现一个完整的UI和API自动化测试框架,该框架使用YAML关键字驱动来编写和执行测试用例,其中每个测试步骤都被定义为一个关键字。关键字可以代表一些基本操作,例如单击、输入文本等,也可以代表一些复杂的操作,例如登录、添加数据等。在执行测试时,测试框架会解析YAML文件,并将每个关键字转换为相应的测试步骤和操作。
通过本实施例,使用关键字来驱动框架执行自动化测试,有以下几个优点:1、可读性强:使用关键字驱动可以使测试脚本更加易于理解和阅读,因为每个关键字都代表着一种特定的操作或行为;2、维护成本低:当需要修改测试脚本时,只需修改相应的关键字,而不需要在每个测试用例中修改重复的代码。这样可以大大减少维护成本;3、复用性高:可以将相同的关键字在多个测试用例中重复使用,从而提高代码的复用性;4、可扩展性强:可以根据需要添加新的关键字,从而扩展测试框架的功能;5、学习成本低:不需要完整的代码基础,只需简单学习页面元素定位方式,和接口调用方法,就可完成测试用例的编写;6、可以提高测试覆盖率:由于关键字驱动可以轻松地编写多个测试用例,因此可以提高测试覆盖率,确保软件在各种情况下都能正常运行。
上述目标***的测试方法的***流程如图3所示,图3是根据本申请实施例的目标***的测试方法的***流程图,如图3所示,具体包括:
步骤3.1、扫描casedata目录,生成对应名称的test.py文件;
步骤3.2、存放Yaml测试用例;
步骤3.3、处理获取Yaml数据;
步骤3.4、定义关键字仓库;
步骤3.5、定义代码逻辑,完成动作链条;
步骤3.6、根据yaml测试用例,生成可执行文件;
步骤3.7、利用pytest执行testcase目录内用例;
步骤3.8、生成测试报告。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例的方法。
图4是根据本申请实施例的一种目标***的测试装置的结构框图;如图4所示,包括:
第一配置模块42,用于响应于接收到的第一配置操作配置关键字库,其中,所述关键字库包含:用于指示测试指令的关键字;
第二配置模块44,用于根据第二配置操作配置测试文件,其中,所述测试文件包括测试步骤和所述测试步骤对应的关键字,所述测试步骤用于执行目标***的目标功能,所述测试步骤对应的关键字用于指示对所述目标功能执行的测试指令;
测试模块46,用于根据所述测试文件对所述目标***进行测试。
通过上述装置,响应于接收到的第一配置操作配置出关键字库,其中,该关键字库包含有用于指示测试指令的关键字;根据接收到的第二配置操作配置测试文件,测试文件包含有测试步骤和测试步骤对应的关键字,测试步骤用于执行目标***的目标功能,测试步骤对应的关键字用于指示对目标功能执行的测试指令;然后根据该测试文件对该目标***进行测试;采用上述方案,通过关键字驱动测试框架,将测试文件中的测试步骤和操作定义为关键字,通过关键字驱动来编写和执行测试用例,使得测试脚本(测试文件)易于理解和维护;从而解决了相关技术中现有的UI和API自动化测试的编写和维护需要大量的编程知识和经验,用户使用难度大的问题。
在一个示例性实施例中,所述第二配置模块44,还用于执行配置步骤:根据接收到的第一选择操作确定所述测试步骤所指示的所述目标***的目标功能或目标组件,以及根据接收到的第二选择操作在所述关键字库中选择所述测试步骤对应的关键字,其中,所述第二配置操作包括所述第一选择操作和所述第二选择操作;执行多次所述配置步骤,以得到所述测试文件,其中,所述测试文件包括多个测试步骤和多个关键字,所述多个测试步骤和所述多个关键字一一对应。
先根据接收到的第一选择操作确定测试步骤所指示的目标功能或目标组件,以及根据接收到的第二选择操作在关键字库中选择测试步骤对应的关键字,第二配置操作包括第一选择操作和第二选择操作;执行多次该配置步骤,从而得到测试文件,测试文件中包括有多个测试步骤和多个关键字,每个测试步骤对应有一个关键字。
可选的,所述测试模块46,还用于接收第三配置操作携带的测试参数,其中,所述测试参数用于指示执行所述测试文件中的关键字对应的测试指令所需的参数;根据所述测试参数和所述测试文件对所述目标***进行测试。
在进行测试之前,需要先接收第三配置操作所携带的测试参数,该测试参数是执行每一个测试指令所需要的参数,也即测试数据,例如执行登录***操作时,需要配置好进行测试时所需要的账号和密码数据;然后根据接收到的测试参数和测试文件来对该目标***进行测试。
在一个示例性实施例中,所述测试模块46,还用于确定所述测试参数包含的多个测试子参数与所述测试文件包含的多个关键字的对应关系;根据所述对应关系将至少一个测试子参数传递给所述测试步骤对应的关键字;根据所述至少一个测试子参数对测试步骤所指示的目标功能执行所述关键字所指示的测试指令,以对所述目标***的目标功能进行测试。
先确定接收到的测试参数中包含的多个测试子参数与该测试文件包含的多个关键字的对应关系;然后根据对应关系将每一个关键字对应的至少一个测试子参数传递给关键字,然后根据这些至少一个测试子参数执行测试指令,从而完成对目标***的目标功能的测试。
在一个示例性实施例中,所述测试模块46,还用于获取所述测试文件的测试结果,并将所述测试结果与所述第三配置操作携带的预期测试结果进行比对,其中,所述预期测试结果用于指示与所述测试参数对应的测试文件的预期执行结果;在比对结果指示所述测试结果与所述预期测试结果相同的情况下,确定所述目标功能通过测试;在所述比对结果指示所述测试结果与所述预期测试结果不同的情况下,确定所述目标功能未通过测试。
在根据测试文件来对目标***进行测试之后,需要获取该测试文件对应的测试结果,然后将测试结果与第三配置操作所携带的预期测试结果进行比对,该预期测试结果为与该测试参数对应的测试文件的预期执行结果;例如,对于登录功能而言,若输入正确的账号与密码,对应的预期测试结果应当为登陆成功,并弹出提示消息;而输入错误的账号或密码之后,对应的预期测试结果应当为登录失败,以及弹出对应的提示消息;若比对结果指示二者相同,则确定该目标功能通过测试,若不相同,则该目标功能未通过测试。
可选的,所述测试模块46,还用于生成所述测试文件对应的测试报告,其中,所述测试报告包括:所述测试文件的测试结果,每一个测试步骤的执行结果,每一个测试步骤对应的测试子参数;将所述测试报告发送给第二对象。
完成测试之后,还可以根据测试结果生成测试报告,该测试报告包括测试文件的测试结果,以及每一个测试步骤的执行结果,以及每一个测试步骤对应的测试子参数;然后将测试报告发送给团队成员,以便于团队成员根据测试报告对测试过程进行分析,以及在测试失败时及时进行调整。
在一个示例性实施例中,所述第一配置模块42,还用于在预设环境中导入多个第三方包,其中,所述多个第三方包包含多个函数方法;根据所述第一配置操作分别为所述多个函数方法配置关键字,其中,函数方法与测试指令一一对应;根据得到的多个关键字生成所述关键字库。
首先需要在预设环境中导入多个第三方包,该多个第三方包包含有多个函数方法,然后根据接收到的第一配置操作分别为该多个函数方法配置关键字,而这些函数方法是与测试指令一一对应的,即测试指令是调用了这些函数方法,最后根据得到的多个关键字生成该关键字库。
本申请的实施例还提供了一种存储介质,该存储介质包括存储的程序,其中,上述程序运行时执行上述任一项的方法。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,响应于接收到的第一配置操作配置关键字库,其中,所述关键字库包含:用于指示测试指令的关键字;
S2,根据第二配置操作配置测试文件,其中,所述测试文件包括测试步骤和所述测试步骤对应的关键字,所述测试步骤用于执行目标***的目标功能,所述测试步骤对应的关键字用于指示对所述目标功能执行的测试指令;
S3,根据所述测试文件对所述目标***进行测试。
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,响应于接收到的第一配置操作配置关键字库,其中,所述关键字库包含:用于指示测试指令的关键字;
S2,根据第二配置操作配置测试文件,其中,所述测试文件包括测试步骤和所述测试步骤对应的关键字,所述测试步骤用于执行目标***的目标功能,所述测试步骤对应的关键字用于指示对所述目标功能执行的测试指令;
S3,根据所述测试文件对所述目标***进行测试。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算***来实现,它们可以集中在单个的计算***上,或者分布在多个计算***所组成的网络上,可选地,它们可以用计算***可执行的程序代码来实现,从而,可以将它们存储在存储***中由计算***来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种目标***的测试方法,其特征在于,包括:
响应于接收到的第一配置操作配置关键字库,其中,所述关键字库包含:用于指示测试指令的关键字;
根据第二配置操作配置测试文件,其中,所述测试文件包括测试步骤和所述测试步骤对应的关键字,所述测试步骤用于执行目标***的目标功能,所述测试步骤对应的关键字用于指示对所述目标功能执行的测试指令;
根据所述测试文件对所述目标***进行测试。
2.根据权利要求1所述的目标***的测试方法,其特征在于,根据第二配置操作配置测试文件,包括:
配置步骤:根据接收到的第一选择操作确定所述测试步骤所指示的所述目标***的目标功能或目标组件,以及根据接收到的第二选择操作在所述关键字库中选择所述测试步骤对应的关键字,其中,所述第二配置操作包括所述第一选择操作和所述第二选择操作;
执行多次所述配置步骤,以得到所述测试文件,其中,所述测试文件包括多个测试步骤和多个关键字,所述多个测试步骤和所述多个关键字一一对应。
3.根据权利要求1所述的目标***的测试方法,其特征在于,根据所述测试文件对所述目标***进行测试之前,所述方法还包括:
接收第三配置操作携带的测试参数,其中,所述测试参数用于指示执行所述测试文件中的关键字对应的测试指令所需的参数;
根据所述测试参数和所述测试文件对所述目标***进行测试。
4.根据权利要求3所述的目标***的测试方法,其特征在于,根据所述测试参数和所述测试文件对所述目标***进行测试,包括:
确定所述测试参数包含的多个测试子参数与所述测试文件包含的多个关键字的对应关系;
根据所述对应关系将至少一个测试子参数传递给所述测试步骤对应的关键字;
根据所述至少一个测试子参数对测试步骤所指示的目标功能执行所述关键字所指示的测试指令,以对所述目标***的目标功能进行测试。
5.根据权利要求4所述的目标***的测试方法,其特征在于,根据所述测试文件对所述目标***进行测试之后,所述方法还包括:
获取所述测试文件的测试结果,并将所述测试结果与所述第三配置操作携带的预期测试结果进行比对,其中,所述预期测试结果用于指示与所述测试参数对应的测试文件的预期执行结果;
在比对结果指示所述测试结果与所述预期测试结果相同的情况下,确定所述目标功能通过测试;
在所述比对结果指示所述测试结果与所述预期测试结果不同的情况下,确定所述目标功能未通过测试。
6.根据权利要求4所述的目标***的测试方法,其特征在于,根据所述测试文件对所述目标***进行测试之后,所述方法还包括:
生成所述测试文件对应的测试报告,其中,所述测试报告包括:所述测试文件的测试结果,每一个测试步骤的执行结果,每一个测试步骤对应的测试子参数;
将所述测试报告发送给第二对象。
7.根据权利要求1所述的目标***的测试方法,其特征在于,响应于接收到的第一配置操作配置关键字库,包括:
在预设环境中导入多个第三方包,其中,所述多个第三方包包含多个函数方法;
根据所述第一配置操作分别为所述多个函数方法配置关键字,其中,函数方法与测试指令一一对应;
根据得到的多个关键字生成所述关键字库。
8.一种目标***的测试装置,其特征在于,包括:
第一配置模块,用于响应于接收到的第一配置操作配置关键字库,其中,所述关键字库包含:用于指示测试指令的关键字;
第二配置模块,用于根据第二配置操作配置测试文件,其中,所述测试文件包括测试步骤和所述测试步骤对应的关键字,所述测试步骤用于执行目标***的目标功能,所述测试步骤对应的关键字用于指示对所述目标功能执行的测试指令;
测试模块,用于根据所述测试文件对所述目标***进行测试。
9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至7任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311855464.6A CN117667745A (zh) | 2023-12-28 | 2023-12-28 | 目标***的测试方法和装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311855464.6A CN117667745A (zh) | 2023-12-28 | 2023-12-28 | 目标***的测试方法和装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117667745A true CN117667745A (zh) | 2024-03-08 |
Family
ID=90069810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311855464.6A Pending CN117667745A (zh) | 2023-12-28 | 2023-12-28 | 目标***的测试方法和装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117667745A (zh) |
-
2023
- 2023-12-28 CN CN202311855464.6A patent/CN117667745A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105303112B (zh) | 组件调用漏洞的检测方法及装置 | |
US10853227B2 (en) | Systems and methods for modular test platform for applications | |
CN107526676B (zh) | 一种跨***测试方法及装置 | |
CN109376088B (zh) | 一种自动化测试***及自动化测试方法 | |
CN110933095A (zh) | 一种报文解析方法及装置 | |
CN108920146A (zh) | 页面控制组件和可视化模拟操作*** | |
CN110532182B (zh) | 一种虚拟化平台的自动化测试方法及装置 | |
CN116257438A (zh) | 接口测试用例的更新方法及相关设备 | |
CN112988588B (zh) | 客户端软件调试方法、装置、存储介质及电子设备 | |
US20170220449A1 (en) | Infrastructure rule generation | |
CN110334014A (zh) | 用于用户界面自动化测试方法、***、服务器及存储介质 | |
US10055516B1 (en) | Testing open mobile alliance server payload on an open mobile alliance client simulator | |
CN115934559A (zh) | 表单智能测试***的测试方法 | |
CN117667745A (zh) | 目标***的测试方法和装置、存储介质及电子装置 | |
CN113986263A (zh) | 代码自动化测试方法、装置、电子设备、存储介质 | |
CN114416305A (zh) | 一种机器人引擎实现方法、***及电子设备 | |
CN114048134A (zh) | 基于pom和数据驱动的自动化测试方法和装置 | |
CN113515447A (zh) | ***自动化测试方法及装置 | |
CN112416750A (zh) | 应用程序边界测试方法及*** | |
CN113434417B (zh) | 漏洞的回归测试方法及装置、存储介质、电子装置 | |
CN105683938A (zh) | 记录应用测试 | |
CN112579455B (zh) | 一种接口自动化测试方法、装置、电子设备及存储介质 | |
US20230132531A1 (en) | Software Development Project Infrastructure Builder Tool | |
CN117370203B (zh) | 自动化测试方法、***、电子设备及存储介质 | |
CN112199286A (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 |