应用程序压力测试方法、装置、设备及存储介质制造方法及图纸

技术编号:31242571 阅读:16 留言:0更新日期:2021-12-08 10:36
本发明专利技术涉及人工智能,提供一种应用程序压力测试方法、装置、设备及存储介质。该方法能够获取待测应用程序,检测待测应用程序所属的应用行业,根据待测应用程序及应用行业检测待测应用程序所需的测试线程数量,根据测试线程数量获取多个基本文件,根据测试线程数量创建多个处理线程,多个基本文件的文件名称与多个处理线程的线程名称存在映射关系,基于多个处理线程及映射关系对多个基本文件进行迭代处理,得到每次迭代处理的多个替换文件,基于多个处理线程将每次迭代处理的多个替换文件并发上传至待测应用程序执行测试处理,得到测试结果,能够提高压力测试效率。此外,本发明专利技术还涉及区块链技术,所述测试结果可存储于区块链中。所述测试结果可存储于区块链中。所述测试结果可存储于区块链中。

【技术实现步骤摘要】
应用程序压力测试方法、装置、设备及存储介质


[0001]本专利技术涉及人工智能
,尤其涉及一种应用程序压力测试方法、装置、设备及存储介质。

技术介绍

[0002]为了确保应用程序的性能,通常在应用程序上线前需要对应用程序进行压力测试。压力测试是指通过搭建与实际环境相似的测试环境,在某一段时间内向应用程序发送预期数量的交易请求,以测试出应用程序能够承受的压力情况。
[0003]在对应用程序执行压力测试时,通常需要预先准备大量的文件以供测试,然而,用于压力测试的任意两个文件的文件内容应当不一致,导致在将文件用于测试前需要判断文件内容是否相互重复,进而影响压力测试效率,另外,由于用于测试的文件数量较为庞大,导致准备文件的耗时较长,进一步影响压力测试的效率。此外,大量的测试文件还会占用测试环境的大量存储空间,不利于压力测试。

技术实现思路

