第一部分:性能测试的类型,它们之间什么关系?

    性能测试类型包括负载测试,压力测试,容量测试等。
  • 负载测试:负载测试是一种主要为了测试软件系统是否达到需求文档设计的目标,譬如软件在一定时期内,最大支持多少并发用户数,软件请求出错率等,测试的主要是软件系统的性能。

    SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。
  • 压力测试:强度测试也就是压力测试,压力测试主要是为了测试硬件系统是否达到需求文档设计的性能目标,譬如在一定时期内,系统的cpu利用率,内存使用率,磁盘I/O吞吐率,网络吞吐量等,压力测试和负载测试最大的差别在于测试目的不同。

  • 容量测试:确定系统最大承受量,譬如系统最大用户数,最大存储量,最多处理的数据流量等。

  • 并发测试:通过模拟用户并发访问,测试多用户并发访问同一个软件、同一个模块或者数据记录时是否存在死锁或其者性它的性能问题。

  • 可靠性测试:在给系统加载一定业务压力的情况下,使系统运行一段时间,以此检测系统是否稳定。

  • 配置测试:通过对被测系统的软/硬件环境的调整,了解各种不同方法对软件系统的性能影响的程度,从而找到系统各项资源的最优分配原则。

    性能测试主要是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。

第二部分:搭建并配置JMeter的性能测试环境

①首先从网上找到JMeter下载的资源,将以下两个东西复制到apache-jmeter中:

性能测试练习 随笔 第1张 ———> 性能测试练习 随笔 第2张

②将监控服务器的ServerAgent拷贝到需要监控的服务器中:

性能测试练习 随笔 第3张

③以本机作为服务器,启动ServerAgent,启动端口默认为4444:

性能测试练习 随笔 第4张

④双击ApacheJMeter打开JMeter:

性能测试练习 随笔 第5张

    出现下面的界面:

性能测试练习 随笔 第6张

第三部分:选择一个Web应用系统开展性能测试,我选择了学校的教务管理系统

①增加监听器控件用来监控系统资源:

性能测试练习 随笔 第7张

②添加循环控制器,定时器,各种原件(由于电脑卡死,所以重新制作了一个):

在采样器中填写教导管理系统的网址:

性能测试练习 随笔 第8张

③运行:

CPU监测如下: 性能测试练习 随笔 第9张

聚合报告中数据还在不断地更新:

性能测试练习 随笔 第10张

性能测试练习 随笔 第11张

④测试多组负载,并发用户数100时:

性能测试练习 随笔 第12张

并发用户数300时:

性能测试练习 随笔 第13张

性能测试练习 随笔 第14张

用户数为1000时:

性能测试练习 随笔 第15张

用户数到了1000的时候,连停止测试都要一会儿时间:

性能测试练习 随笔 第16张

 第四部分:遇到的问题

  • JDK版本不一致:从网上下载相应版本的JDK

  • 监测CPU的图片一直都无法加载出来:没有填写数据地址

  • 测试时电脑卡死:完全就是数值设置错误,改正就好了

  • 监测CPU的端口号被墙:适当的关闭了墙

第五部分:结果分析

由以上的的测试来看,当用户数为300时,错误率就有5.68%了,教务管理系统的性能还是有待改进的.

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