CN112306866A - 一种测试方法、系统、设备以及介质 - Google Patents

一种测试方法、系统、设备以及介质 Download PDF

Info

Publication number
CN112306866A
CN112306866A CN202011158947.7A CN202011158947A CN112306866A CN 112306866 A CN112306866 A CN 112306866A CN 202011158947 A CN202011158947 A CN 202011158947A CN 112306866 A CN112306866 A CN 112306866A
Authority
CN
China
Prior art keywords
test
user
subframes
subframe
test data
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.)
Withdrawn
Application number
CN202011158947.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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202011158947.7A priority Critical patent/CN112306866A/zh
Publication of CN112306866A publication Critical patent/CN112306866A/zh
Withdrawn 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/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • 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

Abstract

本发明公开了一种测试方法,包括以下步骤:向用户呈现若干测试子框架并依次获取用户选择的测试子框架以及输入的测试数据;将所述测试数据写入所述用户选择的对应的所述测试子框架中;将若干个已写入测试数据的所述测试子框架组合成测试总框架;利用所述测试总框架进行测试。本发明还公开了一种系统、计算机设备以及可读存储介质。本发明提出的方案通过提供不同功能的测试子框架,减低了开发人员的学习难度,避免了代码的重复开发,提高了测试总框架的开发、测试效率。

Description

