最近承接了项目中一些性能测试的任务,因此决定记录一下,将测试的过程和一些心得收录下来。

说起来性能测试算是软件测试行业内,有些特殊的部分。这部分的测试活动,与传统的测试任务差别是比较大的,也比较依赖工具,一定程度上性能测试被认为是测试中的“高阶”部分,跟自动化测试、安全测试等并称。

01任务情况

1、任务总览

本次平台稳定性测试的目的在于:

在服务器压力处于较饱和(达到80%系统最大TPS)压力之下,在较长时间(>8小时)之内观测服务器稳定性问题jmeter事务控制器,以及资源使用情况和异常。

2、接口情况

本次测试不调用上下游接口,只压测创建订单接口。订单表存量数据19万,接口请求方式为PUT。

3、服务器配置

02测试过程

1、测试机及工具选择

由于在前序的测试过程中,可以确定本机运行可以驱动200线程数jmeter事务控制器,达到接近系统极限吞吐量的情况。

因此本次稳定性测试决定延续使用本地PC使用仍以200线程进行测试,测试重点在于较长时间段内的稳定情况。涉及到服务器资源的监控,将决定使用插件配合进行采集,以nmon作为实时监控工具。

具体工具选择如下:

jmeter事务控制器_jmeter事务控制器_jmeter事务控制器

2、工具安装配置

由于在前序的测试过程中,可以确定本机运行可以驱动200线程数,达到接近系统极限吞吐量的情况。

这个东西真是难找,从官网下载下来中断了很多次,好在最后还是下好了。需要部署在服务器上,他会以的形式将服务器资源使用信息进行收集和发送。

是插件,配合进行服务器资源监听。

④ nmon

本例中运行的就是如下脚本文件:

jmeter事务控制器_jmeter事务控制器_jmeter事务控制器

运行成功后可以看到如下界面:

可以通过键入c/m/d/n等调出相关资源监控,如下图,分别列出了CPU,及磁盘IO:

⑤ 插件配置

在测试计划中添加监听器:

在配置界面中,添加所需要的监控项,如本例中监听了CPU//磁盘IO三项:

jmeter事务控制器_jmeter事务控制器_jmeter事务控制器

注意箭头标出的按钮,为监听具体度量的选择,本例中选择的分别是:

保持开启,那么在线程组运行开始,插件就将按照配置开始采集服务器资源数据。

03测试结果

1、聚合报告

jmeter事务控制器_jmeter事务控制器_jmeter事务控制器

总体样本数达到个,平均响应时间299,吞吐量667.5/s,错误率0,总体比较稳定。

2、TPS及资源对比

可以看到:

TPS稳定在700-800之间,偶有波动,与实验室网络环境有关。CPU在TPS峰值时处于高占用状态,基本维持在70%左右。内存占用稳定在20%。

3、结论

经过本轮初步测试,在系统TPS保持在700以上的条件下,系统表现稳定,事务成功率达100%。测试过程中,CPU保持高位占用,其它系统资源未见明显瓶颈。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注