[0004]鉴于以上内容,有必要提供一种应用程序压力测试方法、装置、设备及存储介质,能够提高压力测试效率。
[0005]一方面,本专利技术提出一种应用程序压力测试方法,所述应用程序压力测试方法包括:
[0006]获取待测应用程序,并检测所述待测应用程序所属的应用行业;
[0007]根据所述待测应用程序及所述应用行业检测所述待测应用程序所需的测试线程数量;
[0008]根据所述测试线程数量获取多个基本文件,并根据所述测试线程数量创建多个处理线程,所述多个基本文件的文件名称与所述多个处理线程的线程名称存在映射关系;
[0009]基于所述多个处理线程及所述映射关系对所述多个基本文件进行迭代处理,得到每次迭代处理的多个替换文件包括:
[0010]基于所述多个处理线程及所述映射关系获取每个基本文件中的文件信息;
[0011]根据所述文件信息生成所述多个替换文件,并将所述多个替换文件确定为下一次迭代处理的多个基本文件,所述多个替换文件的文件名称与所述多个基本文件的文件名称相同;
[0012]基于所述多个处理线程将每次迭代处理的多个替换文件并发上传至所述待测应用程序执行测试处理,得到所述待测应用程序的测试结果。
[0013]根据本专利技术优选实施例,所述检测所述待测应用程序所属的应用行业包括:
[0014]获取所述待测应用程序中的多个程序模块;
[0015]从所述多个程序模块中提取关键信息;
[0016]根据预设行业遍历所述关键信息,并将与所述关键信息匹配成功的预设行业确定
为多个特征行业;
[0017]统计所述关键信息在每个特征行业中的信息量;
[0018]将所述信息量最大的特征行业确定为所述应用行业。
[0019]根据本专利技术优选实施例,所述根据所述待测应用程序及所述应用行业检测所述待测应用程序所需的测试线程数量包括:
[0020]获取所述待测应用程序的程序版本;
[0021]若所述程序版本不为预设版本,则获取所述待测应用程序的历史版本,并获取所述历史版本在多个预设时段上的历史并发数量;
[0022]根据所述历史并发数量从所述多个预设时段上选取目标时段;
[0023]获取所述应用行业中的多个第一应用程序;
[0024]根据所述目标时段从所述多个第一应用程序的运行日志中提取多个第一并发数量;
[0025]计算所述多个第一并发数量的平均值,并选取最大的历史并发数量作为待比较数量;
[0026]将所述待比较数量与所述平均值进行比较;
[0027]若所述待比较数量小于所述平均值,则计算所述平均值与所述待比较数量的差值在所述平均值上的比值,得到调整比例;
[0028]根据所述调整比例对所述待比较数量进行调整处理,得到所述测试线程数量。
[0029]根据本专利技术优选实施例,若所述程序版本为所述预设版本,所述方法还包括:
[0030]获取所述应用行业中的多个第二应用程序,并获取所述多个第二应用程序中的运行日志作为处理日志;
[0031]基于预设并发统计模型分析每个处理日志,得到多个第二并发数量;
[0032]选取最大的第二并发数量作为特征并发数量;
[0033]计算所述特征并发数量与预设阈值的乘积,得到所述测试线程数量。
[0034]根据本专利技术优选实施例,所述根据所述测试线程数量创建多个处理线程包括:
[0035]获取所述待测应用程序中线程组的最大线程量;
[0036]根据所述测试线程数量及所述最大线程量计算所述待测应用程序所需的测试组数;
[0037]根据所述测试组数创建至少一个目标线程组,并根据所述测试线程数量并行在所述至少一个目标线程组中创建所述多个处理线程。
[0038]根据本专利技术优选实施例,所述基于所述多个处理线程及所述映射关系获取每个基本文件中的文件信息包括:
[0039]对于任一处理线程,根据所述任一处理线程的线程名称从所述映射关系中定位出目标文件名称;
[0040]将所述目标文件名称所对应的基本文件确定为所述任一处理线程的对应文件;
[0041]基于所述任一处理线程获取所述对应文件中的信息作为所述文件信息。
[0042]根据本专利技术优选实施例,所述根据所述文件信息生成所述多个替换文件包括:
[0043]根据下列公式计算所述文件信息,得到与所述文件信息对应的目标信息:
[0044]X(n+1)=(A
×
X(n)+C)%M;
[0045]其中,X(n+1)是指所述目标信息,X(n)是指所述文件信息;
[0046]M>X(0)≥0;A∈(0,M);C∈[0,M);
[0047]将每个基本文件中的文件信息替换为所述目标信息,得到所述多个替换文件。
[0048]另一方面,本专利技术还提出一种应用程序压力测试装置,所述应用程序压力测试装置包括:
[0049]检测单元,用于获取待测应用程序,并检测所述待测应用程序所属的应用行业;
[0050]所述检测单元,还用于根据所述待测应用程序及所述应用行业检测所述待测应用程序所需的测试线程数量;
[0051]创建单元,用于根据所述测试线程数量获取多个基本文件,并根据所述测试线程数量创建多个处理线程,所述多个基本文件的文件名称与所述多个处理线程的线程名称存在映射关系;
[0052]处理单元,用于基于所述多个处理线程及所述映射关系对所述多个基本文件进行迭代处理,得到每次迭代处理的多个替换文件包括:
[0053]基于所述多个处理线程及所述映射关系获取每个基本文件中的文件信息;
[0054]根据所述文件信息生成所述多个替换文件,并将所述多个替换文件确定为下一次迭代处理的多个基本文件,所述多个替换文件的文件名称与所述多个基本文件的文件名称相同;
[0055]测试单元,用于基于所述多个处理线程将每次迭代处理的多个替换文件并发上传至所述待测应用程序执行测试处理,得到所述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种应用程序压力测试方法,其特征在于,所述应用程序压力测试方法包括:获取待测应用程序,并检测所述待测应用程序所属的应用行业;根据所述待测应用程序及所述应用行业检测所述待测应用程序所需的测试线程数量;根据所述测试线程数量获取多个基本文件,并根据所述测试线程数量创建多个处理线程,所述多个基本文件的文件名称与所述多个处理线程的线程名称存在映射关系;基于所述多个处理线程及所述映射关系对所述多个基本文件进行迭代处理,得到每次迭代处理的多个替换文件包括:基于所述多个处理线程及所述映射关系获取每个基本文件中的文件信息;根据所述文件信息生成所述多个替换文件,并将所述多个替换文件确定为下一次迭代处理的多个基本文件,所述多个替换文件的文件名称与所述多个基本文件的文件名称相同;基于所述多个处理线程将每次迭代处理的多个替换文件并发上传至所述待测应用程序执行测试处理,得到所述待测应用程序的测试结果。2.如权利要求1所述的应用程序压力测试方法,其特征在于,所述检测所述待测应用程序所属的应用行业包括:获取所述待测应用程序中的多个程序模块;从所述多个程序模块中提取关键信息;根据预设行业遍历所述关键信息,并将与所述关键信息匹配成功的预设行业确定为多个特征行业;统计所述关键信息在每个特征行业中的信息量;将所述信息量最大的特征行业确定为所述应用行业。3.如权利要求1所述的应用程序压力测试方法,其特征在于,所述根据所述待测应用程序及所述应用行业检测所述待测应用程序所需的测试线程数量包括:获取所述待测应用程序的程序版本;若所述程序版本不为预设版本,则获取所述待测应用程序的历史版本,并获取所述历史版本在多个预设时段上的历史并发数量;根据所述历史并发数量从所述多个预设时段上选取目标时段;获取所述应用行业中的多个第一应用程序;根据所述目标时段从所述多个第一应用程序的运行日志中提取多个第一并发数量;计算所述多个第一并发数量的平均值,并选取最大的历史并发数量作为待比较数量;将所述待比较数量与所述平均值进行比较;若所述待比较数量小于所述平均值,则计算所述平均值与所述待比较数量的差值在所述平均值上的比值,得到调整比例;根据所述调整比例对所述待比较数量进行调整处理,得到所述测试线程数量。4.如权利要求3所述的应用程序压力测试方法,其特征在于,若所述程序版本为所述预设版本,所述方法还包括:获取所述应用行业中的多个第二应用程序,并获取所述多个第二应用程序中的运行日志作为处理日志;基于预设并发统计模型分析每个处理日志,得到多个第二并发数量;选取最大的第二并发数量作为特征并发数量;
计算所述特征并发数量与预设阈值的乘积,得到所述测试线程数量。5.如权利要求4所述的应用程序压力测试方法,其特征在于,所述...

【专利技术属性】
技术研发人员:曾梨平
申请(专利权)人:平安国际智慧城市科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1