一种测试方法、系统、设备以及介质
技术领域
本发明涉及测试领域,具体涉及一种测试方法、系统、设备以及存储介质。
背景技术
Shell是一种程序设计语言,Shell语言在处理偏操作系统的底层业务时有明显的优势,在软件开发过程中,经常会使用到Shell脚本实现一些想要的功能。Shell在使用过程中经常存在两个问题,一是Shell常用命令较多,语法较常用的高级语言(例如JAVA、C#等高级开发语言)有些不同,对于常用高级开发语言的开发者来说使用时需要花费精力编写调试;二是在Shell脚本编写调试过程中,需要Linux测试环境,不同功能的Shell脚本调试过程中可能会相互影响。
发明内容
有鉴于此,为了克服上述问题的至少一个方面,本发明实施例提出一种测试方法,包括以下步骤:
向用户呈现若干测试子框架并依次获取用户选择的测试子框架以及输入的测试数据;
将所述测试数据写入所述用户选择的对应的所述测试子框架中;
将若干个已写入测试数据的所述测试子框架组合成测试总框架。
利用所述测试总框架进行测试;
在一些实施例中,还包括:
获取当前操作系统版本;
根据所述操作系统的版本获取对应的基础镜像;
利用所述基础镜像创建容器以通过所述容器获取所述用户选择的测试子框架以及所述测试数据。
在一些实施例中,还包括:
响应于接收到用户更新所述测试子框架的请求,向用户反馈所述待更新的所述测试子框架;
响应于所述待更新的测试子框架更新完成,将所述测试数据写入更新后的所述测试子框架。
在一些实施例中,将若干个已写入测试数据的所述测试子框架组合成测试总框架,进一步包括:
根据所述用户选择所述测试子框架的顺序依次将所述若干个已写入测试数据的所述测试子框架组合成测试总框架。
在一些实施例中,将若干个已写入测试数据的所述测试子框架组合成测试总框架,进一步包括:
根据所述测试总框架的标准规则将若干个所述测试子框架组合成测试总框架。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种测试系统,包括:
获取模块,所述获取模块配置为向用户呈现若干测试子框架并依次获取用户选择的测试子框架以及输入的测试数据;
写入模块,所述写入模块配置为将所述测试数据写入所述用户选择的对应的所述测试子框架中;
组合模块,所述组合模块配置为将若干个已写入测试数据的所述测试子框架组合成测试总框架;
测试模块,所述测试模块配置为利用所述测试总框架进行测试。
在一些实施例中,还包括容器生成模块,所述容器生成模块配置为:
获取当前操作系统版本;
根据所述操作系统的版本获取对应的基础镜像;
利用所述基础镜像创建容器以通过所述容器获取所述用户选择的测试子框架以及所述测试数据。
在一些实施例中,还包括更新模块,所述更新模块配置为:
响应于接收到用户更新所述测试子框架的请求,向用户反馈所述待更新的所述测试子框架;
响应于所述待更新的测试子框架更新完成,将所述测试数据写入更新后的所述测试子框架。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行如上所述的任一种测试方法的步骤。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时执行如上所述的任一种测试方法的步骤。
本发明具有以下有益技术效果之一:本发明提出的方案通过提供不同功能的测试子框架,减低了开发人员的学习难度,避免了代码的重复开发,提高了测试总框架的开发、测试效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明的实施例提供的测试方法的流程示意图;
图2为本发明的实施例提供的测试系统的结构示意图;
图3为本发明的实施例提供的计算机设备的结构示意图;
图4为本发明的实施例提供的计算机可读存储介质的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
根据本发明的一个方面,本发明的实施例提出一种测试方法,如图1所示,其可以包括步骤:
S1,向用户呈现若干测试子框架并依次获取用户选择的测试子框架以及输入的测试数据;
S2,将所述测试数据写入所述用户选择的对应的所述测试子框架中;
S3,将若干个已写入测试数据的所述测试子框架组合成测试总框架;
S4,利用所述测试总框架进行测试。
本发明提出的方案通过提供不同功能的测试子框架,减低了开发人员的学习难度,避免了代码的重复开发,提高了测试总框架的开发、测试效率。
在一些实施例中,方法还包括:
获取当前操作系统版本;
根据所述操作系统的版本获取对应的基础镜像;
利用所述基础镜像创建容器以通过所述容器获取所述用户选择的测试子框架以及所述测试数据。
具体的,可以利用基于异构CPU的K8S容器平台,提供不同CPU架构的测试总框架的运行环境,并且根据操作系统版本的不同,可以提供不同操作系统的基础镜像,这样在不同功能的测试总框架测试过程中,可以使用相对独立的运行环境,不同的测试总框架之间不会相互影响,提高了测试总框架测试的可靠性。另外容器作为轻量级的运行环境,可以快速的创建和销毁,如果在测试总框架测试过程中发现预置条件已不满足测试条件,可以快速的重新创建调试环境,提高了测试总框架的测试开发效率,并且由于容器占用资源较少,通过容器进行测试总框架的测试可以节省计算资源。
在一些实施例中,步骤S1,向用户呈现若干测试子框架并依次获取用户选择的测试子框架以及输入的测试数据,具体的,用户可以根据自己的实际需求选择不同的测试子框架进行组合,每一个测试子框架均需要用户输入相应的变量。即多个测试子框架可以预先生成,只需要用户根据实际的测试需求选择相应的测试子框架并输入测试数据就能完成相应的测试。
在一些实施例中,测试子框架/测试总框架可以是基于shell语言生成的框架,Shell脚本语法使用上与高级开发语言的不同,用户只需要根据自己的需求选择不同的Shell子框架模板进行组合,输入测试数据,即可实现想要的功能,并且结合容器运行环境,可以快速的实现Shell测试总框架开发调试。
在一些实施例中,基于shell的测试子框架可以提供以下功能:常用的流程控制语句,例如if条件测试语句,for条件循环语句,while条件循环语句,case条件测试语句等;字符串处理语句,例如字符串的分割语句,字符串的截取语句,常用的awk语句等;正则表达式语句,例如用户名密码的校验,邮箱格式的校验等。
这样用户在使用时,只需选择与运行环境对应的基础镜像、需要使用的Shell测试子框架和测试数据,即可快速完成对Shell测试总框架的测试。
在一些实施例中,还包括:
响应于接收到用户更新所述测试子框架的请求,向用户反馈所述待更新的所述测试子框架;
响应于所述待更新的测试子框架更新完成,将所述测试数据写入更新后的所述测试子框架。
具体的,当用户选择相应的测试子框架后,可以对其进行更新或二次开发。也即如果用户在实际使用时,发现预先生成的测试子框架不满足当前测试要求,可以通过预设的接口获取到该测试子框架后对其进行二次开发。
需要说明的是,二次开发的测试子框架只用于本次测试,当然也可以进行保存用于其他次测试。
在一些实施例中,将若干个已写入测试数据的所述测试子框架组合成测试总框架,进一步包括:
根据所述用户选择所述测试子框架的顺序依次将所述若干个已写入测试数据的所述测试子框架组合成测试总框架。
具体的,用户选择测试子框架的顺序即为在组合测试总框架时的顺序,例如,用户选择的测试子框架为A,B,C,A,则在进行组合时按照A,B,C,A的顺序进行,另外,同一个测试框架可以对应多个测试数据,同一种测试框架也可以出现多次。用户需要按照顺序选择所需的测试框架后并输入将该测试框架所需的测试数据,这样当用户选择完所有的测试框架后即可根据选择框架的顺序将所有的测试子框架组合成测试总框架。当然也可以在选择完所有的测试框架后对所有的测试框架进行排序,根据排列顺序进行组合。
在一些实施例中,将若干个已写入测试数据的所述测试子框架组合成测试总框架,进一步包括:
根据所述测试总框架的标准规则将若干个所述测试子框架组合成测试总框架。
具体的,测试子框架/测试总框架可以是基于shell语言生成的框架,Shell脚本语法使用上与高级开发语言的不同,可以根据shell语言的标准规则即可实现将多个测试子框组合成一个总的框架。
本发明提出的方案不需要占用过多的计算资源,通过容器提供的运行环境,可以快速的进行调试并且避免了Shell脚本之间调试时的相互影响,节省了测试环境资源。并且通过提供不同功能的测试子框架,减低了开发人员的学习难度,避免了代码的重复开发,提高了测试总框架的开发、测试效率。
基于同一发明构思,根据本发明的另一个方面,本发明的实施例还提供了一种测试系统400,如图2所示,包括:
获取模块401,所述获取模块401配置为向用户呈现若干测试子框架并依次获取用户选择的测试子框架以及输入的测试数据;
写入模块402,所述写入模块402配置为将所述测试数据写入所述用户选择的对应的所述测试子框架中;
组合模块403,所述组合模块403配置为将若干个已写入测试数据的所述测试子框架组合成测试总框架;
测试模块404,所述测试模块404配置为利用所述测试总框架进行测试。
在一些实施例中,还包括容器生成模块,所述容器生成模块配置为:
获取当前操作系统版本;
根据所述操作系统的版本获取对应的基础镜像;
利用所述基础镜像创建容器以通过所述容器获取所述用户选择的测试子框架以及所述测试数据。
在一些实施例中,还包括更新模块,所述更新模块配置为:
响应于接收到用户更新所述测试子框架的请求,向用户反馈所述待更新的所述测试子框架;
响应于所述待更新的测试子框架更新完成,将所述测试数据写入更新后的所述测试子框架。
在一些实施例中,所述组合模块403还配置为:
根据所述用户选择所述测试子框架的顺序依次将所述若干个已写入测试数据的所述测试子框架组合成测试总框架。
在一些实施例中,所述组合模块403还配置为:
根据所述测试总框架的标准规则将若干个所述测试子框架组合成测试总框架。
本发明提出的方案不需要占用过多的计算资源,通过容器提供的运行环境,可以快速的进行调试并且避免了Shell脚本之间调试时的相互影响,节省了测试环境资源。并且通过提供不同功能的测试子框架,减低了开发人员的学习难度,避免了代码的重复开发,提高了测试总框架的开发、测试效率。
基于同一发明构思,根据本发明的另一个方面,如图3所示,本发明的实施例还提供了一种计算机设备501,包括:
至少一个处理器520;以及
存储器510,存储器510存储有可在处理器上运行的计算机程序511,处理器520执行程序时执行如上的任一种测试方法的步骤。
基于同一发明构思,根据本发明的另一个方面,如图4所示,本发明的实施例还提供了一种计算机可读存储介质601,计算机可读存储介质601存储有计算机程序指令610,计算机程序指令610被处理器执行时执行如上的任一种测试方法的步骤。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。
此外,应该明白的是,本文的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

Claims (10)

1.一种测试方法,其特征在于,包括以下步骤:
向用户呈现若干测试子框架并依次获取用户选择的测试子框架以及输入的测试数据;
将所述测试数据写入所述用户选择的对应的所述测试子框架中;
将若干个已写入测试数据的所述测试子框架组合成测试总框架;
利用所述测试总框架进行测试。
2.如权利要求1所述的方法,其特征在于,还包括:
获取当前操作系统版本;
根据所述操作系统的版本获取对应的基础镜像;
利用所述基础镜像创建容器以通过所述容器获取所述用户选择的测试子框架以及所述测试数据。
3.如权利要求1所述的方法,其特征在于,还包括:
响应于接收到用户更新所述测试子框架的请求,向用户反馈所述待更新的所述测试子框架;
响应于所述待更新的测试子框架更新完成,将所述测试数据写入更新后的所述测试子框架。
4.如权利要求1所述的方法,其特征在于,将若干个已写入测试数据的所述测试子框架组合成测试总框架,进一步包括:
根据所述用户选择所述测试子框架的顺序依次将所述若干个已写入测试数据的所述测试子框架组合成测试总框架。
5.如权利要求1所述的方法,其特征在于,将若干个已写入测试数据的所述测试子框架组合成测试总框架,进一步包括:
根据所述测试总框架的标准规则将若干个所述测试子框架组合成测试总框架。
6.一种测试系统,其特征在于,包括:
获取模块,所述获取模块配置为向用户呈现若干测试子框架并依次获取用户选择的测试子框架以及输入的测试数据;
写入模块,所述写入模块配置为将所述测试数据写入所述用户选择的对应的所述测试子框架中;
组合模块,所述组合模块配置为将若干个已写入测试数据的所述测试子框架组合成测试总框架;
测试模块,所述测试模块配置为利用所述测试总框架进行测试。
7.如权利要求6所述的系统,其特征在于,还包括容器生成模块,所述容器生成模块配置为:
获取当前操作系统版本;
根据所述操作系统的版本获取对应的基础镜像;
利用所述基础镜像创建容器以通过所述容器获取所述用户选择的测试子框架以及所述测试数据。
8.如权利要求6所述的系统,其特征在于,还包括更新模块,所述更新模块配置为:
响应于接收到用户更新所述测试子框架的请求,向用户反馈所述待更新的所述测试子框架;
响应于所述待更新的测试子框架更新完成,将所述测试数据写入更新后的所述测试子框架。
9.一种计算机设备,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时执行如权利要求1-5任意一项所述的方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时执行如权利要求1-5任意一项所述的方法的步骤。
CN202011158947.7A 2020-10-26 2020-10-26 一种测试方法、系统、设备以及介质 Withdrawn CN112306866A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011158947.7A CN112306866A (zh) 2020-10-26 2020-10-26 一种测试方法、系统、设备以及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011158947.7A CN112306866A (zh) 2020-10-26 2020-10-26 一种测试方法、系统、设备以及介质

Publications (1)

Publication Number Publication Date
CN112306866A true CN112306866A (zh) 2021-02-02

Family

ID=74330647

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011158947.7A Withdrawn CN112306866A (zh) 2020-10-26 2020-10-26 一种测试方法、系统、设备以及介质

Country Status (1)

Country Link
CN (1) CN112306866A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170109269A1 (en) * 2015-10-16 2017-04-20 Successfactors, Inc. Test data framework
CN106933730A (zh) * 2015-12-29 2017-07-07 北京国睿中数科技股份有限公司 基于测试框架系统的测试方法、装置和测试框架系统
CN109840198A (zh) * 2018-12-13 2019-06-04 平安普惠企业管理有限公司 基于自动测试工具的测试软件的方法、装置和计算机设备
CN109840206A (zh) * 2018-12-26 2019-06-04 深圳壹账通智能科技有限公司 数据测试方法、装置、终端及存储介质
CN110647470A (zh) * 2019-09-24 2020-01-03 网易(杭州)网络有限公司 测试方法和制作方法、装置、介质以及电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170109269A1 (en) * 2015-10-16 2017-04-20 Successfactors, Inc. Test data framework
CN106933730A (zh) * 2015-12-29 2017-07-07 北京国睿中数科技股份有限公司 基于测试框架系统的测试方法、装置和测试框架系统
CN109840198A (zh) * 2018-12-13 2019-06-04 平安普惠企业管理有限公司 基于自动测试工具的测试软件的方法、装置和计算机设备
CN109840206A (zh) * 2018-12-26 2019-06-04 深圳壹账通智能科技有限公司 数据测试方法、装置、终端及存储介质
CN110647470A (zh) * 2019-09-24 2020-01-03 网易(杭州)网络有限公司 测试方法和制作方法、装置、介质以及电子设备

Similar Documents

Publication Publication Date Title
CN106339312B (zh) Api测试方法和系统
US8429612B2 (en) Graphical user interface (GUI) noise reduction in a cognitive control framework
CN112765023B (zh) 测试用例生成方法、装置
US20080209405A1 (en) Distributed debugging for a visual programming language
US7895575B2 (en) Apparatus and method for generating test driver
Griebe et al. A model-based approach to test automation for context-aware mobile applications
US8607203B1 (en) Test automation framework using dependency injection
US11113050B2 (en) Application architecture generation
CN110806868A (zh) 一种单页面搭建及加载方法
EP3447635A1 (en) Application architecture generation
CN113590327A (zh) 项目资源检测方法、装置、电子设备及存储介质
CN111752841A (zh) 单测模拟方法、装置、设备与计算机可读存储介质
CN113535141A (zh) 数据库操作代码的生成方法及装置
CN109284222B (zh) 软件单元、数据处理系统中的项目测试方法、装置及设备
CN115951890B (zh) 一种不同前端框架间的代码转换方法及系统及装置
CN116841543A (zh) 基于Flutter动态生成跨平台多端应用的开发方法
CN112306866A (zh) 一种测试方法、系统、设备以及介质
CN115964045A (zh) 一种跨架构的操作系统快速自动化构建的方法、装置及介质
CN113641594B (zh) 跨端自动化测试方法以及相关装置
CN113590179B (zh) 插件检测方法、装置、电子设备及存储介质
US11429383B2 (en) Method, device, and program product for managing development job in development environment
EP3872663B1 (en) Method and device for symbolic analysis of a software program
CN111580789B (zh) 功能块框架生成
US9646118B1 (en) Linking of simulators into a circuit design tool
CN113535182A (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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20210202