CN115145817A - 一种软件测试方法、装置、设备及可读存储介质 - Google Patents
一种软件测试方法、装置、设备及可读存储介质 Download PDFInfo
- Publication number
- CN115145817A CN115145817A CN202210801867.1A CN202210801867A CN115145817A CN 115145817 A CN115145817 A CN 115145817A CN 202210801867 A CN202210801867 A CN 202210801867A CN 115145817 A CN115145817 A CN 115145817A
- Authority
- CN
- China
- Prior art keywords
- test
- software
- database
- result
- index
- 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
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种软件测试方法、装置、设备及可读存储介质,涉及程序测试技术领域,包括获取待测试软件的测试指标,根据所述测试指标创建所述待测试软件对应的测试指标体系;建立软件测试分析模型,并根据所述软件测试分析模型对所述测试指标体系中各个指标的权重值进行计算;基于对应的所述数据和神经网络算法建立测试数据库模型;将预设的测试样本输入至所述测试数据库模型中进行模拟运行,得到软件测试结果。本发明的有利因素为通过建立测试指标体系并计算得到测试指标的权重值,基于神经网络算法和粒子群算法对权重值进行优化,实现对待测试软件的自动化测试,以解决现有技术中对于软件的测试方案存在测试效率低的技术问题。
Description
技术领域
本发明涉及程序测试技术领域,具体而言,涉及软件测试方法、装置、设备及可读存储介质。
背景技术
在软件需求不断增加的情况下,需要改善优化软件以提高用户体验。软件测试是决定软件产品能否提高用户体验的重要标准,如果需要提高用户体验,则需要提高软件测试效率。现有技术中对于软件的测试方案主要是通过测试人员对软件产品的使用测试进行评价,从而对软件进行改进。但是通过测试人员进行软件测试的方法过于片面,得到的测试结果代表性不强,并且效率较低。
发明内容
本发明的目的在于提供一种软件测试方法、装置、设备及可读存储介质,以改善上述问题。为了实现上述目的,本发明采取的技术方案如下:
第一方面,本申请提供了一种软件测试方法,包括:
获取待测试软件的测试指标,根据所述测试指标创建所述待测试软件对应的测试指标体系;
建立软件测试分析模型,并根据所述软件测试分析模型对所述测试指标体系中各个指标的权重值进行计算,得到各个所述指标对应数据;
基于对应的所述数据和神经网络算法建立测试数据库模型;
将预设的测试样本输入至所述测试数据库模型中进行模拟运行,得到软件测试结果。
优选地,基于对应的所述数据和神经网络算法建立测试数据库模型,包括:根据所述测试指标体系进行分类,得到分类结果,其中,所述分类结果包括第一类型、第二类型和第三类型;
基于上述第一类型、第二类型和第三类型,构建各个类型之间任意两个类型的层次矩阵;
根据各个所述层次矩阵计算出各个所述层次的单排序权值;
根据所述单排序权值计算各个所述层次中测试指标的最终组合权重值;
根据所述最终组合权重值和粒子群算法对各个神经网络节点的输出值进行优化和迭代,直到各个权值达到预设的精度阈值,得到测试数据库模型。
优选地,所述基于对应的所述数据和神经网络算法建立测试数据库模型,其中包括:
获取第一信息,所述第一信息包括待测试软件对产品进行仿真得到的仿真结果,并对所述仿真结果进行诊断;
获取第二信息,所述第二信息包括获取所述待测试软件的历史产品模型的任务需求,并对所述任务需求生成设计指标;
基于预设的所述神经网络算法、所述设计指标和预设的建模规则,建立测试数据库模型。
优选地,所述将预设的测试样本输入至所述测试数据库模型中进行模拟运行,得到软件测试结果,其中包括:
所述测试数据库模型中包括第一数据库和第二数据库,所述第一数据库用于存储待测试软件在运行过程中需要调用的数据,所述第二数据库用于存储所述待测试软件运行的结果;
调用所述第一数据库,并将运行的所述结果存储在所述第二数据库;
基于预先建立的学习模型,根据所述设计指标生成模型参数,建立软件测试函数,根据所述软件测试函数获取第三信息,所述第三信息包括从所述第二数据库中获得到的所述运行结果;
基于所述软件测试函数,判断所述运行结果是否与预设结果一致;若所述运行结果与所述预设结果一致,则确定所述测试函数测试成功,则输出所述软件测试结果;若所述运行结果与所述预设结果不一致,则确定所述测试函数测试失败,返回上一步骤继续进行测试和调整。
第二方面,本申请还提供了一种软件测试装置,包括:
获取模块:用于获取待测试软件的测试指标,根据所述测试指标创建所述待测试软件对应的测试指标体系;
计算模块:用于建立软件测试分析模型,并根据所述软件测试分析模型对所述测试指标体系中各个指标的权重值进行计算,得到各个所述指标对应数据;
建立模块:用于基于对应的所述数据和神经网络算法建立测试数据库模型;
输入模块:用于将预设的测试样本输入至所述测试数据库模型中进行模拟运行,得到软件测试结果。
第三方面,本申请还提供了一种软件测试设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现所述软件测试方法的步骤。
第四方面,本申请还提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于软件测试方法的步骤。
本发明的有益效果为:本发明通过建立测试指标体系并计算得到测试指标的权重值,基于神经网络算法和粒子群算法对权重值进行优化,实现对待测试软件的自动化测试,以解决现有技术中对于软件的测试方案存在测试评价方式片面、测试效率低的技术问题,从而快速地对软件产品的全面综合测评,进而实现提高软件测试效率和测试结果的准确性;并且将测试指标体系进行分类,并通过计算权重的方式,对神经网络节点的输出值进行优化,提高软件测试的准确性和稳定性,加速软件测试的研发周期。
本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例中所述的软件测试方法流程示意图;
图2为本发明实施例中所述的软件测试装置结构示意图;
图3为本发明实施例中所述的软件测试设备结构示意图。
图中:701、获取模块;702、计算模块;703、建立模块;7031、分类单元;7032、构建单元;7033、第一计算单元;7034、第二计算单元;7035、优化单元;7036、第一获取单元;7037、第二获取单元;7038、第一建立单元;704、输入模块;7041、存储单元;7042、调用单元;7043、第二建立单元;7044、第三获取单元;7045、判断单元;800、软件测试设备;801、处理器;802、存储器;803、多媒体组件;804、I/O接口;805、通信组件。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1:
本实施例提供了一种软件测试方法。
参见图1,图中示出了本方法包括步骤S100、步骤S200、步骤S300和步骤S400。
S100、获取待测试软件的测试指标,根据所述测试指标创建所述待测试软件对应的测试指标体系。
可以理解的是,在本步骤中,根据测试指标的语义中的包含逻辑,对所述各个测试指标进行指标类型划分,并且根据包含逻辑对各个测试指标进行树状关联处理,形成测试指标体系。具体地,获得的测试指标可以是多样化的,例如界面多按钮、窗口浮标、图形统计等等。其中,界面多按钮、窗口浮标和图形统计是具体的评价因素,为三级类型。
S200、建立软件测试分析模型,并根据所述软件测试分析模型对所述测试指标体系中各个指标的权重值进行计算,得到各个所述指标对应数据。
可以理解的是,在本步骤中,软件测试分析模型为AHP层次分析法。首先将决策的目标、考虑的因素和决策对象按它们之间的相互关系分为最高层、中间层和最低层,绘出层次结构图;最高层是指决策的目的、要解决的问题,最低层是指决策时的备选方案,中间层是指考虑的因素、决策的准则;对于相邻的两层,称高层为目标层,低层为因素层。
在确定各层次各因素之间的权重时,如果只是定性的结果,则常常不容易被别人接受,因而提出一致矩阵法,即不把所有因素放在一起比较,而是两两相互比较,对此时采用相对尺度,以尽可能减少性质不同的诸因素相互比较的困难,以提高准确度。
S300、基于对应的所述数据和神经网络算法建立测试数据库模型。
可以理解的是,在本S300步骤中包括S301、S302、S303、S304和S305,其中:
S301、根据所述测试指标体系进行分类,得到分类结果,其中,所述分类结果包括第一类型、第二类型和第三类型;
S302、基于上述第一类型、第二类型和第三类型,构建各个类型之间任意两个类型的层次矩阵;
S303、根据各个所述层次矩阵计算出各个所述层次的单排序权值;
S304、根据所述单排序权值计算各个所述层次中测试指标的最终组合权重值;
S305、根据所述最终组合权重值和粒子群算法对各个神经网络节点的输出值进行优化和迭代,直到各个权值达到预设的精度阈值,得到测试数据库模型。
需要说明的是,确定所测试模型中的数据源输入节点数和数据源输出节点数,并配置各个测试指标的权重值为初始权值,以及配置所述初始权值的初始阈值;根据神经网络算法对测试模型进行配置各个神经网络节点之间的传输神经网络路径,完成测试模型初始化。
具体地,所述神经网络算法为BP算法,建立BP神经网络模型为测试模型。通过层次分析获得各指标权重值,建立基于BP神经网络的软件模型,输入学习样本,通过预设的网络结构和前一次迭代的权值和阈值,从网络的输入层开始向后计算各神经元的输出。
将测试样本输入至数据源输入节点;通过传输神经网络路径,从神经网络的最底层对初始权值进行计算各个神经网络节点的输出值通过粒子群算法对各个神经网络节点的输出值进行优化,根据所述初始阈值对初始权值进行修改迭代,直到各个权值达到预设的精度阈值,得到测试数据库模型。
具体地,对权值和阈值的修改,从最后一层向前计算出各个权值和阈值对总误差的影响(梯度),据此对各个权值和阈值进行修改。以上两个过程反复进行,直至达到所设定的精度为止。得到可用于评测软件BP人工神经网络模型。通过AHP层次分析法获得各指标权重值,用于建立BP神经网络的软件模型,采取改进粒子群算法优化网络初始权值和阈值,利用改进BP算法训练BP神经网络评价模型。
需要说明的是,基于大数据软件测试方法改进目的,可首先利用大数据信息中粒子群——蚁群的算法,对软件生成数据进行测试。即在基本框架构建的基础上,利用蚁群算法这一有效地大数据信息分析方法,对软件测试结果的可靠性进行论证。即假定每一粒子的更新速度均随着当前个体位置移动而发生一定变化,则在整体软件测试方法更新阶段,只有某一粒子自身运动方向最好坐标位置的运动因子、另外一粒子全局运动方向最好的坐标位置的坐标因子位置相接近时,才可以促使相关粒子到达最佳坐标位置。这主要是由于每一粒子在运动阶段均会保留运动最佳位置,且会拒绝接收与运动无关的信息,则相关粒子会在进入特定空间中最佳坐标位置后停止下其他方向移动。而蚁群最优算法则是在特定空间内,在数据信息分析的基础上。依据一定概率方向,寻找、分析数据最优值。从根本上来说,在基于大数据信息软件测试方法改进中,主要是利用粒子群为主线优化算法。从粒子群更新速度、更新位置两个方面出发,对软件数据处理功能进行优化。随后引入蚁群算法,对软件大数据信息处理能力进行进一步测试。其次,针对大数据背景下软件处理多方位、多样性及专业性特征,为验证输入数据、输出数据间关系,相关技术人员可以通过数学模型设置的方式,进一步完善基于大数据的软件测试方法。即设定数学模型坐标变量,其中(ΔA,ΔB)主要代表数据在数学模型内横变坐标向量、纵变坐标向量。则数据模型为:
ΔA=A(r2m1+r4m2)+(r2+2a)×Q1+2abQ2+aE1+bE2
ΔB=B(r2m1+r4m2)+(r2+2a)×Q2+2abQ1+aE2+bE1
上述式子中,r表示数据间半径;m1、m2表示不同数据间系数;Q1、Q2表示不同数据所代表信息数量;E1、E2表示坐标(ΔA,ΔB)随机抽取数据。
可以理解的是,在本S300步骤中包括S306、S307、S308,其中:
S306、获取第一信息,所述第一信息包括待测试软件对产品进行仿真得到的仿真结果,并对所述仿真结果进行诊断;
S307、获取第二信息,所述第二信息包括获取所述待测试软件的历史产品模型的任务需求,并对所述任务需求生成设计指标;
S308、基于预设的所述神经网络算法、所述设计指标和预设的建模规则,建立测试数据库模型。
需要说明的是,是将第一信息以及第二信息(标准仿真结果)输入预先建立的诊断模型,通过诊断模型分析第一信息与第二信息的生成规律以及二者之间的差异,根据分析结果对待测仿真软件进行诊断,输出待测仿真软件中存在的缺陷或问题。第一信息与第二信息同时输入到诊断模型,由诊断模型自行判断二者之间的差异后输出待测仿真软件中存在的缺陷或问题。
可选地,在一应用场景中,所述诊断模型为深度神经网络模型。具体的,深度神经网络是可以学习映射关系的神经网络,其中,该映射关系为仿真结果与待测仿真软件的缺陷或问题的关系。将第一信息与第二信息输入深度神经网络,深度神经网络对仿真结果进行分析,输出待测仿真软件的缺陷或问题。
S400、将预设的测试样本输入至所述测试数据库模型中进行模拟运行,得到软件测试结果。
可以理解的是,在本S400步骤中包括S401、S402、S403和S404,其中:
S401、所述测试数据库模型中包括第一数据库和第二数据库,所述第一数据库用于存储待测试软件在运行过程中需要调用的数据,所述第二数据库用于存储所述待测试软件运行的结果;
可以理解的是,根据测试函数标识符创建测试函数对应的数据库时,创建的数据库可以是一个第一数据库和一个第二数据库,也可以是多个第一数据库和多个第二数据库,多个第一数据库都是用于存储测试对象运行需要调用的数据,例如,4个用于存储测试对象运行需要调用的数据的第一数据库,多个第二数据库也都是用来存储测试对象运行结果,例如,3个用于存储测试对象运行结果的第二数据库。
S402、调用所述第一数据库,并将运行的所述结果存储在所述第二数据库;
S403、基于预先建立的学习模型,根据所述设计指标生成模型参数,建立软件测试函数,根据所述软件测试函数获取第三信息,所述第三信息包括从所述第二数据库中获得到的所述运行结果;
需要说明的是,在一应用场景中,产品模型可以是实时设计的匹配所述任务需求的所述产品模型。具体的,产品模型可以是设计师根据任务需求实时设计的,也可以是由软件根据任务需求实时生成的,在此,并不限定产品模型是通过何种技术手段实时生成的,对生成产品模型的质量不做具体要求,只需其能够满足相对应的任务需求即可。比如,输入产品模型的结构特征参数、运行环境参数、流体特征参数,通过深度人工神经网络时生成结构力学模型或流体力学模型。然而,并不以此为限,产品模型可根据实际的需求进行调整。
需要说明的是,根据设计指标实时设计匹配任务需求的产品模型,该产品模型不是模型库中已有的,是根据任务目标实时生成的。比如,根据待设置的芯片类型及芯片数量参数,以及所述电路外壳的尺寸参数、接口位置参数、固定方式参数、材料参数、以及热力参数,实时设计一用于力学仿真的电路外壳模型。再比如,根据边界条件、尺寸参数、流体入口及出口位置参数、流体信息参数、流速信息参数,实时设计一流体力学分析的流体力学产品模型。
S404、基于所述软件测试函数,判断所述运行结果是否与预设结果一致;若所述运行结果与所述预设结果一致,则确定所述测试函数测试成功,则输出所述软件测试结果;若所述运行结果与所述预设结果不一致,则确定所述测试函数测试失败,返回上一步骤继续进行测试和调整。
可以理解的是,本发明实施例的测试对象的运行需要依赖一套特定的数据库,在测试函数初始化时,需要创建一套数据库用于测试对象调用。如果存在多个测试函数时,需要为每一个测试函数都创建对应的数据库。
为了避免多个测试函数对应的数据库的不同,保证每个数据库的唯一性,本发明实施例通过为每个测试函数指定一个标识符,例如,在测试函数名之前以Attribute标识该测试函数。在测试初始化函数TestInitialize中根据测试函数标识符创建测试函数对应的数据库,每个测试函数对应的数据库根据测试函数的标识符进行编号,保证每个测试函数对应的数据库不相同。
实施例2:
如图2所示,本实施例提供了一种软件测试装置,参见图2所述装置包括获取模块701、计算模块702、建立模块703和输入模块704,其中:
获取模块701:用于获取待测试软件的测试指标,根据所述测试指标创建所述待测试软件对应的测试指标体系;
计算模块702:用于建立软件测试分析模型,并根据所述软件测试分析模型对所述测试指标体系中各个指标的权重值进行计算,得到各个所述指标对应数据;
建立模块703:用于基于对应的所述数据和神经网络算法建立测试数据库模型;
输入模块704:用于将预设的测试样本输入至所述测试数据库模型中进行模拟运行,得到软件测试结果。
具体地,所述建立模块703,包括分类单元7031、构建单元7032、第一计算单元7033、第二计算单元7034和优化单元7035,其中:
分类单元7031:用于根据所述测试指标体系进行分类,得到分类结果,其中,所述分类结果包括第一类型、第二类型和第三类型;
构建单元7032:用于基于上述第一类型、第二类型和第三类型,构建各个类型之间任意两个类型的层次矩阵;
第一计算单元7033:用于根据各个所述层次矩阵计算出各个所述层次的单排序权值;
第二计算单元7034:用于根据所述单排序权值计算各个所述层次中测试指标的最终组合权重值;
优化单元7035:用于根据所述最终组合权重值和粒子群算法对各个神经网络节点的输出值进行优化和迭代,直到各个权值达到预设的精度阈值,得到测试数据库模型。
具体地,所述建立模块703,其中包括第一获取单元7036、第二获取单元7037和第一建立单元7038,其中:
第一获取单元7036:用于获取第一信息,所述第一信息包括待测试软件对产品进行仿真得到的仿真结果,并对所述仿真结果进行诊断;
第二获取单元7037:用于获取第二信息,所述第二信息包括获取所述待测试软件的历史产品模型的任务需求,并对所述任务需求生成设计指标;
第一建立单元7038:用于基于预设的所述神经网络算法、所述设计指标和预设的建模规则,建立测试数据库模型。
具体地,所述输入模块704,包括存储单元7041、调用单元7042、第二建立单元7043、第三获取单元7044和判断单元7045,其中:
存储单元7041:用于所述测试数据库模型中包括第一数据库和第二数据库,所述第一数据库用于存储待测试软件在运行过程中需要调用的数据,所述第二数据库用于存储所述待测试软件运行的结果;
调用单元7042:用于调用所述第一数据库,并将运行的所述结果存储在所述第二数据库;
第二建立单元7043:用于基于预先建立的学习模型,根据所述设计指标生成模型参数,建立软件测试函数;
第三获取单元7044:用于根据所述软件测试函数获取第三信息,所述第三信息包括从所述第二数据库中获得到的所述运行结果;
判断单元7045:用于基于所述软件测试函数,判断所述运行结果是否与预设结果一致;若所述运行结果与所述预设结果一致,则确定所述测试函数测试成功,则输出所述软件测试结果;若所述运行结果与所述预设结果不一致,则确定所述测试函数测试失败,返回上一步骤继续进行测试和调整。
需要说明的是,关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
实施例3:
相应于上面的方法实施例,本实施例中还提供了一种软件测试设备,下文描述的一种软件测试设备与上文描述的一种软件测试方法可相互对应参照。
图3是根据示例性实施例示出的一种软件测试设备800的框图。如图3所示,该软件测试设备800可以包括:处理器801,存储器802。该软件测试设备800还可以包括多媒体组件803,I/O接口804,以及通信组件805中的一者或多者。
其中,处理器801用于控制该软件测试设备800的整体操作,以完成上述的软件测试方法中的全部或部分步骤。存储器802用于存储各种类型的数据以支持在该软件测试设备800的操作,这些数据例如可以包括用于在该软件测试设备800上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件803可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器802或通过通信组件805发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口804为处理器801和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件805用于该软件测试设备800与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(NearFieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件805可以包括:Wi-Fi模块,蓝牙模块,NFC模块。
在一示例性实施例中,软件测试设备800可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal ProcessingDevice,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的软件测试方法。
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的软件测试方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器802,上述程序指令可由软件测试设备800的处理器801执行以完成上述的软件测试方法。
实施例4:
相应于上面的方法实施例,本实施例中还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种软件测试方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的软件测试方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种软件测试方法,其特征在于,包括:
获取待测试软件的测试指标,根据所述测试指标创建所述待测试软件对应的测试指标体系;
建立软件测试分析模型,并根据所述软件测试分析模型对所述测试指标体系中各个指标的权重值进行计算,得到各个所述指标对应数据;
基于对应的所述数据和神经网络算法建立测试数据库模型;
将预设的测试样本输入至所述测试数据库模型中进行模拟运行,得到软件测试结果。
2.根据权利要求1所述的软件测试方法,其特征在于,所述基于对应的所述数据和神经网络算法建立测试数据库模型,包括:
根据所述测试指标体系进行分类,得到分类结果,其中,所述分类结果包括第一类型、第二类型和第三类型;
基于上述第一类型、第二类型和第三类型,构建各个类型之间任意两个类型的层次矩阵;
根据各个所述层次矩阵计算出各个所述层次的单排序权值;
根据所述单排序权值计算各个所述层次中测试指标的最终组合权重值;
根据所述最终组合权重值和粒子群算法对各个神经网络节点的输出值进行优化和迭代,直到各个权值达到预设的精度阈值,得到测试数据库模型。
3.根据权利要求1所述的软件测试方法,其特征在于,所述基于对应的所述数据和神经网络算法建立测试数据库模型,其中包括:
获取第一信息,所述第一信息包括待测试软件对产品进行仿真得到的仿真结果,并对所述仿真结果进行诊断;
获取第二信息,所述第二信息包括获取所述待测试软件的历史产品模型的任务需求,并对所述任务需求生成设计指标;
基于预设的所述神经网络算法、所述设计指标和预设的建模规则,建立测试数据库模型。
4.根据权利要求1所述的软件测试方法,其特征在于,所述将预设的测试样本输入至所述测试数据库模型中进行模拟运行,得到软件测试结果,其中包括:
所述测试数据库模型中包括第一数据库和第二数据库,所述第一数据库用于存储待测试软件在运行过程中需要调用的数据,所述第二数据库用于存储所述待测试软件运行的结果;
调用所述第一数据库,并将运行的所述结果存储在所述第二数据库;
基于预先建立的学习模型,根据所述设计指标生成模型参数,建立软件测试函数,根据所述软件测试函数获取第三信息,所述第三信息包括从所述第二数据库中获得到的所述运行结果;
基于所述软件测试函数,判断所述运行结果是否与预设结果一致;若所述运行结果与所述预设结果一致,则确定所述测试函数测试成功,则输出所述软件测试结果;若所述运行结果与所述预设结果不一致,则确定所述测试函数测试失败,返回上一步骤继续进行测试和调整。
5.一种软件测试装置,其特征在于,包括:
获取模块:用于获取待测试软件的测试指标,根据所述测试指标创建所述待测试软件对应的测试指标体系;
计算模块:用于建立软件测试分析模型,并根据所述软件测试分析模型对所述测试指标体系中各个指标的权重值进行计算,得到各个所述指标对应数据;
建立模块:用于基于对应的所述数据和神经网络算法建立测试数据库模型;
输入模块:用于将预设的测试样本输入至所述测试数据库模型中进行模拟运行,得到软件测试结果。
6.根据权利要求5所述的软件测试装置,其特征在于,所述建立模块,包括:
分类单元:用于根据所述测试指标体系进行分类,得到分类结果,其中,所述分类结果包括第一类型、第二类型和第三类型;
构建单元:用于基于上述第一类型、第二类型和第三类型,构建各个类型之间任意两个类型的层次矩阵;
第一计算单元:用于根据各个所述层次矩阵计算出各个所述层次的单排序权值;
第二计算单元:用于根据所述单排序权值计算各个所述层次中测试指标的最终组合权重值;
优化单元:用于根据所述最终组合权重值和粒子群算法对各个神经网络节点的输出值进行优化和迭代,直到各个权值达到预设的精度阈值,得到测试数据库模型。
7.根据权利要求5所述的软件测试装置,其特征在于,所述建立模块,其中包括:
第一获取单元:用于获取第一信息,所述第一信息包括待测试软件对产品进行仿真得到的仿真结果,并对所述仿真结果进行诊断;
第二获取单元:用于获取第二信息,所述第二信息包括获取所述待测试软件的历史产品模型的任务需求,并对所述任务需求生成设计指标;
第一建立单元:用于基于预设的所述神经网络算法、所述设计指标和预设的建模规则,建立测试数据库模型。
8.根据权利要求5所述的软件测试装置,其特征在于,所述输入模块,其中包括:
存储单元:用于所述测试数据库模型中包括第一数据库和第二数据库,所述第一数据库用于存储待测试软件在运行过程中需要调用的数据,所述第二数据库用于存储所述待测试软件运行的结果;
调用单元:用于调用所述第一数据库,并将运行的所述结果存储在所述第二数据库;
第二建立单元:用于基于预先建立的学习模型,根据所述设计指标生成模型参数,建立软件测试函数;
第三获取单元:用于根据所述软件测试函数获取第三信息,所述第三信息包括从所述第二数据库中获得到的所述运行结果;
判断单元:用于基于所述软件测试函数,判断所述运行结果是否与预设结果一致;若所述运行结果与所述预设结果一致,则确定所述测试函数测试成功,则输出所述软件测试结果;若所述运行结果与所述预设结果不一致,则确定所述测试函数测试失败,返回上一步骤继续进行测试和调整。
9.一种软件测试设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述软件测试方法的步骤。
10.一种可读存储介质,其特征在于:所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述软件测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210801867.1A CN115145817A (zh) | 2022-07-08 | 2022-07-08 | 一种软件测试方法、装置、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210801867.1A CN115145817A (zh) | 2022-07-08 | 2022-07-08 | 一种软件测试方法、装置、设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115145817A true CN115145817A (zh) | 2022-10-04 |
Family
ID=83412419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210801867.1A Withdrawn CN115145817A (zh) | 2022-07-08 | 2022-07-08 | 一种软件测试方法、装置、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115145817A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115617696A (zh) * | 2022-12-14 | 2023-01-17 | 江苏国创新云信息技术服务有限公司 | 软件测试方法、装置、设备和计算机可读存储介质 |
CN116450532A (zh) * | 2023-06-13 | 2023-07-18 | 西安晟昕科技股份有限公司 | 一种计算机软件性能多维测试方法 |
-
2022
- 2022-07-08 CN CN202210801867.1A patent/CN115145817A/zh not_active Withdrawn
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115617696A (zh) * | 2022-12-14 | 2023-01-17 | 江苏国创新云信息技术服务有限公司 | 软件测试方法、装置、设备和计算机可读存储介质 |
CN116450532A (zh) * | 2023-06-13 | 2023-07-18 | 西安晟昕科技股份有限公司 | 一种计算机软件性能多维测试方法 |
CN116450532B (zh) * | 2023-06-13 | 2023-09-05 | 西安晟昕科技股份有限公司 | 一种计算机软件性能多维测试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109408389B (zh) | 一种基于深度学习的代码缺陷检测方法及装置 | |
CN111124840A (zh) | 业务运维中告警的预测方法、装置与电子设备 | |
CN110009171B (zh) | 用户行为模拟方法、装置、设备及计算机可读存储介质 | |
CN115145817A (zh) | 一种软件测试方法、装置、设备及可读存储介质 | |
CN108664690A (zh) | 基于深度信念网络的多应力下长寿命电子器件可靠性寿命评估方法 | |
CN112257963B (zh) | 基于航天软件缺陷数据分布离群点的缺陷预测方法及装置 | |
CN108549817A (zh) | 一种基于文本深度学习的软件安全漏洞预测方法 | |
CN111026664B (zh) | 基于ann的程序检测方法和检测系统及应用 | |
CN112668809B (zh) | 建立自闭症儿童康复效果预测模型的方法 | |
CN111310918B (zh) | 一种数据处理方法、装置、计算机设备及存储介质 | |
Clarke | Improving SLEUTH calibration with a genetic algorithm | |
CN112966109B (zh) | 一种多层级的中文文本的分类方法及其系统 | |
CN116029617B (zh) | 质量验收表单的生成方法、装置、设备及可读存储介质 | |
CN109934352B (zh) | 智能模型的自动进化方法 | |
CN114860617B (zh) | 一种智能压力测试方法及系统 | |
CN115936773A (zh) | 一种互联网金融黑产识别方法与系统 | |
CN112380132B (zh) | 基于航天软件缺陷数据集类不平衡的对抗验证方法及装置 | |
CN115481407A (zh) | 基于大数据服务页面的漏洞挖掘方法及ai漏洞挖掘系统 | |
CN116917910A (zh) | 混合模型制作方法、混合模型制作装置以及程序 | |
CN114037018A (zh) | 医疗数据分类方法、装置、存储介质及电子设备 | |
JP6860602B2 (ja) | 汎用人工知能装置及び汎用人工知能プログラム | |
CN113191527A (zh) | 一种基于预测模型进行人口预测的预测方法及装置 | |
CN110032624A (zh) | 一种样本筛选方法及装置 | |
CN114936158B (zh) | 一种基于图卷积神经网络的软件缺陷定位方法 | |
CN117332090B (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: 20221004 |