CN114461534A - 软件性能测试方法、***、电子设备及可读存储介质 - Google Patents

软件性能测试方法、***、电子设备及可读存储介质 Download PDF

Info

Publication number
CN114461534A
CN114461534A CN202210246749.9A CN202210246749A CN114461534A CN 114461534 A CN114461534 A CN 114461534A CN 202210246749 A CN202210246749 A CN 202210246749A CN 114461534 A CN114461534 A CN 114461534A
Authority
CN
China
Prior art keywords
test
environment
software
data
performance
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
Application number
CN202210246749.9A
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.)
Zhejiang Geely Holding Group Co Ltd
Guangyu Mingdao Digital Technology Co Ltd
Original Assignee
Zhejiang Geely Holding Group Co Ltd
Guangyu Mingdao Digital 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 Zhejiang Geely Holding Group Co Ltd, Guangyu Mingdao Digital Technology Co Ltd filed Critical Zhejiang Geely Holding Group Co Ltd
Priority to CN202210246749.9A priority Critical patent/CN114461534A/zh
Publication of CN114461534A publication Critical patent/CN114461534A/zh
Pending 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/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • 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/3688Test management for test execution, e.g. scheduling of test suites
    • 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/3692Test management for test results analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及软件测试技术领域,公开了一种软件性能测试方法、***、电子设备及可读存储介质,该方法通过获取待测软件对应的性能测试任务和待比对数据,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,根据性能测试任务对待测软件进行性能测试,得到当前测试数据,并对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告,通过自动化检测待测软件的当前测试环境是否满足测试条件,并在满足测试条件的情况下进行性能测试,并自动化分析测试得到的当前测试数据,并生成性能测试包括,相较于通过人工进行环境巡检和结果分析,整个测试过程不需要人工参与,提高了软件测试效率。

Description

