性能测试练习

Posted lilith404

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了性能测试练习相关的知识,希望对你有一定的参考价值。

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

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

  • 压力测试:强度测试也就是压力测试,压力测试主要是为了测试硬件系统是否达到需求文档设计的性能目标,譬如在一定时期内,系统的cpu利用率,内存使用率,磁盘I/O吞吐率,网络吞吐量等,压力测试和负载测试最大的差别在于测试目的不同。

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

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

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

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

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

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

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

技术图片 ———> 技术图片

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

技术图片

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

技术图片

④双击ApacheJMeter打开JMeter:

技术图片

    出现下面的界面:

技术图片

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

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

技术图片

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

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

技术图片

③运行:

CPU监测如下: 技术图片

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

技术图片

技术图片

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

技术图片

并发用户数300时:

技术图片

技术图片

用户数为1000时:

技术图片

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

技术图片

 第四部分:遇到的问题

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

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

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

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

第五部分:结果分析

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

以上是关于性能测试练习的主要内容,如果未能解决你的问题,请参考以下文章

论答系统万人大课高并发性能测试方案2018.10.30

Web功能测试练习

使用Python绘制Nginx,Redis等的性能测试图表

练习-Java输入输出之字节缓冲IO流之字节缓存流的高性能

练习-Java输入输出之字节缓冲IO流之字节缓存流的高性能

一文读懂三大性能监控流派的区别