1.1 TPS
TPS 即Transactions Per Second的缩写,每秒处理的事务数目。一个事务是指一个客户机向服务器发送请求然后服务器做出反应的过程**(完整处理,即客户端发起请求到得到响应)**。客户机在发送请求时开始计时,收到服务器响应后结束计时,以此来计算使用的时间和完成的事务个数,最终利用这些信息作出的评估分。一个事务可能对应多个请求,可以参考下数据库的事务操作。
1.2 QPS
QPS 即Queries Per Second的缩写,每秒能处理查询数目(完整处理,即客户端发起请求到得到响应)。是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。
我们从它的英文全名可以得出它是查询意思,原来在因特网上,作为域名系统服务器的机器的性能经常用每秒查询率来衡量。对应fetches/sec,即每秒的响应请求数。 虽然名义上是查询的意思,但实际上,现在习惯于对单一接口服务的处理能力用QPS进行表述(即使它并不是查询操作)。
1.3 平均处理时间(RT)
RT:响应时间,处理一次请求所需要的平均处理时间。
我们一般还会关注90%请求的的平均处理时间,因为可能因网络情况出现极端情况。
1. 开源许可: Jmeter 是完全免费的,并提供了源码可供自定义开发
2. 图形界面模式:提供了方便的图形界面来编辑和开发测试脚本
3. 平台无关:可以轻易在 windows、linux、mac 上运行
4. 多线程框架:通过线程组,能够轻易的设置不同测试的并发用户。
5. 图形测试结果:提供了图表、表格、树、文件等格式的结果显示。
6. 易于安装:jmeter 不需要安装,下载解压即可用。
7. 高扩展性:jmeter 支持用户自定义测试脚本,同样还提供了各种插件。
8. 多测试类型支持:支持性能测试、分布式测试、功能测试
9. 仿真模拟:支持多用户并发测试
10. 多协议支持:支持 http、jdbc、ldap、soap、jms、ftp 等等协议
11. 录制&回放:支持用 badboy 或 jmeter 录制,不过笔者从来不用该模式,纯手工最佳。
12. 脚本测试:jmeter 支持 beanshell 和 selenium