Web性能测试工具
1、JMeter。这个也不用多介绍,基本属于做过Web性能测试都会接触的工具。Apache旗下的开源项目,属于一个Java桌面应用程序。优势是开源免费,扩展能力强。自身性能是硬伤。
2、Locust。Web性能测试的蝗药师,开源免费,并发能力强。特点:使用纯粹的Python编写脚本;单机可支持千级并发压力,且支持分布式;Web管理界面;可以测试任何系统;简单耐玩。
3、Grinder/nGrinder。Grinder是Java开发的负载测试框架,开源免费。支持录制、修改、运行方式的性能测试。nGrinder是韩国NHN公司在Grinder基础上开发的,扩展了多个功能,支持多个并发测试。虽然是商业开发, 但也开源免费。
4、Gatling。Scala开发的开源压力测试工具。目前仅支持HTTP协议(其他需要自己扩展),可以用来测试Web应用程序和RESTful服务。Gatling使用了Akka Actors和Async IO,并发性能非常可观。Gatling的问题是熟悉Scala的人比较少,而且目前不支持分布式加压。
5、Taurus。Taurus更像一个积木盒子,将各种开源负载测试工具和功能测试工具堆积起来使用,支持JMeter、Gatling、Locust、Grinder和Selenium WebDriver。开源免费。
6、Tsung。Tsung是erlang开发的一个开源的多协议分布式负载测试工具,它能用来压力测试HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP 和 Jabber/XMPP的服务器。它可以分布在多个客户机,并能轻松够模拟成千上万的虚拟用户数并发。
7、Siege。C语言编写的开源压力/回归测试和基准实用程序,支持基本认证、cookie、HTTP和HTTPS协议。允许使用可配置数量的并发模拟用户测试Web服务器,报告事务总数、已用时间、传输的字节数、响应时间、事务速率、并发性和服务器响应。
8、http-Load。来自ACME实验室的自由负载测试应用程序,一个简单的Linux命令行工具,支持HTTP和HTTPS。工具只有79K,好下载,易安装。
9、Web bench。号称简洁而优美的压力测试工具。 其源代码总共才500多行,全部使用C语言编写,最多可以模拟3万个并发连接。
10、Apache Bench。经常被简称为ab,是一种用于测试Apache超文本传输协议(HTTP)服务器的工具。ab没有Jmeter、LoadRunner那样有各种场景设计、各种图形报告和监控,只需一个命令即可,有输出描述,可以简单的进行一些压力测试。
11、LoadGen。基于Java开发的负载工具。被看做是JMeter的升级版,基于用户级线程并发,旨在避免由于服务器响应时间过慢,导致负载服务真实加压的问题。
12、Multi-Mechanize。Python开发的Web性能和负载测试框架,开源免费。支持Python 2.6和2.7。
13、fwptt。开源Web负载测试工具,由Bogdan Damian开发。支持Fiddler抓包后导入,通过C#对链接发起测试。支持处理Ajax。
14、Curl-Loader。用C语言编写的开源工具,模拟数万个HTTP/HTTPS和FTP/FTPS客户端的应用程序负载和行为,每个客户端都有自己的源IP地址。
15、httperf。C语言开发的开源Web服务器性能/基准测试工具。 提供灵活的工具,用于生成各种HTTP工作负载和测量服务器性能。
16、Web Polygraph。C++开发的开源基准测试工具。用于缓存代理,源服务器加速器,L4 / 7交换机和其他Web中间件。用于高性能HTTP客户端和服务器,实际流量生成和内容模拟。
17、OpenSTA。Open System Testing Architecture是一个免费的开源Web负载/压力测试应用程序。 利用基于CORBA的分布式软件架构,提供Windows下OpenSTA二进制文件。
18、Legion。Load Tester by Web Performance的开源版本。支持所有浏览器和Web服务器,移动,AJAX,JSON,Web服务,XML。支持Selenium和JavaScript脚本。
19、wrk。wrk是一款简单的HTTP压测工具,托管在Github上。wrk 的一个很好的特性就是能用很少的线程压出很大的并发量. 原因是它使用了一些操作系统特定的高性能 io 机制, 比如 select, epoll, kqueue 等.
20、LoadSim。LoadSim是一个Web应用程序负载模拟器。 它允许您创建模拟并使您的网络服务器运行这些模拟。纯Java实现,支持cookies,支持测试中使用变量,支持真实的网络延迟以模拟真实场景。