CN113448867A - 一种软件压力测试方法及装置 - Google Patents

一种软件压力测试方法及装置 Download PDF

Info

Publication number
CN113448867A
CN113448867A CN202110804535.4A CN202110804535A CN113448867A CN 113448867 A CN113448867 A CN 113448867A CN 202110804535 A CN202110804535 A CN 202110804535A CN 113448867 A CN113448867 A CN 113448867A
Authority
CN
China
Prior art keywords
test
software
software program
tested
memory
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
Application number
CN202110804535.4A
Other languages
English (en)
Other versions
CN113448867B (zh
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN202110804535.4A priority Critical patent/CN113448867B/zh
Publication of CN113448867A publication Critical patent/CN113448867A/zh
Application granted granted Critical
Publication of CN113448867B publication Critical patent/CN113448867B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/368Test management for test version control, e.g. updating test cases to a new software version
    • 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
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

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

一种软件压力测试方法及装置
技术领域
本发明涉及计算机软件测试领域,具体涉及了一种软件压力测试方法及装置。
背景技术
软件压力测试是给软件进行加压,在压力极限情况进行运行,根据软件运行情况,采用针对性的测试与分析,找到影响系统性能的瓶颈。对于微控制器,为了保证软件能够安全稳定的运行,需要对软件进行相应的测试,这些测试主要通过统计函数的调用情况,根据统计以确定软件程序运行时的压力,以达到分配最优运行资源给软件程序,还能够针对软件存在的问题进行优化。
现有技术包括:(1)通过测试接口用户数据或者函数,确定该测试接口的压力测试指标;根据历史用户数据生成压力测试数据,并根据该压力测试数据生成测试接口的调用请求;以上述调用请求访问Mock类对象,获得返回数据;根据该返回数据进行Mock压力测试,以确定压力测试指标的数值,获得该测试接口的压力测试结果;(2)为软件程序配足够的空间,通过对软件程序运行时的每个软件模块进行特定数据填充,采集内存变化,根据内存变化情况确定栈空间使用情况,以确定软件程序最大内存使用情况。
现有技术的缺点:(1)测试接口需要调用用户历史数据,并不是实时的,因此无法反馈软件程序运行时的状况;(2)需要对内存的内容访问和获取,同时需要足够的空间;(3)对差异化的不同开发版本的软件程序进行测试时,通常通过人工调整的方式进行差异化的压力测试;(4)无法实现直观的测试。
发明内容
本发明的目的在于至少解决现有技术中存在的技术问题之一,提供了一种软件压力测试方法及装置,实现了软件压力测试的可视化、可配置的技术效果。
本发明的技术方案包括一种软件压力测试方法,该方法包括:S100,获取软件程序的配置文件,根据所述配置文件在交互界面生成若干待测试的所述软件程序的功能模块;S200,根据所述功能模块自动生成所述软件程序的多组测试方案,所述测试方案用于对相应的测试对象按照策略进行测试;S300,得到所述软件程序及多个所述功能模块的测试结果,并将所述测试结果显示于交互界面。
根据所述的软件压力测试方法,其中所述S100包括:S110,根据所述配置文件,遍历并解析对应文件夹内的多个文件得到对应所述功能模块的函数列表;S120,根据所述函数列表得到对应的函数输入数据类型;S130,构建所述软件程序的功能模块树,将所述功能模块树显示于交互界面,所述功能模块树根据用户点击自动显示所述函数列表及所述输入数据类型。
根据所述的软件压力测试方法,其中该方法还包括:对所述功能模块同时运行冲突、函数调用冲突及功能模块运行前置进行检查,将存在冲突的所述功能模块及函数不同时添加至所述测试方案。
根据所述的软件压力测试方法,其中所述S200包括:S210,根据所述功能模块树,将每个功能模块添加至所述测试列表,或者,对所述软件程序整体采用多次同步测试;S220,对所述测试列表的所述功能模块及所述软件程序整体根据用户设置执行对应的测试,所述策略包括所述功能模块的业务性能测试及内存空闲测试。
根据所述的软件压力测试方法,其中所述功能模块及所述软件程序整体的测试包括:运行所述软件程序;若为所述功能模块的测试,则根据所述测试列表,启动所述功能模块及其必要运行前置,若为所述软件程序整体的测试,则直接执行下一步骤;根据所述输入函数类型,自动生成若干测试数据进行输入,并逐步增压直至所述软件程序崩溃;采集不同时间段的指针寄存器的值,以及,采集对应时间段的性能变化,其中性能变化包括内存变化、CPU使用率、任务完成时间及资源使用率;其中对所述软件程序整体的测试的不同指标为并列测试方式。
根据所述的软件压力测试方法,其中内存变化的采集还包括:设置所述功能模块的运行内存上限;动态获取所述指针寄存器的值,根据所述指针寄存器的值与运行内存上限对比,若所述指针寄存器的值大于所述运行内存上限,则动态调整所述运行内存上限。
根据所述的软件压力测试方法,其中该方法还包括:若所述软件程序崩溃时,获取对应的内存断点及地址;根据内存断点及地址,通过偏移计算得到崩溃时的内存断点及地址;获取崩溃时的内存断点及地址的源码位置并显示于交互界面。
根据所述的软件压力测试方法,其中该方法还包括:保持所述软件程序的崩溃状态,持续获取指针寄存器的值;若针寄存器的值保持不变则结束测试,否则,持续监控一段时间,记录对应内存中的函数调用情况。
根据所述的软件压力测试方法,其中所述S300包括:动态显示所述功能模块及所述软件程序的测试状态,并对每个所述功能模块及所述软件程序测试结果的内存变化、CPU使用率、任务完成时间及资源使用率显示于交互界面。
本发明的技术方案还包括一种并行式多子版本软件的压力测试方法,包括以下步骤:将主版本号测试数据和多个的子版本号测试数据提供到数据分配器;根据待测软件的版本差异表,并且根据多个待测软件的相同部分,从数据分配器中分离出多个待测软件的相同的基版本数据,并且复制多份基版本数据;根据待测软件的版本差异表,并且根据多个待测软件的功能模块差异部分,从数据分配器中分离出与每个子版本号待测软件所对应的模块数据;根据测试策略表,为每个版本的待测软件准备相应的配置文件;向每一个主版本下的多个子版本的待测软件分别分配一份基版本数据、相应子版本的模块数据以及配置文件;对每个待测软件并行地执行上述的方法;其中,所述版本差异表包含不同的子版本待测软件中的功能模块差异信息,所述测试策略表包含不同的子版本待测软件中对功能模块的测试策略差异信息。
本发明的技术方案还包括一种软件压力测试装置,该装置包括待测装置及测试装置,所述待测装置设置有待测试的软件程序,所述测试装置包括存储器及处理器,所述存储器存储有测试程序,所述测试程序被所述处理器运行时实现执行任一项所述的方法步骤。
本发明的有益效果为:(1)动态可视化展示待测软件及其所有功能模块,并在压力测试时,实时显示测试状态;(2)可配置的压力测试方法,提供了灵活的单个模块及整体的测试,能够有效的反馈出单个模块及软件程序整体的测试状态;(3)对压力崩溃时的函数调用测试;(4)可以兼容并行地对多个差异化新版本的软件程序进行压力测试,并且根据版本的差异化内容,自动分配针对性的测试数据和自动分配测试策略,从而提高测试效率。
附图说明
下面结合附图和实施例对本发明进一步地说明。
图1所示为根据本发明实施方式总体流程图。
图2所示为根据本发明实施方式的功能模块树示意图。
图3所示为根据本发明实施方式的功能模块生成流程图。
图4所示为根据本发明实施方式的内存调整流程图。
图5所示为根据本发明实施方式的内存变化调整流程图。
图6所示为根据本发明实施方式的多版本程序测试示意图。
图7所示为根据本发明实施方式的装置连接图。
图8所示为根据本发明实施方式的移动终端测试方案示意图。
图9所示为根本发明实施方式的手机卡测试示意图。
具体实施方式
本部分将详细描述本发明的具体实施例,本发明之较佳实施例在附图中示出,附图的作用在于用图形补充说明书文字部分的描述,使人能够直观地、形象地理解本发明的每个技术特征和整体技术方案,但其不能理解为对本发明保护范围的限制。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。
在本发明的描述中,对方法步骤的连续标号是为了方便审查和理解,结合本发明的整体技术方案以及各个步骤之间的逻辑关系,调整步骤之间的实施顺序并不会影响本发明技术方案所达到的技术效果。
本发明的描述中,除非另有明确的限定,设置等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
图1所示为根据本发明实施方式总体流程图,该流程包括以下步骤:S100,获取软件程序的配置文件,根据配置文件在交互界面生成若干待测试的软件程序的功能模块;S200,根据功能模块自动生成软件程序的多组测试方案,测试方案用于对相应的测试对象按照策略进行测试;S300,得到软件程序及多个功能模块(比如对于电商软件而言,常用的功能模块包括购物车模块、订单处理模块、社交功能模块等)的测试结果,并将测试结果显示于交互界面。
参考图2,本发明的技术方案通过图3的流程自动识别软件程序的功能模块并显示于交互界面,图2中的软件程序包括功能模块A、功能模块B、功能模块C,每个功能模块存在对应的多个子模块,如图中的功能模块A1、A2、A3…,对应地,功能模块B、功能模块C也应该具有相应的子模块,即B1、B2、B3…(未图示)及C1、C2、C3…(未图示)。
图3所示为根据本发明实施方式的功能模块生成流程图,该图包括:S110,根据配置文件,遍历并解析对应文件夹内的多个文件得到对应功能模块的函数列表;S120,根据函数列表得到对应的函数输入数据类型;S130,构建软件程序的功能模块树,将功能模块树显示于交互界面,功能模块树根据用户点击自动显示函数列表及输入数据类型。该实施例用于将软件程序自动遍历并解析得到其功能模块树,通过交互界面显示功能模块树,能够直观的体现软件功能模块的构成。并且,用于可以通过点击交互界面的功能模块,配置其测试策略。
图4所示为根据本发明实施方式的内存调整流程图,其流程如下:
S210,根据用户配置的测试,选择软件程序整体或者软件程序的功能模块进行测试;
S220,若为功能模块则启动其必要运行前置,如测试图2中的功能模块B1,则启动其父功能模块B;
S230,运行软件程序,自动生成若干测试数据进行输入,其中,测试主要通过持续输入数据以实现单个模块的内存变化、CPU使用率、任务完成时间及资源使用率,其中内存变化的测试主要用于对功能模块所需的函数调用最大栈空间进行测试,在一些存储空间较小设备上,可以对软件程序所需的最大内存空间进行确定,以方便在设备运行时分配最优内存空间,能够节约系统资源的消耗;
S240,持续输入数据,直至软件程序崩溃;
S250,通过获取内存断点及地址,通过偏移计算,确定对应软件程序的崩溃点(即文件),查找对应的源码;
S260,压力测试结束,输出测试结果。
此外,还可以在步骤S260的压力测试结束之前继续执行以下流程:在软件程序崩溃状态时,持续数据输入,通过S250的方式,持续监控软件程序,获取其对应的内存变化及函数调用情况,能够有效的查找出崩溃前及崩溃后的内存变化及函数调用;
然后持续一段时间(比如,持续预设若干分钟,或者持续到软件崩溃后的占用内存的变化幅度小于预设百分比)监控后,结束测试。
图5所示为根据本发明实施方式的内存变化调整流程图,作为对S230的进一步解释,本实施例通过内存调整获取软件功能模块所需的最大内存空间,包括:
S231,获取指针寄存器的值,此时,需要给对应功能模块分配对应的内存空间;
S232,需要判定在通过持续输入数据进行增压时的寄存器值,若小于分配的内存空间,此时直至软件程序崩溃时的寄存器值所需内存都没有超过设置的内存空间,结束测试,可以返回步骤S231重新设置;
S233,持续增加测试压力输入到软件功能模块,并获取寄存器值;
S234,若此时寄存器值所需内存超过内存空间,则动态调整分配的内存空间,经过多次处理之后,即可获得功能模块所需的最大内存空间,因此,通过多个功能模块的测试,即可判定整个软件程序所需的最大内存空间。
图6所示为根据本发明实施方式的多版本程序测试示意图。在图6的示例中,待测软件的基版本为v1.01,子版本分别有v1.0101、v1.0102、v1.0103等。v1.0101、v1.0102、v1.0103版本的软件是在v1.01的基础版本进行功能模块的微调升级或者修改。在本示例中,具体有差异的功能模块如图6的模块前的“*”标出,比如v1.0101版本是修改了功能模块A1,v1.0102版本是修改了功能模块A1、A2,v1.0103版本是修改了功能模块A1、A2、A3。在多个关联版本的软件压力测试之前。
在本实施例中,并行地对多个版本软件的压力测试方法包括以下步骤S410-S460。
S410、将主版本号测试数据和多个的子版本号测试数据提供到数据分配器。这些测试数据可以基于每个子版本的测试需求而分别由不同的测试方提供。而数据分配器负责收集这些零散的多版本的测试数据,以从中提取这些关联版本的共同的基础测试数据和配置文件。
S420、根据待测软件的版本差异表,并且根据多个待测软件的相同部分,从数据分配器中分离出多个待测软件的相同的基版本数据(如图6中的基版本数据v1.01),并且复制多份基版本数据。数据分配器所读取的版本差异表包含不同的子版本待测软件中的功能模块差异信息,可以由软件开发测试人员预先设置。
S430、根据待测软件的版本差异表,并且根据多个待测软件的功能模块差异部分,从数据分配器中分离出与每个子版本号待测软件所对应的模块数据。例如,从原始测试数据v1.0101中分离出的模块数据v1.0101是对应功能模块A1的局部差异数据。
S440、根据测试策略表,为每个版本的待测软件准备相应的配置文件。使得可以根据不同子版本的待测软件分别差异化提供配置文件,用于遍历并解析得到对应子版本的待测软件的功能模块的函数列表。所述测试策略表包含不同的子版本待测软件中对功能模块的测试策略差异信息。
S450、向每一个主版本下的多个子版本的待测软件分别分配一份基版本数据、相应子版本的模块数据以及配置文件。比如,从分配器分配到待测软件v1.0101的是基版本数据v1.01、和模块数据v1.0101以及配套的配置文件v1.0101;从分配器分配到待测软件v1.0102的是基版本数据v1.01、和模块数据v1.0102以及配套的配置文件v1.0102。可以看出待测软件v1.0101和待测软件v1.0102公用相同的基版本数据v1.01,这个基版本数据是通过分配器进行复制得到。
S460、对每个待测软件并行地执行上述实施例中的方法步骤S100至S300,可以执行更细节的步骤S210至S260,S213至S234。
因此,根据图6的实施例可以是的根据本发明的软件压力测试方法可以适用同类软件的多版本实现并行的压力测试,从而加快测试效率,尤其方便同步实施多个软件升级版本的软件压力测试。
图7所示为根据本发明实施方式的装置连接图。该装置包括待测装置及测试装置,待测装置及测试装置通过接口进行通信,待测装置及测试装置包括对应的存储器及处理器,测试装置的处理器用于根据用户设置对存储于待测装置的软件程序执行自定义测试,待测装置的存储器及处理器分别用于存储及运行软件程序。测试装置还包括有显示装置,用于为用户提供交互操作及显示。
参考图8,对于移动设备的测试,其存在诸多不便,因此,本实施例通过在移动终端设置测试程序,通过数据连接线的方式与被测装置(移动设备),移动终端通过如图4的实施方式对手机卡进行测试,可以便携式的测试不同移动设备的软件,移动终端可以是手机、平板及笔记本电脑,在一个更优的实施方案中,移动终端还可以连接服务器,通过服务器获取测试程序,且这个测试程序可进行远程配置。
如图9的实施例,其公开了通过读卡器对多个手机卡的软件进行压力测试,其中的手机卡1、手机卡2…手机卡N为被测对象,其存储有被测软件,而读卡器存储有测试程序,显示器用于显示多个手机卡的测试结果。其中,读卡器设置多种不同类型的手机卡读取配置,读卡器通过如图4的实施方式对手机卡进行测试,通过这种方式,可以批量的对手机卡进行统一测试,能够有效的节约测试所花费的时间、人力及物力。
应当认识到,本发明实施例中的方法步骤可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
此外,可按任何合适的顺序来执行本文描述的过程的操作,除非本文另外指示或以其他方式明显地与上下文矛盾。本文描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本文所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
计算机程序能够应用于输入数据以执行本文所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。

Claims (10)

1.一种软件压力测试方法,其特征在于,该方法包括以下步骤:
S100,获取软件程序的配置文件,根据所述配置文件在交互界面生成若干待测试的软件程序的功能模块;
S200,根据所述功能模块自动生成所述软件程序的多组测试方案,所述测试方案用于对相应的测试对象按照策略进行测试;
S300,得到所述软件程序及多个所述功能模块的测试结果,并将所述测试结果显示于交互界面。
2.根据权利要求1所述的软件压力测试方法,其特征在于,所述S100包括:
S110,根据所述配置文件,遍历并解析对应文件夹内的多个文件得到对应所述功能模块的函数列表;
S120,根据所述函数列表得到对应的函数输入数据类型;
S130,构建所述软件程序的功能模块树,将所述功能模块树显示于交互界面,所述功能模块树根据用户点击自动显示所述函数列表及所述输入数据类型。
3.根据权利要求2所述的软件压力测试方法,其特征在于,该方法还包括:
对所述功能模块同时运行冲突、函数调用冲突及功能模块运行前置进行检查,将存在冲突的所述功能模块及函数不同时添加至所述测试方案。
4.根据权利要求2所述的软件压力测试方法,其特征在于,所述S200包括:
S210,根据所述功能模块树,将每个功能模块添加至所述测试列表,或者,对所述软件程序整体采用多次同步测试;
S220,对所述测试列表的所述功能模块及所述软件程序整体根据用户设置执行对应的测试,所述策略包括所述功能模块的业务性能测试及内存空间测试。
5.根据权利要求4所述的软件压力测试方法,其特征在于,所述功能模块及所述软件程序整体的测试包括:
运行所述软件程序;
若为所述功能模块的测试,则根据所述测试列表,启动所述功能模块及其必要运行前置,若为所述软件程序整体的测试,则直接执行下一步骤;
根据所述输入函数类型,自动生成若干测试数据进行输入,并逐步增压直至所述软件程序崩溃;
采集不同时间段的指针寄存器的值,以及,采集对应时间段的性能变化,其中性能变化包括内存变化、CPU使用率、任务完成时间及资源使用率;
其中对所述软件程序整体的测试的不同指标为并列测试方式。
6.根据权利要求5所述的软件压力测试方法,其特征在于,所述内存变化的采集还包括:
设置所述功能模块的运行内存上限;
动态获取所述指针寄存器的值,根据所述指针寄存器的值与运行内存上限对比,若所述指针寄存器的值大于所述运行内存上限,则动态调整所述运行内存上限。
7.根据权利要求5所述的软件压力测试方法,其特征在于,该方法还包括:
若所述软件程序崩溃时,获取对应的内存断点及地址;
根据内存断点及地址,通过偏移计算得到崩溃时的内存断点及地址;
获取崩溃时的内存断点及地址的源码位置并显示于交互界面;
动态显示所述功能模块及所述软件程序的测试状态,并对每个所述功能模块及所述软件程序测试结果的内存变化、CPU使用率、任务完成时间及资源使用率显示于交互界面。
8.根据权利要求7所述的软件压力测试方法,其特征在于,该方法还包括:
保持所述软件程序的崩溃状态,持续获取指针寄存器的值;
若针寄存器的值保持不变则结束测试,否则,持续监控一段时间,记录对应内存中的函数调用情况。
9.一种并行式多子版本软件的压力测试方法,其特征在于,包括以下步骤:
将主版本号测试数据和多个的子版本号测试数据提供到数据分配器;
根据待测软件的版本差异表,并且根据多个待测软件的相同部分,从数据分配器中分离出多个待测软件的相同的基版本数据,并且复制多份基版本数据;
根据待测软件的版本差异表,并且根据多个待测软件的功能模块差异部分,从数据分配器中分离出与每个子版本号待测软件所对应的模块数据;
根据测试策略表,为每个版本的待测软件准备相应的配置文件;
向每一个主版本下的多个子版本的待测软件分别分配一份基版本数据、相应子版本的模块数据以及配置文件;
对每个待测软件并行地执行根据权利要求1至8中任一权利要求所述的方法;
其中,所述版本差异表包含不同的子版本待测软件中的功能模块差异信息,所述测试策略表包含不同的子版本待测软件中对功能模块的测试策略差异信息。
10.一种软件压力测试装置,其特征在于,该装置包括待测装置及测试装置,所述待测装置设置有待测试的软件程序,所述测试装置包括存储器及处理器,所述存储器存储有测试程序,所述测试程序被所述处理器运行时实现执行权利要求1-9任一项所述的方法步骤。
CN202110804535.4A 2021-07-16 2021-07-16 一种软件压力测试方法及装置 Active CN113448867B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110804535.4A CN113448867B (zh) 2021-07-16 2021-07-16 一种软件压力测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110804535.4A CN113448867B (zh) 2021-07-16 2021-07-16 一种软件压力测试方法及装置

Publications (2)

Publication Number Publication Date
CN113448867A true CN113448867A (zh) 2021-09-28
CN113448867B CN113448867B (zh) 2022-08-16

Family

ID=77816387

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110804535.4A Active CN113448867B (zh) 2021-07-16 2021-07-16 一种软件压力测试方法及装置

Country Status (1)

Country Link
CN (1) CN113448867B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117785643A (zh) * 2024-02-23 2024-03-29 广州飞进信息科技有限公司 一种软件开发用性能测试平台
CN117785643B (zh) * 2024-02-23 2024-05-14 广州飞进信息科技有限公司 一种软件开发用性能测试平台

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1165343A (zh) * 1996-03-05 1997-11-19 株式会社数字视觉实验室 并行分布处理系统及其方法
CN1870523A (zh) * 2005-11-28 2006-11-29 华为技术有限公司 网络设备配置系统和方法
US9268670B1 (en) * 2013-08-08 2016-02-23 Google Inc. System for module selection in software application testing including generating a test executable based on an availability of root access
CN106776337A (zh) * 2016-12-29 2017-05-31 北京金山安全软件有限公司 一种性能分析方法、装置及电子设备
CN109062802A (zh) * 2018-08-13 2018-12-21 深圳壹账通智能科技有限公司 一种软件测试方法、计算机可读存储介质及终端设备
US10318285B1 (en) * 2017-08-16 2019-06-11 Amazon Technologies, Inc. Deployment of infrastructure in pipelines
CN110502435A (zh) * 2019-07-26 2019-11-26 广东睿江云计算股份有限公司 基于Jmeter的自动化性能测试方法及其系统
CN110597704A (zh) * 2018-06-13 2019-12-20 百度在线网络技术(北京)有限公司 应用程序的压力测试方法、装置、服务器和介质
CN111309570A (zh) * 2019-11-19 2020-06-19 天津网之易创新科技有限公司 压力测试方法、介质、装置和计算设备
CN111324526A (zh) * 2018-12-14 2020-06-23 北京金山云网络技术有限公司 接口测试系统、方法和服务器
CN112783769A (zh) * 2021-01-19 2021-05-11 深圳市莫廷影像技术有限公司 一种自定义的自动化软件测试方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1165343A (zh) * 1996-03-05 1997-11-19 株式会社数字视觉实验室 并行分布处理系统及其方法
CN1870523A (zh) * 2005-11-28 2006-11-29 华为技术有限公司 网络设备配置系统和方法
US9268670B1 (en) * 2013-08-08 2016-02-23 Google Inc. System for module selection in software application testing including generating a test executable based on an availability of root access
CN106776337A (zh) * 2016-12-29 2017-05-31 北京金山安全软件有限公司 一种性能分析方法、装置及电子设备
US10318285B1 (en) * 2017-08-16 2019-06-11 Amazon Technologies, Inc. Deployment of infrastructure in pipelines
CN110597704A (zh) * 2018-06-13 2019-12-20 百度在线网络技术(北京)有限公司 应用程序的压力测试方法、装置、服务器和介质
CN109062802A (zh) * 2018-08-13 2018-12-21 深圳壹账通智能科技有限公司 一种软件测试方法、计算机可读存储介质及终端设备
CN111324526A (zh) * 2018-12-14 2020-06-23 北京金山云网络技术有限公司 接口测试系统、方法和服务器
CN110502435A (zh) * 2019-07-26 2019-11-26 广东睿江云计算股份有限公司 基于Jmeter的自动化性能测试方法及其系统
CN111309570A (zh) * 2019-11-19 2020-06-19 天津网之易创新科技有限公司 压力测试方法、介质、装置和计算设备
CN112783769A (zh) * 2021-01-19 2021-05-11 深圳市莫廷影像技术有限公司 一种自定义的自动化软件测试方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117785643A (zh) * 2024-02-23 2024-03-29 广州飞进信息科技有限公司 一种软件开发用性能测试平台
CN117785643B (zh) * 2024-02-23 2024-05-14 广州飞进信息科技有限公司 一种软件开发用性能测试平台

Also Published As

Publication number Publication date
CN113448867B (zh) 2022-08-16

Similar Documents

Publication Publication Date Title
CN107193750B (zh) 一种脚本录制方法和装置
CN109062780B (zh) 自动化测试用例的开发方法及终端设备
US9558016B2 (en) Platform system, method for changing support hardware configuration of universal extensible firmware interface basic input output system and computer program product
CN110187835A (zh) 用于管理访问请求的方法、装置、设备和存储介质
CN111177113A (zh) 数据迁移方法、装置、计算机设备和存储介质
CN111262753B (zh) 一种numa节点个数自动配置方法方法、系统、终端及存储介质
CN110209605B (zh) Pcie总线网卡的寄存器读写方法和计算设备
CN112559525B (zh) 数据检查系统、方法、装置和服务器
CN107193749B (zh) 测试方法、装置及设备
CN107092556B (zh) 测试方法、装置及设备
CN113448867B (zh) 一种软件压力测试方法及装置
CN111124772A (zh) 一种云平台存储性能测试方法、系统、终端及存储介质
CN113641628B (zh) 数据质量检测方法、装置、设备及存储介质
CN111666201A (zh) 回归测试方法、装置、介质及电子设备
CN109669829A (zh) 一种基于bmc的诊断调试方法、装置及服务器
CN112115118B (zh) 数据库压测的优化方法及装置、存储介质、电子设备
CN108563578A (zh) Sdk兼容性检测方法、装置、设备及可读存储介质
CN109840213B (zh) 一种gui测试的测试数据创建方法、装置、终端及存储介质
CN109992614B (zh) 数据获取方法、装置和服务器
CN115437903A (zh) 接口测试方法、装置、设备、存储介质及程序
CN107220053B (zh) 一种bios管理方法及电子设备
CN111752916A (zh) 数据采集方法及装置、计算机可读存储介质、电子设备
CN111427692A (zh) 功能配置方法、装置、电子设备及介质
CN111124907A (zh) 一种手机游戏测试方法、装置和服务器
CN109471764B (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
GR01 Patent grant
GR01 Patent grant