我怎么做性能测试
作者:网络转载 发布时间:[ 2014/7/2 16:06:10 ] 推荐标签:性能测试 测试技术
和同事交流关于性能测试的东西,以前也做过性能测试,突然想写点自己关于如何做性能测试的认识。
基于B/S架构的系统,利用loadrunner做性能测试,利用nmon监控系统资源(用linux自带的top,vmstat等命令也可以,写一些简单的shell脚本行了)。
那么到底该怎么去做性能测试呢?
1、首先要了解被测系统的结构和有关知识的储备。
了解了被测系统,在后期性能出现异常的时候,定位相对容易一些;而且知道在测试的过程中需要监控什么。
一个简单BS系统结构图:
该系统有一下及部分组成:
APP:一台nginx,兼做web和应用服务器
Memcached:负责做数据缓存
lucene:负责做搜索
RabbitMQ:负责某些业务的队列处理
mysql:数据库服务器,一个主库,一个从库
从以上系统结构来看,要搭建和维护性能测试环境,需要的一些必要的知识。
对于APP:需要了解nginx的相关知识,怎么修改配置,在哪里看日志
对于Memcached:怎么搭建Memcached,怎么查看命中率,Memcached的作用是什么
lucene:这个lucene是干什么用的,要怎么配置
RabbitMQ:MQ要如何配置,都那些业务用到了MQ。
Mysql:如何配置主从,为什么要配置主从,主从如何同步等等
在搭建环境的过程中肯定会遇到这样或那样的问题,要自己找资料,或者相关的开发人员一起解决,并注意做笔记,防止以后同样的问题再出现。
2、了解了系统结构,开始搭建测试环境,并准备数据。
测试环境尽量要和生产环境的结构保持一致,还有配置文件等也要保持一致,这样能保证性能测试的结果更加真实和接近生产环境。
数据准备一定要充足,而且数据量要大于等于生产环境,这样能更真实的模拟生产环境。比如对一个select语句而言,10W的数据,和1000W的数据,查询时间肯定有差别。如果数据量太小不能反映真实情况下性能了。(可以把线上的数据导入到测试环境,但是要注意把用户比较隐私的数据都替换掉)
如果有可能的话,测试环境的数据要比生产环境多出20%,做一些性能上边的冗余,防止发生突然的性能尖峰。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11