CN113821442A - 基于正态分布的压力测试方法、系统、终端及存储介质 - Google Patents
基于正态分布的压力测试方法、系统、终端及存储介质 Download PDFInfo
- Publication number
- CN113821442A CN113821442A CN202111155668.XA CN202111155668A CN113821442A CN 113821442 A CN113821442 A CN 113821442A CN 202111155668 A CN202111155668 A CN 202111155668A CN 113821442 A CN113821442 A CN 113821442A
- Authority
- CN
- China
- Prior art keywords
- variable value
- time
- load
- value
- test
- 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.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 128
- 238000009826 distribution Methods 0.000 title claims abstract description 72
- 238000005315 distribution function Methods 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims abstract description 30
- 230000006870 function Effects 0.000 claims description 43
- 238000012545 processing Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 3
- 230000008676 import Effects 0.000 claims description 3
- 238000010998 test method Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 8
- 238000012795 verification Methods 0.000 abstract description 4
- 230000000694 effects Effects 0.000 abstract description 3
- 230000033772 system development Effects 0.000 abstract description 3
- 230000008859 change Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 239000000306 component Substances 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000008358 core component Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000003245 working effect Effects 0.000 description 1
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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明提供一种基于正态分布的压力测试方法、系统、终端及存储介质,包括:利用正态分布函数根据设定的负载限定参数生成负载变量值;利用正态分布函数根据设定的时间限定参数生成时间变量值;将负载变量值和时间变量值导入测试脚本的相应变量中,并执行所述测试脚本。本发明可以在计算机系统开发过程的测试活动中,采用近似正态分布的方式对测试变量进行设定。从而采用少量的变化,最大程度的模拟计算机系统投入使用后的具体场景,从而确保了对计算机系统稳定性的验证。
Description
技术领域
本发明涉及服务器测试技术领域,具体涉及一种基于正态分布的压力测试方法、系统、终端及存储介质。
背景技术
计算机系统压力测试是验证计算机系统设计稳定性的常规测试手段,目前的测试方法主要是通过各类测试软件对计算机核心部件,如CPU,内存,硬盘等部件,进行长时间的最大化的恒定压力测试,在最大负荷的条件下对计算机系统的恒定状态的稳定性进行验证。计算机系统在最大负荷的条件下恒定状态的稳定性,只属于一种对计算机系统稳定性要求较高的特殊情况。而在计算机系统的实际应用中,问题往往发生在系统负载变化的情况下,例如,从闲置状态或较低的负载状态下,由于业务量的激增,计算机系统负载快速的上升至一个较高的负载状态,这种变化的工作状态比恒定的高负载工作状态,对计算机系统的稳定性是一种更高标准考验。我司对研发质量的要求随着市场规模的扩大日益提高,因此在开发过程中高效的模拟应用场景,对开发过程中的验证工作效果是一种积极的提升。
针对上述问题,现有一种测试方法提出基于Intel的ptugen加压工具,可以动态的指定不同程度的压力为参数,最终实现循环自动对CPU进行不同程度的压力测试,避免了单一的满负载加压测试方法。
然而这种方法将固定的百分比压力状态进行循环读取使用,缺乏随机性,未能充分有效的模拟实际应用场景;将固定的压力运行时间进行循环读取使用,同样缺乏随机性,未能充分有效的模拟实际应用场景;测试过程单一,缺乏多样性。
发明内容
针对现有技术的上述不足,本发明提供一种基于正态分布的压力测试方法、系统、终端及存储介质,以解决上述技术问题。
第一方面,本发明提供一种基于正态分布的压力测试方法,包括:
利用正态分布函数根据设定的负载限定参数生成负载变量值;
利用正态分布函数根据设定的时间限定参数生成时间变量值;
将负载变量值和时间变量值导入测试脚本的相应变量中,并执行所述测试脚本。
进一步的,利用正态分布函数根据设定的负载限定参数生成负载变量值,包括:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均负载强度,所述平均负载强度大于0且小于1,设定1与所述平均负载强度的差值为标准差;
调用正太分布函数基于分布概率、平均负载强度和标准差生成初始负载变量值;
利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1;
将处理后的初始负载变量值以小数点后一位做向上取值,并用初始负载变量值的取值乘以100%,得到负载变量值数组。
进一步的,利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1,包括:
如果初始负载变量值大于1,则以1为轴将所述初始负载变量值反转;如果初始负载变量值小于0,则以0为轴将所述初始负载变量值反转。
进一步的,利用正态分布函数根据设定的时间限定参数生成时间变量值,包括:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均时长,设定标准差的值与平均时长相等;
调用正太分布函数基于分布概率、平均时长和标准差生成初始时间变量值;
利用逻辑判断函数对初始时间变量值进行处理以使初始负载变量值大于0且小于平均时长的两倍,得到服从正太分布的时间序列;
从所述时间序列依次取值,并将取值作为时间变量值。
进一步的,所述方法还包括:
累计每次执行的测试脚本的时间变量值,得到累计测试时长;
判断所述累计测试时长是否达到设定的测试时长:
若是,则终止测试并输出测试日志;
若否,则更新所述测试脚本的负载变量值和时间变量值,并执行所述测试脚本。
第二方面,本发明提供一种基于正态分布的压力测试系统,包括:
第一生成单元,用于利用正态分布函数根据设定的负载限定参数生成负载变量值;
第二生成单元,用于利用正态分布函数根据设定的时间限定参数生成时间变量值;
变量导入单元,用于将负载变量值和时间变量值导入测试脚本的相应变量中,并执行所述测试脚本。
进一步的,所述第一生成单元用于:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均负载强度,所述平均负载强度大于0且小于1,设定1与所述平均负载强度的差值为标准差;
调用正太分布函数基于分布概率、平均负载强度和标准差生成初始负载变量值;
利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1;
将处理后的初始负载变量值以小数点后一位做向上取值,并用初始负载变量值的取值乘以100%,得到负载变量值数组。
进一步的,利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1,包括:
如果初始负载变量值大于1,则以1为轴将所述初始负载变量值反转;如果初始负载变量值小于0,则以0为轴将所述初始负载变量值反转。
进一步的,第二生成单元用于:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均时长,设定标准差的值与平均时长相等;
调用正太分布函数基于分布概率、平均时长和标准差生成初始时间变量值;
利用逻辑判断函数对初始时间变量值进行处理以使初始负载变量值大于0且小于平均时长的两倍,得到服从正太分布的时间序列;
从所述时间序列依次取值,并将取值作为时间变量值。
进一步的,所述系统还用于:
累计每次执行的测试脚本的时间变量值,得到累计测试时长;
判断所述累计测试时长是否达到设定的测试时长:
若是,则终止测试并输出测试日志;
若否,则更新所述测试脚本的负载变量值和时间变量值,并执行所述测试脚本。
第三方面,提供一种终端,包括:
处理器、存储器,其中,
该存储器用于存储计算机程序,
该处理器用于从存储器中调用并运行该计算机程序,使得终端执行上述的终端的方法。
第四方面,提供了一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。
本发明的有益效果在于,本发明提供的基于正态分布的压力测试方法、系统、终端及存储介质,通过利用正态分布函数根据设定的负载限定参数生成负载变量值,并利用正态分布函数根据设定的时间限定参数生成时间变量值,然后将负载变量值和时间变量值导入测试脚本的相应变量中,使测试脚本的两个变量均服从正太分布,执行测试脚本即可在模拟真实使用场景下获得测试结果。本发明可以在计算机系统开发过程的测试活动中,采用近似正态分布的方式对测试变量进行设定。从而采用少量的变化,最大程度的模拟计算机系统投入使用后的具体场景,从而确保了对计算机系统稳定性的验证。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的方法的示意性流程图。
图2是本发明一个实施例的方法的另一示意性流程图。
图3是本发明一个实施例的系统的示意性框图。
图4为本发明实施例提供的一种终端的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
下面对本发明中出现的关键术语进行解释。
正态分布(Normal distribution),也称“常态分布”,又名高斯分布(Gaussiandistribution),最早由棣莫弗(Abraham de Moivre)在求二项分布的渐近公式中得到。C.F.高斯在研究测量误差时从另一个角度导出了它。P.S.拉普拉斯和高斯研究了它的性质。是一个在数学、物理及工程等领域都非常重要的概率分布,在统计学的许多方面有着重大的影响力。正态曲线呈钟型,两头低,中间高,左右对称因其曲线呈钟形,因此人们又经常称之为钟形曲线。若随机变量X服从一个数学期望为μ、方差为σ2的正态分布,记为N(μ,σ2)。其概率密度函数为正态分布的期望值μ决定了其位置,其标准差σ决定了分布的幅度。当μ=0,σ=1时的正态分布是标准正态分布。正态分布是连续随机变量概率分布的一种,自然界、人类社会、心理和教育中大量现象均按正态形式分布。因此可以大致推断,计算机系统在实际应用中的负载状态也是服从正态分布的。
混合随机数生成器是组合多个独立的随机数生成器以生成周期更长、统计性质更优的随机数的方法。通常先将一个随机数生成器产生的随机数列作为基础,再用另一个生成器对随机数列进行重新排列,将得到的新数列作为实际使用的随机数。最早的混合随机数生成器出现于1965年,这种算法的基本思想是用第二个线性同余生成器“搅乱”由第一个线性同余生成器产生的随机数。伪随机数是用确定性的算法计算出来的似来自[0,1]均匀分布的随机数序列。并不真正的随机,但具有类似于随机数的统计特征,如均匀性、独立性等。在计算伪随机数时,若使用的初值(种子)不变,那么伪随机数的数序也不变。伪随机数可以用计算机大量生成,在模拟研究中为了提高模拟效率,一般采用伪随机数代替真正的随机数。模拟中使用的一般是循环周期极长并能通过随机数检验的伪随机数,以保证计算结果的随机性。
IF函数一般是指程序设计或Excel等软件中的条件函数,根据指定的条件来判断其“真”(TRUE)、“假”(FALSE),根据逻辑计算的真假值,从而返回相应的内容。可以使用函数IF对数值和公式进行条件检测。IF函数是条件判断函数:如果指定条件的计算结果为TRUE,IF函数将返回某个值;如果该条件的计算结果为FALSE,则返回另一个值。例如IF(测试条件,结果1,结果2),即如果满足“测试条件”则显示“结果1”,如果不满足“测试条件”则显示“结果2”。
图1是本发明一个实施例的方法的示意性流程图。其中,图1执行主体可以为一种基于正态分布的压力测试系统。
如图1所示,该方法包括:
步骤110,利用正态分布函数根据设定的负载限定参数生成负载变量值;
步骤120,利用正态分布函数根据设定的时间限定参数生成时间变量值;
步骤130,将负载变量值和时间变量值导入测试脚本的相应变量中,并执行所述测试脚本。
在具体测试时,安装配置测试工具;通过随机数字(服从近似正态分布)生成程序生成变量p,作为压力测试的负载强度的变量;通过随机数字(服从近似正态分布)生成程序生成变量t,作为压力测试的时间长度的变量;通过测试脚本利用上述变量进行系统压力测试,压力测试时间为t;在时间变量t结束之后,将t累计入T,当T小于系统压力测试期望的总时间T0时,再次循环执行步骤1,2,进行下一次的系统压力测试。当T大于系统压力测试期望的总时间时,完成测试。
为了便于对本发明的理解,下面以本发明基于正态分布的压力测试方法的原理,结合实施例中对服务器进行随机压力测试的过程,对本发明提供的基于正态分布的压力测试方法做进一步的描述。
具体的,请参考图2,所述基于正态分布的压力测试方法包括:
S1、利用正态分布函数根据设定的负载限定参数生成负载变量值。
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;设定平均负载强度,所述平均负载强度大于0且小于1,设定1与所述平均负载强度的差值为标准差;调用正太分布函数基于分布概率、平均负载强度和标准差生成初始负载变量值;利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1;如果初始负载变量值大于1,则以1为轴将所述初始负载变量值反转;如果初始负载变量值小于0,则以0为轴将所述初始负载变量值反转。将处理后的初始负载变量值以小数点后一位做向上取值,并用初始负载变量值的取值乘以100%,得到负载变量值数组。
具体的,生成随机数据,并映射为变量p.下面以在excel中为例,详细说明如何生成一组随机的且服从近似正态分布,并且适用于系统压力测试强度的随机数据。
使用Rand()函数,生成0,1之间的随机数,作为待生成变量的分布概率ρ;
使用NORM.INV()函数,利用以下三个参数,生成服从近似正态分布的变量P:
参数1:第一步生成的变量概率ρ;
参数2:根据日常应用习惯设定的日常平均负载强度PA,此PA可以根据不同的计算机使用习惯进行设定,范围在0~1之间,间隔0.1选取;
参数3:标准差σ,为了确保数组大部分可用(在0~1之间),可以覆盖至100%的负载强度,近似选择标准差=1-PA;
利用IF函数,对变量P进行处理,将超出0,1范围的数据,做处理,大于1的以1为轴向内反转,小于0的以0为轴向内反转。这样设定,根据正态分布的特性,绝大部分数据是0~1之间的数值;
将上述生成的数值以小数点后一位做向上取值,之后乘以100%,转化为脚本可用的变量,也就是10%~100%,间隔为10%的随机数组,且此随机数组服从近似正态分布。至此,可以得到即将测试使用的变量p。依次从变量p中取值,即可得到系统压力强度P。
S2、利用正态分布函数根据设定的时间限定参数生成时间变量值。
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;设定平均时长,设定标准差的值与平均时长相等;调用正太分布函数基于分布概率、平均时长和标准差生成初始时间变量值;利用逻辑判断函数对初始时间变量值进行处理以使初始负载变量值大于0且小于平均时长的两倍,得到服从正太分布的时间序列;从所述时间序列依次取值,并将取值作为时间变量值。
具体的,生成随机数据,并映射为变量t。下面以在excel中为例,详细说明如何生成一组随机的且服从近似正态分布,并且适用于系统压力测试时间长度的随机数据。
使用Rand()函数,生成0,1之间的随机数,作为待生成变量的概率ρ;
使用NORM.INV()函数,利用以下三个参数,生成服从近似正态分布的变量T
变量1:第一步生成的变量概率ρ;
变量2:时长TA设置为60,以便每次测试的平均时间为60分钟;
变量3:近似选择标准差60,近似将单次时长最大值设定在两小时;
利用IF函数,对变量P进行处理,将超出0,120范围的数据,做处理,大于120的以120为轴向内反转,小于0的以0为轴向内反转;做向上取整处理,至此,可以获得1~120之间,且服从近似正态分布的整数序列;
在序列中依次取值,即可得到系统压力测试可用的时间变量t。
S3、将负载变量值和时间变量值导入测试脚本的相应变量中,并执行所述测试脚本。
将负载变量值p和时间变量值t导入测试脚本,执行测试脚本后测试脚本通过发送大量请求将系统负载调至负载变量值p,待该种压力状态的持续时间达到时间变量值t时,停止测试,并输出此期间生成的测试日志。
累计每次执行的测试脚本的时间变量值,得到累计测试时长;判断所述累计测试时长是否达到设定的测试时长:若是,则终止测试并输出测试日志;若否,则更新所述测试脚本的负载变量值和时间变量值,并执行所述测试脚本。具体的,累加依次取值并进行系统压力测试使用的变量t得到测试时长T。在每一次测试时长t之后(单次系统压力测试完成),将测试时长T与预设测试总时长T0进行比对,当T小于T0时,再次进行上述取值操作进入下一次系统压力测试。当T大于等于T0时,测试结束,进行结果检查。
如图3所示,该系统300包括:
第一生成单元310,用于利用正态分布函数根据设定的负载限定参数生成负载变量值;
第二生成单元320,用于利用正态分布函数根据设定的时间限定参数生成时间变量值;
变量导入单元330,用于将负载变量值和时间变量值导入测试脚本的相应变量中,并执行所述测试脚本。
可选地,作为本发明一个实施例,所述第一生成单元用于:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均负载强度,所述平均负载强度大于0且小于1,设定1与所述平均负载强度的差值为标准差;
调用正太分布函数基于分布概率、平均负载强度和标准差生成初始负载变量值;
利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1;
将处理后的初始负载变量值以小数点后一位做向上取值,并用初始负载变量值的取值乘以100%,得到负载变量值数组。
可选地,作为本发明一个实施例,利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1,包括:
如果初始负载变量值大于1,则以1为轴将所述初始负载变量值反转;如果初始负载变量值小于0,则以0为轴将所述初始负载变量值反转。
可选地,作为本发明一个实施例,第二生成单元用于:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均时长,设定标准差的值与平均时长相等;
调用正太分布函数基于分布概率、平均时长和标准差生成初始时间变量值;
利用逻辑判断函数对初始时间变量值进行处理以使初始负载变量值大于0且小于平均时长的两倍,得到服从正太分布的时间序列;
从所述时间序列依次取值,并将取值作为时间变量值。
可选地,作为本发明一个实施例,所述系统还用于:
累计每次执行的测试脚本的时间变量值,得到累计测试时长;
判断所述累计测试时长是否达到设定的测试时长:
若是,则终止测试并输出测试日志;
若否,则更新所述测试脚本的负载变量值和时间变量值,并执行所述测试脚本。
图4为本发明实施例提供的一种终端400的结构示意图,该终端400可以用于执行本发明实施例提供的基于正态分布的压力测试方法。
其中,该终端400可以包括:处理器410、存储器420及通信单元430。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
其中,该存储器420可以用于存储处理器410的执行指令,存储器420可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。当存储器420中的执行指令由处理器410执行时,使得终端400能够执行以下上述方法实施例中的部分或全部步骤。
处理器410为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(Integrated Circuit,简称IC)组成,例如可以由单颗封装的IC所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器410可以仅包括中央处理器(Central Processing Unit,简称CPU)。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
通信单元430,用于建立通信信道,从而使所述存储终端可以与其它终端进行通信。接收其他终端发送的用户数据或者向其他终端发送用户数据。
本发明还提供一种计算机存储介质,其中,该计算机存储介质可存储有程序,该程序执行时可包括本发明提供的各实施例中的部分或全部步骤。所述的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random access memory,简称:RAM)等。
因此,本发明通过利用正态分布函数根据设定的负载限定参数生成负载变量值,并利用正态分布函数根据设定的时间限定参数生成时间变量值,然后将负载变量值和时间变量值导入测试脚本的相应变量中,使测试脚本的两个变量均服从正太分布,执行测试脚本即可在模拟真实使用场景下获得测试结果。本发明可以在计算机系统开发过程的测试活动中,采用近似正态分布的方式对测试变量进行设定。从而采用少量的变化,最大程度的模拟计算机系统投入使用后的具体场景,从而确保了对计算机系统稳定性的验证,本实施例所能达到的技术效果可以参见上文中的描述,此处不再赘述。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。
本说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于终端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种基于正态分布的压力测试方法,其特征在于,包括:
利用正态分布函数根据设定的负载限定参数生成负载变量值;
利用正态分布函数根据设定的时间限定参数生成时间变量值;
将负载变量值和时间变量值导入测试脚本的相应变量中,并执行所述测试脚本。
2.根据权利要求1所述的方法,其特征在于,利用正态分布函数根据设定的负载限定参数生成负载变量值,包括:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均负载强度,所述平均负载强度大于0且小于1,设定1与所述平均负载强度的差值为标准差;
调用正太分布函数基于分布概率、平均负载强度和标准差生成初始负载变量值;
利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1;
将处理后的初始负载变量值以小数点后一位做向上取值,并用初始负载变量值的取值乘以100%,得到负载变量值数组。
3.根据权利要求2所述的方法,其特征在于,利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1,包括:
如果初始负载变量值大于1,则以1为轴将所述初始负载变量值反转;如果初始负载变量值小于0,则以0为轴将所述初始负载变量值反转。
4.根据权利要求1所述的方法,其特征在于,利用正态分布函数根据设定的时间限定参数生成时间变量值,包括:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均时长,设定标准差的值与平均时长相等;
调用正太分布函数基于分布概率、平均时长和标准差生成初始时间变量值;
利用逻辑判断函数对初始时间变量值进行处理以使初始负载变量值大于0且小于平均时长的两倍,得到服从正太分布的时间序列;
从所述时间序列依次取值,并将取值作为时间变量值。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
累计每次执行的测试脚本的时间变量值,得到累计测试时长;
判断所述累计测试时长是否达到设定的测试时长:
若是,则终止测试并输出测试日志;
若否,则更新所述测试脚本的负载变量值和时间变量值,并执行所述测试脚本。
6.一种基于正态分布的压力测试系统,其特征在于,包括:
第一生成单元,用于利用正态分布函数根据设定的负载限定参数生成负载变量值;
第二生成单元,用于利用正态分布函数根据设定的时间限定参数生成时间变量值;
变量导入单元,用于将负载变量值和时间变量值导入测试脚本的相应变量中,并执行所述测试脚本。
7.根据权利要求6所述的系统,其特征在于,所述第一生成单元用于:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均负载强度,所述平均负载强度大于0且小于1,设定1与所述平均负载强度的差值为标准差;
调用正太分布函数基于分布概率、平均负载强度和标准差生成初始负载变量值;
利用逻辑判断函数对初始负载变量值进行处理以使初始负载变量值大于0且小于1;
将处理后的初始负载变量值以小数点后一位做向上取值,并用初始负载变量值的取值乘以100%,得到负载变量值数组。
8.根据权利要求6所述的系统,其特征在于,所述第二生成单元用于:
利用随机数生成函数生成大于0且小于1的随机数,并将所述随机数作为分布概率;
设定平均时长,设定标准差的值与平均时长相等;
调用正太分布函数基于分布概率、平均时长和标准差生成初始时间变量值;
利用逻辑判断函数对初始时间变量值进行处理以使初始负载变量值大于0且小于平均时长的两倍,得到服从正太分布的时间序列;
从所述时间序列依次取值,并将取值作为时间变量值。
9.一种终端,其特征在于,包括:
处理器;
用于存储处理器的执行指令的存储器;
其中,所述处理器被配置为执行权利要求1-5任一项所述的方法。
10.一种存储有计算机程序的计算机可读存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111155668.XA CN113821442B (zh) | 2021-09-29 | 2021-09-29 | 基于正态分布的压力测试方法、系统、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111155668.XA CN113821442B (zh) | 2021-09-29 | 2021-09-29 | 基于正态分布的压力测试方法、系统、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113821442A true CN113821442A (zh) | 2021-12-21 |
CN113821442B CN113821442B (zh) | 2023-08-08 |
Family
ID=78915954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111155668.XA Active CN113821442B (zh) | 2021-09-29 | 2021-09-29 | 基于正态分布的压力测试方法、系统、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113821442B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625469A (zh) * | 2020-06-11 | 2020-09-04 | 深圳前海微众银行股份有限公司 | 压力测试方法、装置、设备及计算机可读存储介质 |
CN111966549A (zh) * | 2020-08-19 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 服务器的cpu压力测试方法、装置及计算机可读存储介质 |
-
2021
- 2021-09-29 CN CN202111155668.XA patent/CN113821442B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111625469A (zh) * | 2020-06-11 | 2020-09-04 | 深圳前海微众银行股份有限公司 | 压力测试方法、装置、设备及计算机可读存储介质 |
CN111966549A (zh) * | 2020-08-19 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 服务器的cpu压力测试方法、装置及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113821442B (zh) | 2023-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245366B (zh) | 动态功耗估计方法、装置及系统 | |
CN111563077B (zh) | 一种电网电压数据缺失填补方法、系统、终端及存储介质 | |
CN110557299A (zh) | 一种网络传输功能批量测试方法、系统、终端及存储介质 | |
CN113936192A (zh) | 配电网同步量测缺失数据修复方法、终端及存储介质 | |
CN114004352A (zh) | 一种仿真实现方法、神经网络编译器以及计算机可读存储介质 | |
Longo et al. | How low can you go? Using side-channel data to enhance brute-force key recovery | |
CN113821442A (zh) | 基于正态分布的压力测试方法、系统、终端及存储介质 | |
CN113760187A (zh) | 基于vdbench的重删IO线程生成方法、系统、终端及存储介质 | |
CN111859424B (zh) | 物理管理平台的数据加密方法、系统、终端及存储介质 | |
Ozawa et al. | How do software metrics affect test case prioritization? | |
CN113419706A (zh) | 一种快速的任意分布随机数产生方法、系统及其检验方法、系统 | |
CN113408239A (zh) | Pcb插损阻抗测试分析方法、系统、终端及存储介质 | |
CN110175096B (zh) | 一种gpu加压测试方法、系统、终端及存储介质 | |
Smith et al. | Methodology for simulated power analysis attacks on aes | |
CN111124854A (zh) | 一种冒烟测试用例分配方法、系统、终端及存储介质 | |
CN109634560A (zh) | 随机数生成方法、装置及存储介质 | |
Santoso et al. | Real-time software testing for microprocessor-based protective relays | |
CN117112847B (zh) | 一种基于社区模型的图数据库的数据生成方法及装置 | |
JP5804492B2 (ja) | リスク管理装置 | |
CN116544999B (zh) | 储能系统的装机容量确定方法、装置、设备和介质 | |
CN110928788B (zh) | 服务验证方法及设备 | |
CN111985648B (zh) | 一种硬盘性能测试方案生成方法、系统、终端及存储介质 | |
CN111258912B (zh) | 一种页面测试方法、装置、终端及存储介质 | |
CN111984512B (zh) | 存储系统资源竞态模拟测试方法、系统、终端及存储介质 | |
Alimi et al. | Simulation-based verification of large-integer arithmetic circuits |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |