测试内容
主要为接口测试,包括WEB接口、APP接口等,可分为以下几个方面的内容。
- 性能测试:满足日常服务需求
- 压力测试:满足高峰服务需求
- 负载测试:满足超负荷服务需求
测试工具
使用Jmeter发起WEB请求进行HTTP性能测试,Jmeter启动界面如下:
线程组的设置项主要有线程数、线程启动时间、循环次数。
测试步骤
环境部署
- 测试环境:更新测试代码、修改测试配置、启动测试环境下的相关服务,并关闭不相关服务。
- 被测环境:更新被测代码、修改被测配置、启动被测环境下的相关服务,并关闭不相关服务。
用例编写
使用Jmeter进行HTTP性能测试,Jmeter测试用例如下:
Jmeter工具包含以下4个部分:
- 负载发生器:用于产生负载,通常以多线程或是多进程的方式模拟用户行为。
- 用户运行器:通常是一个脚本运行引擎,用户运行器附加在线程或进程上,根据脚本要求模拟指定的用户行为。
- 资源生成器:用于生成测试过程中服务器、负载机的资源数据。
- 报表生成器:根据测试中霍地的数据生成报表,提供可视化的数据显示方式。
测试结果
通过添加监听器可查看Summary Report,包括Http请求名称、每个请求的序号、请求响应时间、QPS、请求的字节数等。
通过添加监听器查看请求的实时QPS曲线(Query Per Second)
通过添加监听器查看实时响应时间曲线,当曲线趋于平稳时,可通过数据评估服务器稳定处理请求的能力。
测试分析
- 日志分析:包括一些基本服务,如nginx、php等,以及测试服务和被测服务。
- 性能监测:对服务器的硬件资源进行实时监测,采用ZABBIX等工具或直接使用linux命令。
- 数据分析:对WEB网站的uv、pv等进行分析。