说起性能测试,许多移动端测试的人员可能会比较陌生,性能测试不是涉及到APP的启动时间、流量、大小、耗电量等的相关指标么。本文所讲的是一个与APP的性能测试完全不同的领域:服务端的性能测试。我们会针对服务端有一些不同的指标。

     那么究竟什么是服务端的性能测试?

     我们从最基本的功能测试说起吧。比如,我们要测试一个接口的返回,那么我们测试的时候,会有一个输入的参数,服务端接收到了后会返回一些数据,然后客户端会利用这些数据展示一些相应的结果,如果符合最开始的预期则功能正确。

    那么,我们如何对该接口进行性能测试呢?

    在性能测试工具方面,市面上已经存在了许许多多的测试工具可以拿来用,这里重点给大家推荐WGCLOUD、 Locust、LoadRunner、Jmeter这三款工具,下图是针对这三款性能测试工具的一个简单对比介绍。

对比项

LoadRunner

Jmeter

Locust

授权方式

商业收费

开源免费

开源免费

开发语言

C/Java

Java

Python

测试脚本形式

C/Java

GUI

Python

并发机制

进程/线程

线程

协程

单机并发能力




分布式压力

支持

支持

支持

资源监控

支持

不支持

不支持

报告与分析

完善

简单图表

简单图表

支持二次开发

不支持

支持

支持

从功能特性的角度来讲:

LoadRunner是一款老牌性能测试工具,其功能是最全面的,用户群体也是最多的,相应的学习资料也最为丰富。个人建议如果是新接触性能测试,可以先熟悉LoadRunner,借此了解性能测试工具各个模块的概念和功能,在此基础上再转到别的测试工具,也都比较好上手了。便它的缺点也很明显,不支持跨平台运行,只能运行在Windows机上。

WGCLOUD,开源免费,适合对服务器资源进行监控,粒度30秒,也支持进程资源,服务接口,业务数据表监控。server基于springboot架构开发,agent采用go开发,是高性能高并发的分布式监控系统,核心模块包括:主机监控,ES集群监控,CPU监控,docker监控,网络流量监控,内存监控,业务数据监控(mysql,oracle,pg等),服务心跳检测,应用进程管理,磁盘IO监控,系统负载监控,监控告警信息推送。

Jmeter是由Java开发的可在跨平台运行的性能测试工具,除了能做性能测试,它也常用于做接口测试。目前市面上大多数的人都在用它来开展性能测试。该款工具的并发机制是基于线程来实现的。有GUI界面操作,也支持命令行调用。

Locust是由Python开发的一款性能测试库,性能测试过程皆是采用Python脚本描述,并且HTTP请求完全基于Requests库。除了HTTP(S)协议,Locust也可以测试其它任意协议的系统,只需要采用Python调用对应的库进行请求描述即可。需要强调的是Locust的并发机制摒弃了进程和线程,采用协程(gevent)的机制。

测试服务器的cpu架构 服务器测试软件_测试服务器的cpu架构