1:负载测试
目的: 找到系统最大有效用户量
加压策略: 阶梯加压
性能指标: 响应时间,资源利用率等
Jmeter的阶梯加压:
- This group will start:最大启动用户数量
- First wait for:时延0s
- Then start:首次启动用户数
- Next add:每次加压的用户数量
- threads every:每次添加用户数量
- using ramp-up:多少S启动这么多用户
- Then hold load for:最大用户并发时保持的时长
- Finally stop:每次关闭用户数量
- threads every:多少S关闭指定数量的用户
监听器:
- jp@gc - Active Threads Over Time:实际并发用户数量
- jp@gc - Response Times Over Time:响应时间
- jp@gc - Transactions per Second:每秒事务量
- jp@gc - PerfMon Metrics Collector 需要在服务器开启ServerAgent服务
- Host/IP监控的服务器的IP地址
- Port监控的服务器的端口号,建议4444
- Metric to collect 监控的指标 比如 CPU Memory(内存) DisksI/O(硬盘) NetWorkI/O(网络)
- Metric parameter 监控的规则 used(使用的) free(空闲的) total(总数)
2:压力测试
目的: 在一定的软件,硬件网络环境下,超过最佳有效用户量的情况下,对系统继续施加压力,直到系统崩溃或者不再处理任何请求,找到系统的瓶颈
加压策略: 阶梯加压
3:稳定性测试
目的: 在最佳有效用户的情况下,长时间的运行,测试系统能否长期的正常运行
加压策略:
4:并发测试
目的: 模拟多个用户同时访问同一个应用,同一个存储过程,同一个功能,同一个数据记录,判断系统是否存在并发问题
并发问题:
5:失效恢复测试
目的: 针对高可用系统(有冗余备份或者负载均衡的系统)进行的失效恢复测试
测试过程: 在测试过程中,人为的关闭其中一台服务器,查看业务能否平滑切换到其它服务器,恢复后,查看该服务器能否正常提供业务功能
6:基准测试
目的: 不同软硬件环境对系统的影响
测试过程: 在一定的软硬件环境下测试一组性能数据,建立一个已知的性能水平作为基线,改变当前的软硬件环境(一次只能改变一次环境),再测一组性能数据,比较两组性能数据的区别,查看性能的变化过程
举例:
- centos7 4核CPU 16G内存 1T硬盘 基线
- redhat 4核CPU 16G内存 1T硬盘 性能数据
- centos7 8核CPU 16G内存 1T硬盘 性能数据和基线进行比较
7:配置测试
目的: 通过改变不同的配置,找到适合系统的最佳配置项
过程: 在一定的配置情况下,测试性能指标作为基线,修改某一个配置,进行性能测试,得到的性能指标和基线比较,以此找到系统的最佳配置项
比如:
- JVM配置
- 数据库连接池配置
- MQ消息队列配置
- 中间件等配置
|