jmeter测试服务器性能测试报告,Jmeter的性能测试

jmeter测试服务器性能测试报告,Jmeter的性能测试需要分析的系统信息需要分析的业务信息性能需求评估确定性能测试点:关键业务:确定被测项目是否属于关键业务,有哪些主要的业务逻辑点,特别是跟交易相关的功能点。例如转账,扣款等接口。如果项目(或功能点)不属于关键业务(或关键业务点)日请求量:确定被测项目各功能点的日请求量(可以统计不同时间粒度下的请求量如:小时,日,周,月)。如果日请求量很高,系统压力很大,而且又是关键业务,该项目需要做性能测试,而且关…

大家好,又见面了,我是你们的朋友全栈君。

需要分析的系统信息

需要分析的业务信息

a6dc015663a1e1c167d3dfa8d00e78bc.png

性能需求评估

88f8202f1e92998854cfa8443e874514.png

确定性能测试点:

关键业务:

确定被测项目是否属于关键业务,有哪些主要的业务逻辑点,特别是跟交易相关的功能点。例如转账,扣款等接口。如果项目(或功能点)不属于关键业务(或关键业务点)

日请求量:

确定被测项目各功能点的日请求量(可以统计不同时间粒度下的请求量如:小时,日,周,月)。如果日请求量很高,系统压力很大,而且又是关键业务,该项目需要做性能测试,而且关键业务点,可以被确定为性能点

逻辑复杂度:

判定被测项目各功能点的逻辑复杂度。如果一个主要业务的日请求量不高,但是逻辑很复杂,则也需要通过性能测试。原因是,在分布式方式的调用中,当某一个环节响应较慢,就会影响到其它环节,造成雪崩效应。

运营推广活动:

根据运营的推广计划来判定待测系统未来的压力。未雨绸缪、防患于未然、降低运营风险是性能测试的主要目标。被测系统的性能不仅能满足当前压力,更需要满足未来一定时间段内的压力。因此,事先了解运营推广计划,对性能点的制定有很大的作用。例如,运营计划做活动,要求系统每天能支撑多少 PV、多少 UV,或者一个季度后,需要能支撑多大的访问量等等数据。当新项目(或功能点)属于运营重点推广计划范畴之内,则该项目(或功能点)也需要做性能测试。

建立性能指标

fbf093ebffb86b698d92122643450794.png

a.选取核心业务流程(重要程度/频繁)

b.并发用户数

c.事物吞吐需求

d.响应时间需求

e.系统占用资源需求

f.可扩展性需求

建立系统负载模型

业务层面:

(a)核心业务流程吞吐率

(b)高峰期业务分布时段

系统负载:

(a) 高峰/平常场景吞吐率

(b)CPU/IO/MEM/NETWORK

数据来源:

(a)服务器端监控

(b)数据库日志

(c)用户提出需求

制定测试计划的实施时间和方案

预设本次性能测试各子模块的起止时间和结束时间

测试环境的配置:局域网,虚拟机,操纵系统,数据库,中间件

参与人员:谁负责哪些任务,测试策略。

产出:测试方案,分析结果

搭建测试环境

测试机环境

699b4c009f148c8acff600e839733835.png

服务器环境

9b7d2fad3ae29acfe9713593033aa10a.png

测试场景设计

通过和业务部门沟通以及以往用户操作习惯,确定用户操作习惯模式,以及不同的场景用户数量,操作次数,确定测试指标,以及性能监控等

测试用例设计和脚本开发

选择LoadRuner或者Jmeter,我使用的是Jmeter。

我使用Jmeter的工具进行录制,

(PS:能直接写脚本就自己写尽量少录制,录制有时候会有干扰)

对脚本进行修改,增强脚本,让脚本更符合业务逻辑,可用性更强。

(1)参数化用户输入

(2)关联数据

(3)增加事物

(4增加检查点)

调试脚本

(1)Vugen单次回放

(2)Vugen多次回放

(3)Controller单脚本多用户

(4)Controller多脚本多用户

(5)查看回放日志

验证脚本

(1)通过检查点验证

(2)通过查看后台服务器日志验证

(3)通过测试系统查看运行后台变化

(4)利用SQL语句查询/插入/更新/修改,查看效果

测试数据准备

获取数据有两种方式:

(1)拉取生产数据,尽量保持数据一致以及量级足够

(2)利用脚本自动生成数据或者利用测试工具生成数据,(如:利用JDBC预埋数据)

a)负载测试数据:并发测试时需要多少数据?比如登录场景?

b)DB数据量大小:为了尽量符合生产场景,需要模拟线上大量数据情况,那么要往数据库里提前插入一定的数据量。