软件性能测试方法、***、电子设备及可读存储介质
技术领域
本发明涉及软件测试技术领域,尤其涉及一种软件性能测试方法、***、电子设备及可读存储介质。
背景技术
随着软件开发技术的逐渐成熟,现代应用软件的复杂性也正在爆发。软件应用可以使用数十和数百种组件完成曾经使用纸张或手工的工作,但是其复杂性直接导致业务过程中出现更多的潜在故障点,从而使分析问题的根源更为困难。性能测试,简单通俗来讲就是测试应用在服务端的具体性能体现,通过严格的测试对于量化和降低业务风险是最常用的策略,使得公司可以在投入运行之前检验应用是否满足业务需求,量化最终用户体验的变化的影响,并且快速分析和解决发生故障的组件,因而在部署时就较少出现意外,不仅能够为企业节省硬件成本,而且能够避免功能在大并发时出现bug给公司造成损失,以保证程序在定量的并发下保证程序稳定运行,避免程序宕机给公司造成巨大损失。
目前,随着软件***的自动化性能测试的需求逐渐提高,大部分步骤能够沿用性能测试工具按一定的配置自动化执行,部分步骤可以接入研发软件测试流水线,基本流程通常包含了制定测试计划,分析测试需求,搭建测试环境,设计性能测试脚本,执行测试脚本,分析诊断性能测试结果等多个步骤。其中,由于测试环境(包括数据库环境、服务器环境等)的优劣对自动化性能测试的测试结果影响巨大,因此,需要在自动化性能测试之前进行测试环境的检测,进而在符合标准的测试环境中进行自动化性能测试。但是,由于测试环境缺乏自动化方法,需要人为介入,导致测试环境的检测速度慢,从而使得软件测试效率较低。
发明内容
为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
鉴于以上所述现有技术的缺点,本发明公开了一种软件性能测试方法、***、电子设备及可读存储介质,以提高软件测试效率。
本发明公开了一种软件性能测试方法,包括:获取待测软件对应的性能测试任务和待比对数据,所述待比对数据包括所述待测软件的历史测试数据和性能指标阈值中的至少一种;对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件;若所述环境检测结果满足测试条件,则根据所述性能测试任务对所述待测软件进行性能测试,得到当前测试数据;对所述当前测试数据与所述待比对数据进行比较,并根据比较结果生成所述待测软件的性能测试报告。
可选地,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,包括:对当前测试环境所对应的环境测试项进行检测,得到环境测试项对应的一个或多个环境参数;获取各所述环境参数对应的参数权重和参数阈值区间;根据所述环境参数、所述参数权重和所述参数阈值区间确定所述当前测试环境的环境评分;根据所述环境评分与预设评分阈值之间的比较结果判断环境检测结果是否满足测试条件。
可选地,通过以下公式确定所述当前测试环境的测试环境评分:
Figure BDA0003545048170000021
式中,Score为所述当前测试环境的环境评分,n为环境参数的数量,pi为第i个环境参数,
Figure BDA0003545048170000022
为第i个环境参数对应的参数阈值区间中的最大值,
Figure BDA0003545048170000023
为第i个环境参数对应的参数阈值区间中的最小值,wi为第i个环境参数对应的参数权重,α为预设放大指数。
可选地,根据所述环境评分与预设评分阈值之间的比较结果判断环境检测结果是否满足测试条件之后,所述方法还包括:若环境检测结果不满足测试条件,将所述环境参数与对应的参数阈值区间进行比较,得到环境参数结果,其中,所述环境参数结果包括大于所述参数阈值区间的最大值、小于所述参数阈值区间的最小值和介于所述参数阈值区间之间;基于所述环境参数对应的环境参数结果获取对应的测试环境改善建议,并展示所述测试环境改善建议;获取所述测试环境改善建议对应的用户选择信息,并根据所述用户选择信息从所述测试环境改善建议中确定目标修改建议;根据所述目标修改建议对所述当前测试环境进行参数修改。
可选地,根据所述性能测试任务对所述待测软件进行性能测试,得到当前测试数据,包括:所述性能测试任务包括一个或多个测试场景参数,以及各所述测试场景参数对应的测试工具和测试步骤;分别获取各所述测试场景参数对应的测试场景;在各所述测试场景中,调用所述测试场景对应的测试工具,并按照所述测试场景对应的测试步骤对所述待测软件进行仿真运行;在所述仿真运行中,对待测软件对应的测试采集项进行监控,得到监控数据,并对所述测试场景对应的场景采集项进行数据采集,得到场景性能数据;将各所述测试场景对应的监控数据和场景性能数据确定为当前测试数据。
可选地,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件之后,所述方法还包括以下至少一种:若所述环境检测结果不满足测试条件,提醒测试环境未通过;若所述环境检测结果不满足测试条件,停止针对所述待测软件的软件性能测试。
可选地,对所述当前测试数据与所述待比对数据进行比较,并根据比较结果生成所述待测软件的性能测试报告,包括:若所述待比对数据为所述历史测试数据,获取所述当前测试数据与所述历史测试数据之间的比较结果,根据所述比较结果生成性能变化趋势图;若所述待比对数据为所述性能指标阈值,根据所述当前测试数据与所述性能指标阈值之间的比较结果判断所述当前测试数据是否达标,得到所述待测软件的达标结果;根据所述性能变化趋势图和所述达标结果生成所述待测软件的性能测试报告。
本发明公开了一种软件性能测试***,包括:获取模块,用于获取待测软件对应的性能测试任务和待比对数据,所述待比对数据包括所述待测软件的历史测试数据和性能指标阈值中的至少一种;环境检测模块,用于对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件;软件检测模块,用于若所述环境检测结果满足测试条件,则根据所述性能测试任务对所述待测软件进行性能测试,得到当前测试数据;生成模块,用于对所述当前测试数据与所述待比对数据进行比较,并根据比较结果生成所述待测软件的性能测试报告
本发明公开了一种电子设备,包括:处理器及存储器;所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述电子设备执行上述的方法。
本发明公开了一种计算机可读存储介质,其上存储有计算机程序:所述计算机程序被处理器执行时实现上述的方法。
本发明的有益效果:
通过获取待测软件对应的性能测试任务和待比对数据,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,若环境检测结果满足测试条件,则根据性能测试任务对待测软件进行性能测试,得到当前测试数据,并对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告。这样,自动化检测待测软件的当前测试环境是否满足测试条件,并在满足测试条件的情况下进行性能测试,并自动化分析测试得到的当前测试数据,并生成性能测试包括,相较于通过人工进行环境巡检和结果分析,整个测试过程不需要人工参与,提高了软件测试效率。
附图说明
图1是本发明实施例中一个软件性能测试方法的流程示意图;
图2是本发明实施例中另一个软件性能测试方法的流程示意图;
图3是本发明实施例中一个软件性能测试***的结构示意图;
图4是本发明实施例中一个电子设备的结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的子样本可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
在下文描述中,探讨了大量细节,以提供对本发明实施例的更透彻的解释,然而,对本领域技术人员来说,可以在没有这些具体细节的情况下实施本发明的实施例是显而易见的,在其他实施例中,以方框图的形式而不是以细节的形式来示出公知的结构和设备,以避免使本发明的实施例难以理解。
本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
除非另有说明,术语“多个”表示两个或两个以上。
本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
结合图1所示,本公开实施例提供了一种软件性能测试方法,包括:
步骤S101,获取待测软件对应的性能测试任务和待比对数据;
其中,待比对数据包括待测软件的历史测试数据和性能指标阈值中的至少一种;
步骤S102,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件;
步骤S103,若环境检测结果满足测试条件,则根据性能测试任务对待测软件进行性能测试,得到当前测试数据;
步骤S104,对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告。
采用本发明公开的软件性能测试方法,通过获取待测软件对应的性能测试任务和待比对数据,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,若环境检测结果满足测试条件,则根据性能测试任务对待测软件进行性能测试,得到当前测试数据,并对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告。这样,自动化检测待测软件的当前测试环境是否满足测试条件,并在满足测试条件的情况下进行性能测试,并自动化分析测试得到的当前测试数据,并生成性能测试包括,相较于通过人工进行环境巡检和结果分析,整个测试过程不需要人工参与,提高了软件测试效率。
可选地,获取待测软件对应的性能测试任务和待比对数据之前,该方法还包括以下至少一种:开发性能测试脚本,得到性能测试任务,其中,将性能测试脚本存储在代码管理仓库,代码管理仓库包括Gitlab;创建软件测试流水线,并在软件测试流水线中配置性能指标阈值、告警通知规则。
可选地,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,包括:对当前测试环境所对应的环境测试项进行检测,得到环境测试项对应的一个或多个环境参数;获取各环境参数对应的参数权重和参数阈值区间;根据环境参数、参数权重和参数阈值区间确定当前测试环境的环境评分;根据环境评分与预设评分阈值之间的比较结果判断环境检测结果是否满足测试条件。这样,保证了本次性能测试的有效性,使得测试结果更具有参考意义。
可选地,通过服务器巡检工具对当前测试环境所对应的环境测试项进行检测,其中,服务器巡检工具还用于配置环境测试项、根据预设数据库表格统计相关表数据。
可选地,环境测试项包括服务CPU的当前使用情况、内存的当前使用情况、网络带宽的当前使用情况等中的一种或多种。
在一些实施例中,对需要巡检的项目做实时检测,当巡检结果满足性能测试执行条件时,软件测试流水线才会自动执行性能测试,否则软件测试流水线发出告警并终止性能测试任务,这样保证了本次性能测试的有效性。
可选地,通过以下公式确定当前测试环境的测试环境评分:
Figure BDA0003545048170000061
式中,Score为当前测试环境的环境评分,n为环境参数的数量,pi为第i个环境参数,
Figure BDA0003545048170000062
为第i个环境参数对应的参数阈值区间中的最大值,
Figure BDA0003545048170000063
为第i个环境参数对应的参数阈值区间中的最小值,wi为第i个环境参数对应的参数权重,α为预设放大指数。
可选地,预设放大指数介于0.5-10之间,通常为0.5。
可选地,根据环境评分与预设评分阈值之间的比较结果判断环境检测结果是否满足测试条件之后,方法还包括:若环境检测结果不满足测试条件,将环境参数与对应的参数阈值区间进行比较,得到环境参数结果,其中,环境参数结果包括大于参数阈值区间的最大值、小于参数阈值区间的最小值和介于参数阈值区间之间;基于环境参数对应的环境参数结果获取对应的测试环境改善建议,并展示测试环境改善建议;获取测试环境改善建议对应的用户选择信息,并根据用户选择信息从测试环境改善建议中确定目标修改建议;根据目标修改建议对当前测试环境进行参数修改。这样,通过环境参数与参数阈值区间之间的比较结果提供改善建议,并根据用户选择信息确定目标修改建议,以优化当前测试环境,不需要人工参与,提高测试环境的优化速度,提高测试可靠性的同时提高了测试效率。
可选地,测试环境改善建议包括关闭目标线程、重置环境参数等中的至少一种。
可选地,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件之后,方法还包括以下至少一种:若环境检测结果不满足测试条件,提醒测试环境未通过;若环境检测结果不满足测试条件,停止针对待测软件的软件性能测试。
这样,在性能测试执行之前对测试环境进行巡检,能够确认本次性能测试有效性,根据性能测试场景配置需要巡检的内容,在性能测试过程中各种监控数据,并将监控数据按照一定格式进行提取保存并对测试结果进行分析,在软件测试流水线中设定本次性能测试核心指标阈值,根据已保存的监控数据与核心指标进行对比。并且,也可以对比历史版本测试基线,分析迭代过程中性能测试结果趋势,进而对于有一定异常的测试结果,通过配置的关系人邮箱进行告警,在提高了软件测试效率的同时,使得联系人尽早识别性能测试风险。
可选地,根据性能测试任务对待测软件进行性能测试,得到当前测试数据,包括:性能测试任务包括一个或多个测试场景参数,以及各测试场景参数对应的测试工具和测试步骤;分别获取各测试场景参数对应的测试场景;在各测试场景中,调用测试场景对应的测试工具,并按照测试场景对应的测试步骤对待测软件进行仿真运行;在仿真运行中,对待测软件对应的测试采集项进行监控,得到监控数据,并对测试场景对应的场景采集项进行数据采集,得到场景性能数据;将各测试场景对应的监控数据和场景性能数据确定为当前测试数据。
可选地,通过PaaS平台对待测软件对应的测试采集项进行监控,得到监控数据,其中,检测数据包括服务器资源使用情况、网络吞吐数据、JVM数据等中的一种或多种。这样,借助PaaS平台强大的监控体系,无需额外增加监控,同时可以将采集的性能指标按需提取,配置灵活。
在一些实施例中,PaaS平台本身有一套完整的监控体系,对于性能测试来说,自定义采集项目,从PaaS的监控***里面提取核心监控指标,并根据不同场景提取不同的指标,实现灵活配置,并将提取到的指标按照一定格式保存。
可选地,对待测软件对应的测试采集项进行监控,得到监控数据之后,该方法还包括:获取提取指令和过滤指令,并基于提取指令和过滤指令对监控数据进行提取和过滤。
可选地,对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告,包括:若待比对数据为历史测试数据,获取当前测试数据与历史测试数据之间的比较结果,根据比较结果生成性能变化趋势图;若待比对数据为性能指标阈值,根据当前测试数据与性能指标阈值之间的比较结果判断当前测试数据是否达标,得到待测软件的达标结果;根据性能变化趋势图和达标结果生成待测软件的性能测试报告。这样,生成性能测试报告的过程中减少人工干预,提高测试效率,同时,基于性能测试报告能第一时间对不满足指标的测试结果进行告警,能更快尽早识别性能风险。
在一些实施例中,在性能测试执行的软件测试流水线中,根据场景设置性能指标阈值,将当前测试数据与性能指标阈值对比,自动识别与性能指标的差异,初步判断性能测试结果是否达标;同时,针对同一个场景不同的代码版本,测试结果可以基于历史测试数据自动生成性能趋势图,通过数据分析工具自动化分析后,形成性能测试报告,报告中除了测试结果外,还会列举指标及版本对比的结果,使得联系人可以尽早识别性能测试风险。
结合图2所示,本公开实施例提供了一种软件性能测试方法,包括:
步骤S201,开发性能测试脚本,得到性能测试任务;
其中,将性能测试脚本存储在代码管理仓库,代码管理仓库包括Gitlab;
步骤S202,创建软件测试流水线,并在软件测试流水线中配置性能指标阈值、告警通知规则;
步骤S203,开启软件测试流水线,获取待测软件对应的性能测试任务和待比对数据;
步骤S204,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,若是,跳转步骤S205,若否,跳转步骤S206;
步骤S205,根据性能测试任务对待测软件进行性能测试,得到当前测试数据,跳转步骤S207;
其中,性能测试任务包括一个或多个测试场景参数,以及各测试场景参数对应的测试工具和测试步骤;分别获取各测试场景参数对应的测试场景;在各测试场景中,调用测试场景对应的测试工具,并按照测试场景对应的测试步骤对待测软件进行仿真运行;在仿真运行中,对待测软件对应的测试采集项进行监控,得到监控数据,并对测试场景对应的场景采集项进行数据采集,得到场景性能数据;将各测试场景对应的监控数据和场景性能数据确定为当前测试数据;
步骤S206,基于告警通知规则提醒测试环境未通过,并停止针对待测软件的软件性能测试。
步骤S207,对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告。
采用本发明公开的软件性能测试方法,通过获取待测软件对应的性能测试任务和待比对数据,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,若环境检测结果满足测试条件,则根据性能测试任务对待测软件进行性能测试,得到当前测试数据,并对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告。这样,自动化检测待测软件的当前测试环境是否满足测试条件,并在满足测试条件的情况下进行性能测试,并自动化分析测试得到的当前测试数据,并生成性能测试包括,相较于通过人工进行环境巡检和结果分析,整个测试过程不需要人工参与,提高了软件测试效率。
结合图3所示,本公开实施例提供了一种软件性能测试***,包括获取模块301、环境检测模块302、软件检测模块303、生成模块304。获取模块301用于获取待测软件对应的性能测试任务和待比对数据,待比对数据包括待测软件的历史测试数据和性能指标阈值中的至少一种。环境检测模块302用于对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件。软件检测模块303用于若环境检测结果满足测试条件,则根据性能测试任务对待测软件进行性能测试,得到当前测试数据。生成模块304用于对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告。
采用本发明公开的软件性能测试***,通过获取待测软件对应的性能测试任务和待比对数据,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,若环境检测结果满足测试条件,则根据性能测试任务对待测软件进行性能测试,得到当前测试数据,并对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告。这样,自动化检测待测软件的当前测试环境是否满足测试条件,并在满足测试条件的情况下进行性能测试,并自动化分析测试得到的当前测试数据,并生成性能测试包括,相较于通过人工进行环境巡检和结果分析,整个测试过程不需要人工参与,提高了软件测试效率。
结合图4所示,本公开实施例提供了一种电子设备,包括:处理器(processor)400及存储器(memory)401;存储器用于存储计算机程序,处理器用于执行存储器存储的计算机程序,以使终端执行本实施例中任一项方法。可选地,该电子设备还可以包括通信接口(CommunicationInterface)402和总线403。其中,处理器400、通信接口402、存储器401可以通过总线403完成相互间的通信。通信接口402可以用于信息传输。处理器400可以调用存储器401中的逻辑指令,以执行上述实施例中的方法。
此外,上述的存储器401中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器401作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器400通过运行存储在存储器401中的程序指令/模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
存储器401可包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器401可以包括高速随机存取存储器,还可以包括非说易失性存储器。
采用本公开实施例提供的电子设备,通过获取待测软件对应的性能测试任务和待比对数据,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,若环境检测结果满足测试条件,则根据性能测试任务对待测软件进行性能测试,得到当前测试数据,并对当前测试数据与待比对数据进行比较,并根据比较结果生成待测软件的性能测试报告。这样,自动化检测待测软件的当前测试环境是否满足测试条件,并在满足测试条件的情况下进行性能测试,并自动化分析测试得到的当前测试数据,并生成性能测试包括,相较于通过人工进行环境巡检和结果分析,整个测试过程不需要人工参与,提高了软件测试效率。
本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本实施例中的任一项方法。
本公开实施例中的计算机可读存储介质,本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过计算机程序相关的硬件来完成。前述的计算机程序可以存储于一计算机可读存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开的电子设备,包括处理器、存储器、收发器和通信接口,存储器和通信接口与处理器和收发器连接并完成相互间的通信,存储器用于存储计算机程序,通信接口用于进行通信,处理器和收发器用于运行计算机程序,使电子设备执行如上方法的各个步骤。
在本实施例中,存储器可能包含随机存取存储器(RandomAccessMemory,简称RAM),也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
上述的处理器可以是通用处理器,包括中央处理器(CentralProcessingUnit,简称CPU)、图形处理器(GraphicsProcessingUnit,简称GPU),网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(DigitalSignalProcessing,简称DSP)、专用集成电路(ApplicationSpecificIntegratedCircuit,简称ASIC)、现场可编程门阵列(Field-Programmable GateArray,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和子样本可以被包括在或替换其他实施例的部分和子样本。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的子样本、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它子样本、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。所述技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。所述技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以当前前述方法实施例中的对应过程,在此不再赘述。
本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些子样本可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
附图中的流程图和框图显示了根据本公开实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。

Claims (10)

1.一种软件性能测试方法,其特征在于,包括:
获取待测软件对应的性能测试任务和待比对数据,所述待比对数据包括所述待测软件的历史测试数据和性能指标阈值中的至少一种;
对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件;
若所述环境检测结果满足测试条件,则根据所述性能测试任务对所述待测软件进行性能测试,得到当前测试数据;
对所述当前测试数据与所述待比对数据进行比较,并根据比较结果生成所述待测软件的性能测试报告。
2.根据权利要求1所述的方法,其特征在于,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件,包括:
对当前测试环境所对应的环境测试项进行检测,得到环境测试项对应的一个或多个环境参数;
获取各所述环境参数对应的参数权重和参数阈值区间;
根据所述环境参数、所述参数权重和所述参数阈值区间确定所述当前测试环境的环境评分;
根据所述环境评分与预设评分阈值之间的比较结果判断环境检测结果是否满足测试条件。
3.根据权利要求2所述的方法,其特征在于,通过以下公式确定所述当前测试环境的测试环境评分:
Figure FDA0003545048160000011
式中,Score为所述当前测试环境的环境评分,n为环境参数的数量,pi为第i个环境参数,
Figure FDA0003545048160000012
为第i个环境参数对应的参数阈值区间中的最大值,
Figure FDA0003545048160000013
为第i个环境参数对应的参数阈值区间中的最小值,wi为第i个环境参数对应的参数权重,α为预设放大指数。
4.根据权利要求2所述的方法,其特征在于,根据所述环境评分与预设评分阈值之间的比较结果判断环境检测结果是否满足测试条件之后,所述方法还包括:
若环境检测结果不满足测试条件,将所述环境参数与对应的参数阈值区间进行比较,得到环境参数结果,其中,所述环境参数结果包括大于所述参数阈值区间的最大值、小于所述参数阈值区间的最小值和介于所述参数阈值区间之间;
基于所述环境参数对应的环境参数结果获取对应的测试环境改善建议,并展示所述测试环境改善建议;
获取所述测试环境改善建议对应的用户选择信息,并根据所述用户选择信息从所述测试环境改善建议中确定目标修改建议;
根据所述目标修改建议对所述当前测试环境进行参数修改。
5.根据权利要求1至4任一项所述的方法,其特征在于,根据所述性能测试任务对所述待测软件进行性能测试,得到当前测试数据,包括:
所述性能测试任务包括一个或多个测试场景参数,以及各所述测试场景参数对应的测试工具和测试步骤;
分别获取各所述测试场景参数对应的测试场景;
在各所述测试场景中,调用所述测试场景对应的测试工具,并按照所述测试场景对应的测试步骤对所述待测软件进行仿真运行;
在所述仿真运行中,对待测软件对应的测试采集项进行监控,得到监控数据,并对所述测试场景对应的场景采集项进行数据采集,得到场景性能数据;
将各所述测试场景对应的监控数据和场景性能数据确定为当前测试数据。
6.根据权利要求5所述的方法,其特征在于,对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件之后,所述方法还包括以下至少一种:
若所述环境检测结果不满足测试条件,提醒测试环境未通过;
若所述环境检测结果不满足测试条件,停止针对所述待测软件的软件性能测试。
7.根据权利要求6所述的方法,其特征在于,对所述当前测试数据与所述待比对数据进行比较,并根据比较结果生成所述待测软件的性能测试报告,包括:
若所述待比对数据为所述历史测试数据,获取所述当前测试数据与所述历史测试数据之间的比较结果,根据所述比较结果生成性能变化趋势图;
若所述待比对数据为所述性能指标阈值,根据所述当前测试数据与所述性能指标阈值之间的比较结果判断所述当前测试数据是否达标,得到所述待测软件的达标结果;
根据所述性能变化趋势图和所述达标结果生成所述待测软件的性能测试报告。
8.一种软件性能测试***,其特征在于,包括:
获取模块,用于获取待测软件对应的性能测试任务和待比对数据,所述待比对数据包括所述待测软件的历史测试数据和性能指标阈值中的至少一种;
环境检测模块,用于对当前测试环境所对应的环境测试项进行检测,判断环境检测结果是否满足测试条件;
软件检测模块,用于若所述环境检测结果满足测试条件,则根据所述性能测试任务对所述待测软件进行性能测试,得到当前测试数据;
生成模块,用于对所述当前测试数据与所述待比对数据进行比较,并根据比较结果生成所述待测软件的性能测试报告。
9.一种电子设备,其特征在于,包括:处理器及存储器;
所述存储器用于存储计算机程序,所述处理器用于执行所述存储器存储的计算机程序,以使所述电子设备执行如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:
所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
CN202210246749.9A 2022-03-14 2022-03-14 软件性能测试方法、***、电子设备及可读存储介质 Pending CN114461534A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210246749.9A CN114461534A (zh) 2022-03-14 2022-03-14 软件性能测试方法、***、电子设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210246749.9A CN114461534A (zh) 2022-03-14 2022-03-14 软件性能测试方法、***、电子设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN114461534A true CN114461534A (zh) 2022-05-10

Family

ID=81416921

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210246749.9A Pending CN114461534A (zh) 2022-03-14 2022-03-14 软件性能测试方法、***、电子设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN114461534A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115455089A (zh) * 2022-11-09 2022-12-09 西安弘捷电子技术有限公司 一种无源组件的性能评估方法、***及存储介质
CN116701236A (zh) * 2023-08-08 2023-09-05 贵州通利数字科技有限公司 一种app应用测试方法、***和可读存储介质
CN116990660A (zh) * 2023-06-25 2023-11-03 珠海妙存科技有限公司 eMMC老化测试方法、装置、电子设备及计算机可读存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115455089A (zh) * 2022-11-09 2022-12-09 西安弘捷电子技术有限公司 一种无源组件的性能评估方法、***及存储介质
CN115455089B (zh) * 2022-11-09 2023-02-28 西安弘捷电子技术有限公司 一种无源组件的性能评估方法、***及存储介质
CN116990660A (zh) * 2023-06-25 2023-11-03 珠海妙存科技有限公司 eMMC老化测试方法、装置、电子设备及计算机可读存储介质
CN116701236A (zh) * 2023-08-08 2023-09-05 贵州通利数字科技有限公司 一种app应用测试方法、***和可读存储介质
CN116701236B (zh) * 2023-08-08 2023-10-03 贵州通利数字科技有限公司 一种app应用测试方法、***和可读存储介质

Similar Documents

Publication Publication Date Title
CN114461534A (zh) 软件性能测试方法、***、电子设备及可读存储介质
CN109522192B (zh) 一种基于知识图谱和复杂网络组合的预测方法
CN110019349A (zh) 语句预警方法、装置、设备及计算机可读存储介质
CN110134611B (zh) 内存泄漏分析方法、装置、终端和存储介质
CN111338692A (zh) 基于漏洞代码的漏洞分类方法、装置及电子设备
CN114237466A (zh) 一种巡检点配置方法及装置
CN111767218B (zh) 一种用于持续集成的自动化测试方法、设备及存储介质
CN108829590B (zh) 一种软件测试方法、装置及***
CN116340172A (zh) 基于测试场景的数据收集方法、装置及测试用例检测方法
CN115576831A (zh) 一种测试案例推荐方法、装置、设备及存储介质
CN115658478A (zh) 测试用例的筛选方法、装置、电子设备及存储介质
CN115310011A (zh) 页面展示方法、***以及可读存储介质
CN114881112A (zh) 一种***异常检测方法、装置、设备及介质
CN115098362A (zh) 页面测试方法、装置、电子设备以及存储介质
CN113656210A (zh) 报错信息的处理方法、装置、服务器和可读存储介质
CN113868137A (zh) 埋点数据的处理方法、装置、***和服务器
CN113742213A (zh) 一种用于数据分析的方法、***和介质
CN111045849A (zh) 核对异常原因的识别方法、装置、服务器和存储介质
CN113554126B (zh) 样本评估方法、装置、设备及计算机可读存储介质
CN107102938B (zh) 测试脚本的更新方法及装置
CN117439899B (zh) 一种基于大数据的通信机房巡检方法及***
CN118051657B (zh) 一种数据专线故障定位用例库测试方法及***
CN111309623B (zh) 一种坐标类数据分类测试方法及装置
CN117453567A (zh) 混沌测试方法、装置及设备
CN115794646A (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