法律状态公告日
法律状态信息
法律状态
2022-07-22
公开
发明专利申请公布
技术领域
本申请涉及网络技术领域,尤其是涉及一种基于国产操作系统软件商店的并发测试方法及装置。
背景技术
随着国产化系统的逐步发展,国产化linux系统慢慢地出现在大众的视野中,相较于Windows丰富的生态环境,国产化系统的生态环境目前处于薄弱地位,故没有合适的方法在国产系统进行并发测试。而在桌面操作系统中,并发测试是极其重要的测试,需要通过进行并发测试,了解操作系统中软件商店是否具有高并发访问的能力,或者说软件商店的服务器端是否能够在一定数量的用户的日常访问下,不发生无响应、客户端界面崩溃等情况。
发明内容
为了准确检测国产系统软件商店的抗压能力,提高用户访问软件商店的体验,本申请提供一种基于国产操作系统软件商店的并发测试方法及装置。
第一方面,本申请提供的一种基于国产操作系统软件商店的并发测试方法采用如下的技术方案:
一种基于国产操作系统软件商店的并发测试方法,包括:
并发测试装置调用服务器端的API接口;所述服务器端为软件商店的服务器;
根据预先设定的线程组的配置参数对服务器端的各测试场景进行并发测试,以获取服务器端的各项性能数据;
根据服务器端的各项性能数据,调整对服务器端并发测试的强度;
经过预先设定的测试时间后,判断服务器端的各项性能数据是否达到预先设定的与服务器端各项性能数据相对应的测试指标,若是,测试通过;若否,测试失败;
记录服务器端性能数据的变化历程和服务器的运行日志,生成并发测试操作报告。
可选的,所述测试场景包括:软件商店评分评论、查询信息、下载升级。
可选的,所述线程组的配置参数包括:指定并发数;访问接口事件;设定响应值事件;监控事件。
可选的,所述服务器端的各项性能数据包括平均响应时间、异常率、吞吐量和各个线程组的资源占用率。
第二方面,本申请提供的一种基于国产操作系统软件商店的并发测试装置采用如下的技术方案:
一种基于国产操作系统软件商店的并发测试装置,包括:
服务器端环境模块,用于调用服务器端的API接口;所述服务器端为软件商店的服务器;
客户端测试模块,包括测试单元和判定单元,所述测试单元根据预先设定的线程组的配置参数对服务器端的各测试场景进行并发测试,以获取服务器端的各项性能数据;所述判定单元用于在特定的时间内,判断服务器端的各项性能数据是否达到预先设定的与服务器端各项性能数据相对应的检测指标,若是,测试通过;否则,测试失败;
结果收集模块,用于记录服务器端性能数据的变化历程和服务器的运行日志,生成并发测试操作报告。
可选的,所述测试场景包括:软件商店评分评论、查询信息、下载升级。
可选的,所述线程组的配置参数包括:指定并发数;访问接口事件;设定响应值事件;监控事件。
可选的,所述服务器端的各项性能数据包括服务器的平均响应时间、异常率、吞吐量和各个线程组的资源占用率。
综上所述,本申请的有益技术效果为:
本申请是基于linux国产操作系统中的软件商店进行的一种并发测试方法,不仅填补了目前linux国产操作系统软件商店测试方法的空缺,同时还可以进行软件商店压力测试,对软件商店的稳定性、吞吐量等进行评估。最后,本方法通过服务器端收集到的并发数据,整理失败项,计算出错率,从而得出软件商店的稳定性及并发性能结果。
附图说明
图1是本申请实施例提供的一种方法流程图。
具体实施方式
本具体实施例仅仅是对本申请的解释,其并不是对本申请的限制,本领域技术人员在阅读完本说明书后可以根据需要对本实施例做出没有创造性贡献的修改,但只要在本申请的权利要求范围内都受到专利法的保护。
本申请实施例提供一种基于国产操作系统软件商店并发测试方法,该方法步骤主要包括:并发测试装置调用软件商店服务器端的API接口;根据预先设定的线程组的配置参数对服务器端的各测试场景进行并发测试,以获取服务器端的各项性能数据;根据服务器端的各项性能数据,逐渐增强对服务器端并发测试的强度;在特定的测试时间内,判断服务器端的各项性能数据是否达到预先设定的与服务器端各项性能数据相对应的测试指标,若是,测试通过;否则,测试失败;记录服务器端性能数据的变化历程和服务器端的运行日志,生成并发测试操作报告。
本申请实施例中,通过调用服务器端的API接口准备测试环境,为并发测试提供良好的环境基础;基于数据交互设定多个测试场景,并在检测过程中实施记录服务器端性能数据,并根据服务器端的性能指标及时调整检测强度,从而可准确检测软件商店的承载能力。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图对本申请中的技术方案作进一步详细说明。
本申请实施例公开一种基于国产操作系统软件商店的并发测试方法。请参照图1,该方法包括有以下步骤:
步骤S1:并发测试装置调用服务器端的API接口,所述服务器端为软件商店的服务器。
其中,并发测试装置包括多个内存空间不小于8GB、硬盘空间不小于256GB的客户机。由于并发测试软件jmeter在运行时,会占用较高的CPU及内存,若客户机内存过小,会导致测试中断或结果不准确。客户机为计算机设备,例如可以是装载有测试插件及相关测试软件的电脑、智能手机等设备。
API(Application Programming Interface)为应用程序接口,是一些预先定义的接口(如函数、HTTP接口),或指软件系统不同组成部分衔接的约定。API接口用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码或理解内部工作机制的细节。
通过调用软件商店服务器端PAI的http类接口,并配置线程组名称、线程数、循环次数、调度器等参数,其中,线程数指的是虚拟用户数量;循环次数为每个线程发送请求的次数;调度器用于设置线程组启动的开始时间和结束时间,实际操作时,需要勾选循环次数为无限次。在配置完成后,即可使用户通过相应的计算机设备对软件商店的服务器端进行访问,以准备良好的测试环境。
步骤S2:根据预先设定的线程组的配置参数对服务器端的各测试场景进行并发测试,以获取服务器端的各项性能数据。
其中,预先设定的线程配置参数包括:设定并发数;访问接口事件;设定响应值事件;监控事件。其中,并发数是指同时访问服务器端站点的连接数量,设定并发数量即可检测软件商店服务器端的带载能力;访问接口事件是指jmeter软件模拟用户使用软件商店查询数据时,软件商店调用访问数据的接口;设定响应值事件包括在测试过程中服务器端对访问设备的响应时间、每秒事物数、最大响应时间、最小响应时间、异常率、CPU占用率及内存占用率等,例如设置响应时间小于5s,异常率小于0.5%,资源占用率小于90%,根据测试指标对数据进行判断并分析结果得出压测结论;监控事件是指查看jmeter中的聚合报告的各项结果及查看服务器端实时的资源占用率。
根据软件商店用户习惯,常见的测试场景包括软件商店中各个应用软件的评分评论、查询应用软件的信息、对软件进行下载升级。
具体的测试场景包括如下几个方面:
场景1:访问软件商店访问数据查询接口,访问软件商店服务器端做数据交互,查询某个时间段后有修改的全部应用。从100并发开始,压测30分钟,每次递增100直至达到系统瓶颈。
场景2:访问软件商店仓库源模拟用户下载和升级,选取不同分类的软件,如社交类、影音类、办公类、游戏类等,进行综合压测30分钟,并发数总和从100开始,每次递增100直至达到系统瓶颈。
场景3:访问软件商店仓库源模拟用户下载和升级,选取不同大小的软件,如10M大小以内软件、11M-100M大小软件、100M-1000M大小软件、1G大小以上软件等,进行综合压测30分钟,并发数总和从100开始,每次递增100直至达到系统瓶颈。
场景4:场景1、2、3进行综合压测,由于数据交互往往在一瞬间就可完成,压力不大,所以权重降低,下载和升级为高并发压力场景,增高场景2和场景3的权重,分配不同权重进行几组综合压测30分钟,并发数总和从100开始,每次递增100直至达到系统瓶颈。
场景5:测试时可能会出现一台客户端机器压力上不去的情况,所以增加客户端机器数量,对以上场景进行综合压测。
场景6:稳定性测试,选取场景4中表现最好的并发量进行压测7*12小时或7*24小时,查看服务器端稳定性。
步骤S3:根据服务器端的各项性能数据,调整对服务器端并发测试的强度。
其中,服务器端的各项性能数据包括平均响应时间、异常率、吞吐量和各个线程组的资源占用率。调整对服务器端并发测试的强度包括调整检测设备的线程数和并发数,以实现对软件商店服务器端带载能力的检测。
步骤S4:经过预先设定的测试时间后,判断服务器端的各项性能数据是否达到预先设定的与服务器端各项性能数据相对应的测试指标,若是,测试通过;否则,测试失败。
由于软件商店软件的下载和升级属于长连接,因此不制定响应时间指标。只针对资源使用率与请求错误率做指标定义,具体的测试指标为:资源使用率小于90%,错误率小于0.5%。
步骤S5:记录服务器端性能数据的变化历程和服务器端的运行日志,生成并发测试操作报告。
其中,步骤S5贯穿至步骤S1~步骤S4,即与其他步骤不存在先后关系。
本申请实施例的测试过程如下:
1)使用Jmeter创建线程组1,添加http请求,填写数据查询接口,设置并发数与循环数后点击启动。
2)创建线程组2,添加http请求,填写仓库源地址,由于jmeter不能直接下载文件,需要添加BeanShell后置处理程序下载请求,设置完成后设置并发数与循环数后点击启动。
3)在线程组2中添加多个http请求,填写不同的仓库源软件地址,设置并发数后点击启动。
4)按照权重设置线程1和2的并发数,点击启动。
5)增加客户机数量,重复步骤S1-S4。
6)选取场景4中表现最好的并发量进行压测7*12小时或7*24小时。
测试结果查看过程如下:
1)使用Jmeter设置察看结果树,可查询到返回报文是否准确,若有正确返回,说明压测正常;但由于察看结果树占用资源较高,查看返回后建议关闭此项。
2)设置聚合报告,查看测试平均响应时间、异常率、吞吐量,收集各指标。
3)服务器安装nmon工具,使用命令查看CPU、内存、网络等资源占用率。单个场景压测以半个小时结果为准,需要全面监控系统资源情况,响应时间,以及数据库是否存在异常。
4)根据测试结果异常率、资源占有率得出系统瓶颈。
基于同一发明构思,本申请还公开了一种基于国产操作系统软件商店的并发测试装置,其主要包括“服务器端环境模块”,“客户端测试模块”以及“结果收集判断模块”。其中“服务器端环境模块”对客户端发送的数据进行接受并处理,收集测试结果;“客户端测试模块”通过代码建立接口,客户端用http网页方式直接访问客户端数据处理后台,模拟真实用户访问软件商店进行的操作进行如下场景的并发测试:单客户端仅数据访问、单客户端仅数据下载更新、单客户端数据访问同时下载更新、多客户端数据访问同时下载更新、多客户端分权重进行压力测试、多客户端取优进行压测168h等;“结果收集判断模块”通过服务器端被访问过程收集服务器端被访问数据时的cpu、内存资源占用率及计算出错率,利用数据来对整个测试结果做出判断。
具体的,服务器端环境模块,用于调用软件商店服务器端的API接口;
客户端测试模块,包括测试单元和判定单元,所述测试单元根据预先设定的线程组的配置参数对服务器端的各测试场景进行并发测试,以获取服务器端的各项性能数据;所述判定单元用于在特定的时间内,判断服务器端的各项性能数据是否达到预先设定的与服务器端各项性能数据相对应的检测指标,若是,测试通过;否则,测试失败;
结果收集模块,用于记录服务器端性能数据的变化历程和服务器端的运行日志,生成并发测试操作报告。
进一步地,所述测试场景包括:软件商店评分评论、查询信息、下载升级。
进一步地,所述线程组的配置参数包括:指定并发数;访问接口事件;设定响应值事件;监控事件。
进一步地,所述服务器端的各项性能数据包括服务器端的平均响应时间、异常率、吞吐量和各个线程组的资源占用率。
在本申请所提供的实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
以上所述,以上实施例仅用以对本申请的技术方案进行了详细介绍,但以上实施例的说明只是用于帮助理解本申请的方法及其核心思想,不应理解为对本申请的限制。本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。
机译: 基于位置信息和基于虚拟货币的辅助付款过程的,在离线附属商店中提供有关产品信息的付款服务装置及其操作方法
机译: 燃油汽车加热器独立的车辆加热器,一种操作方法,包括基于操作参数控制空气输送装置,以及基于另一个操作参数控制燃料输送装置
机译: 基于人群资金的商店启动服务管理装置及其操作方法