性能测试执行和管理

执行测试脚本

在已部署好的测试环境中,按照业务场景和编号,按顺序执行我们已经设计好的测试脚本

测试结果记录

根据测试采用的工具不同,结果的记录也有不同的形式;展现方式:折线图,统计图,表格等,现在大多的性能测试工具都提供比较完整的界面图形化的测试结果,当然,对于服务器的资源使用等情况,可以利用一些计数器或第三方监控工具来对其进行记录,执行完测试后,对结果进行整理分析,

02ff432194de75b1bac34af2e7ec5009.png

性能测试结果分析与调优

测试环境的系统性能分析

根据之前记录得到的测试结果,经过计算,与预定的性能指标进行对比,确定是否达到了我们需要的结果;如未达到,查看具体的瓶颈点,然后根据瓶颈点的具体数据,

瓶颈定位分析

e77f80dd7f4ec967cb176d57cd05282c.png

硬件设备对系统性能表现的影响分析

配置几个不同的测试环境,故可以根据不同测试环境的硬件资源使用状况图进行分析,确定瓶颈是再数据库服务器、应用服务器抑或其他方面,然后针对性的进行优化等操作

其他影响因素分析

影响系统性能的因素很多,可以从用户能感受到的场景分析,哪里比较慢,哪里速度尚可,这里可以根据2\5\8原则对其进行分析;

至于其他诸如网络带宽、操作动作、存储池、线程实现、服务器处理机制等一系列的影响因素,具体问题具体分析,

测试中发现的问题

在性能测试执行过程中,可能会发现某些功能上的不足或存在的缺陷,以及需要优化的地方,需要多次执行测试。

测试报告和跟踪

fa269f45be6d7467e024c92da6623795.png

性能测试工程师完成该次性能测试后,需要将测试结果进行备案,并做为下次性能测试的基线标准,具体包括性能测试结果数据、性能测试瓶颈和调优方案等。同时需要将测试过程中遇到的问题,包括代码瓶颈、配置项问题、数据问题和沟通问题,以及解决办法或解决方案,进行知识沉淀。

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。

22/2<12

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151273.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月20日 下午7:46
下一篇 2022年6月20日 下午7:46


相关推荐

  • 工作流管理系统

    工作流管理系统摘 nbsp nbsp nbsp 要随着计算机在日常工作中的广泛应用 人们的许多工作已经依靠计算机来完成 与此同时 各种类型的信息系统也被广泛使用来支持这些工作 但是这些系统基本上都是独立运行的 相互之间缺乏必要的交互 协作与感知 从而使得他们子协调多个人的活动 以协同完成某一个共同的任务反面有比较严重的不足 这也是工作流管理系统 WFMS 从九十年代以来吸引来自研究机构和产业界广泛关注的重要原因 本文首先对工作

    2026年3月19日
    2
  • Python 中 str.format() 方法详解

    Python 中 str.format() 方法详解Python 中 str format 方法详解文章目录 Python 中 str format 方法详解 0 参考资料 1 术语说明 2 简单字段名 2 1 简单字段名的说明 2 2 省略字段名 2 3 数字形式的简单字段名 2 4 变量名形式的简单字段名 2 5 简单字段名的混合使用 2 6 使用元组和字典传参 3 复合字段名 3 1 复合字段名的说明 3 2 点号的使用 3 3 方

    2026年3月26日
    2
  • 从安装潮到卸载潮,龙虾经历了什么

    从安装潮到卸载潮,龙虾经历了什么

    2026年3月16日
    3
  • Java爬虫系列二:使用HttpClient抓取页面HTML

    爬虫要想爬取需要的信息,首先第一步就要抓取到页面html内容,然后对html进行分析,获取想要的内容。上一篇随笔《Java爬虫系列一:写在开始前》中提到了HttpClient可以抓取页面内容。今天就

    2022年2月16日
    41
  • 一些JavaScript题目

    在JavaScript中,运行下面代码,sum的值是()。varsum=0;for(i=1;i<10;i++){if(i%5==0)break;sum=sum+i;}A.40B.50C.

    2021年12月21日
    40
  • oracle srvctl命令,Oracle SRVCTL使用说明

    oracle srvctl命令,Oracle SRVCTL使用说明SRVCTL是Oracle9iRAC集群配置管理的工具。本文是对SRVCTL的所有命令进行详细说明的一篇参考文档。添加数据库或实例的配置信息。在增加实例中,与-i一起指定的名字应该与INSTANCE_NAME和ORACLE_SID参数匹配。srvctladddatabase-ddatabase_name[-mdomain_name]-ooracle_home[-sspfi…

    2025年11月1日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号