在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
本文将告诉大家在编写一个http接口性能测试方案时,测试过程的关注点有哪些流程?其实大概可以分为五个步骤,即准备工作、测试计划、测试脚本设计与开发、测试执行与管理和测试分析。
步骤一准备工作
1、系统基础功能验证
性能测试在什么阶段适合实施?切入点很重要!一般而言,只有在系 统基础功能测试验证完成、系统趋于稳定的情况下,才会进行性能测试,否则性能测试是无意义的。
2、测试团队组建
根据该项目的具体情况,组建一个几人的性能测试 team,其中 DBA 是必不可少的,然后需要一至几名 系统开发人员(对应前端、后台等),还有性能测试设计和分析人员、脚本开发和执行人员;在正式 开始工作 之前,应该对脚本开发和执行人员进行一些培训,或者应该由具有相关经验的人员担任。
3、工具的选择
综合系统设计、工具成本、测试团队的技能来考虑, 选择合适的测试工具,最起码应该满足一下几点:
支持对 web(这里以 web 系统为例)系统的性能测试,支持 http 和https 协议;工具运行在 Windows 平台上; 支持对 webserver、前端、数据库的性能计数器进行监控;
4、预先的业务场景分析
为了对系统性能建立直观上的认识和分析, 应对系统较重要和常用的业务场景模块进行分析,针对性的进行分析,以对接下来的测试计划设计进行准备。
步骤二、测试计划
测试计划阶段最重要的是分析用户场景,确定系统性能目标。
1、性能测试领域分析
根据对项目背景,业务的了解,确定本次性能测试要解决的问题点;是测试系统能否满足实际运行时的需要,还是目前的系统在哪些方面制约系统性能的表现,或者哪些系统因素导致系统无法跟上业务发展,确定测试领域,然后具体问题具体分析。
2、用户场景剖析和业务建模
根据对系统业务、用户活跃时间、访问频率、场景交互等各方面的分 析,整理一个业务场景表,当然其 中最好对用户操作场景、步骤进行详细的描述,为测试脚本开发提供依据。
3、确定性能目标
前面已经确定了本次性能测试的应用领域,接下来就是针对具体的领域关注点,确定性能目标(指标);其中需要和其他业务部门进行沟通协商,以及结合当前系统的响应时 间等数据,确定最终我们需要达到的响 应时间和系统资源使用率等目标;比如:登录请求到登录成功的页面响应时间不能超过 2 秒; 报表审核提交 的页面响应时间不能超过 5 秒;文件的上传、下载页面响应时间不超过 8 秒;服务器的 CPU 平均使用率小于 70%,内存使用率小于 75%;各个业务系统的响应时间和服务器资源使用情况在不同测试环境下,各指标随 负载变化的情况等。
4、制定测试计划的实施时间
预设本次性能测试各子模块的起止时间,产出,参与人员等等。
步骤三、测试脚本设计与开发
性能测试中, 测试脚本设计与开发占据了很大的时间比重。
1、测试环境设计
本次性能测试的目标是需要验证系统在实际运行环境中的性能外,还需要考虑到不同的硬件配置是否会 是制约系统性能的重要因素!因此在测试环境中,需要部署多个不同的测试环境,在不同的硬件配置上检查 应用系统的性能,并对不同配置下系统的测试结果进行分析, 得出最优结果(最适合当前系统的配置)。
这里所说的配置大概是如下几类:数据库服务器;应用服务器;负载模拟器;软件运行环境,平台。 测试环境测试数据,可以根据系统的运行预期来确定,比如需要测试的业务场景,数据多久执行一次备份转移,该业务场景涉及哪些表,每次操作数据怎样写入,写入几条, 需要多少的测试数据来使得测试环境的数据保持一致性等等。可以在首次测试数据生成时,将其导出到本地保存,在每次测试开始前导入数据, 保持一致性。
2、测试场景设计
通过和业务部门沟通以及以往用户操作习惯,确定用户操作习惯模式,以及不同的场景用户数量,操作次数,确定测试指标,以及性能监控等。
3、测试用例设计
确认测试场景后,在系统已有的操作描述上,进一步完善为可映射为 脚本的测试用例描述,用例大概内 容如下:
用例编号:查询表单_xxx_x1(命名以业务操作场景为主,简洁易懂即可) 用例条件:用户已登录、具有对应权限等
操作步骤:系统业务场景描述
4、脚本和辅助工具的开发及使用
按照用例描述,可利用工具进行录制,然后在录制的脚本中进行修改; 比如参数化、关联、检查点等等, 最后的结果使得测试脚本可用, 能达到测试要求即可;建议尽量自己写脚本来实现业务操作场景,这样对个 人技能提升较大;一句话:能写就绝不录制!!!
步骤四、测试执行与管理
在这个阶段,只需要按照之前已经设计好的业务场景、环境和测试用例脚本,部署环境,执行测试并记录结果即可。
1、建立测试环境:按照之前已经设计好的测试环境,部署对应的环境, 由运维或开发人员进行部署,检查,并仔细调整,同时保持测试环境的干净和稳定,不受外来因素影响。
2、执行测试脚本:这一点比较简单,在已部署好的测试环境中,按照业务场景和编号, 按顺序执行我们已经设计好的测试 脚本。
3、测试结果记录:根据测试采用的工具不同,结果的记录也有不同的形式;现在大多的性能测试工具都提供比较完整的界面图形化的测试结果,当然,对于服务器的资源使用等情况,可以利 用一些计数器或第三方监控工具来对其 进行记录,执行完测试后, 对结果进行整理分析。
步骤五、测试分析
1、测试环境的系统性能分析
根据我们之前记录得到的测试结果(图表、曲线等),经过计算,与 预定的性能指标进行对比,确定是否 达到了我们需要的结果;如未达到,查看具体的瓶颈点,然后根据瓶颈点的具体数据,进行具体情况具体分析(影响性能的因素很多,这一点,可以根据经验和数据表现来判断分析)。
2、硬件设备对系统性能表现的影响分析
由于之前设计了几个不同的测试环境,故可以根据不同测试环境的硬件资源使用状况图进行分析,确定瓶颈是再数据库服务器、应用服务器抑或其他方面,然后针对性的进 行优化等操作。
3、其他影响因素分析
影响系统性能的因素很多,可以从用户能感受到的场景分析,哪里比较慢,哪里速度尚可,这里可以根据 2\5\8 原则对其进行分析;至于其他诸如网络带宽、操作动作、存储池、线程实现、服务器处理机制等一系 列的影响因素,具体问题具体分析,这里就不一一表述了。
4、测试中发现的问题
在性能测试执行过程中,可能会发现某些功能上的不足或存在的缺陷,以及需要优化的地方,这也是执行多次测试的优点。
以上就是http接口性能测试流程的步骤分析,相信大家现在对整个流程已经完全了解了。觉得本文有用的同学不妨分享出去,让更多的人看到。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Mysql数据库存储的原理
Mysql是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。那么今天我们来深入分析一下Mysql数据库存储的原理。
11729
2019-07-02 15:42:41
软件测试工程师你的测试用例应该具备哪些特点?
软件测试工程师最核心的工作之一就是编写测试用例。测试用例是是测试执行的依据,也是测试具体量化的方式之一。因此在编写测试用例的过程中,一定要保障其完整性以及完善性,那一个合格的测试用例应该具备哪些特点呢?软件测试工程师应该如何编写测试用例呢?
10316
2019-08-14 10:21:21
自动化测试工具有哪些?好用的自动化测试工具推荐
为了提高工作效率和节省人力资源,自动化测试应运而生。正如古语说的那样,工欲善其事必先利其器。对于许多软件测试者来讲,好用的自动化测试工具是必不可少的。本文为大家总结了几款自动化测试工具,有Appium、Selenium、Robot、QTP,并详细地介绍了它们的优势和特点,希望对大家能够有所帮助。
5424
2019-12-24 10:16:24
自动化测试工程师成长路线规划
随着互联网产品功能的迭代更新,对软件质量和数据安全也逐渐提出了更高的要求。因此,测试在目前的地位和功能可以说是越来越不可或缺了。虽然目前的就业市场继续大量的测试人才,但是低端的测试人员还是比较饱和的。因此,要想保持自己的职场竞争力,就需要测试人员朝着更高的目标去学习和努力。本文为大家规划了一条自动化测试工程师成长路线,有需要提高自己能力的小伙伴可以了解一下。
6012
2020-02-19 09:46:06
接口测试工具有哪些?测试的原理是什么?
今天主要介绍下什么是接口测试、接口测试工具有哪些、接口的类型有哪几种、接口测试的流程及测试思路四个方面的知识。引用对方提供的接口,从而达到数据共享的目的。接口测试让前端页面或APP等调用与后端做交互。
4918
2020-03-03 12:17:23