nGrinder是一个免费的、开放源代码的Web性能测试工具.它本身是JAVA WEB应用程序,在Tomcat服务器中运行。
它由一个controller端和一个或多个Agent端组成。nGrinder通过用户预约的方式来开始它的测试历程,这样是确保同一时间段只有一个使用者运行测试。
用户通过web界面创建一个测试项目,运行时controller会把测试的脚本以及相关文件发送到各个agents去运行。
nGrinder的一大特点就是非常容易使用,安装也非常容易,可以做到开箱即用,测试用户也可以很容易就开始测试任务。当然,如果想执行一些
比较复杂场景的性能测试,就需要测试人员对python有一定认识。nGrinder的测试是基于一个python的测试脚本,用户按照一定规则编写测试脚本以后,
controller会将脚本以及需要的其他文件分 发到agent,用Jython执行。并在执行过程中收集运行情况、响应时间、测试目标服务器的运行情况等。
并保存这些数据生成运行报告,以供以后查看。
测试过程是基于Jython脚本来模拟浏览器或其他终端使用HTTP协议访问站点来完成的。测试过程中采集的数据将通过动态图和数据表的形式展示出来。
用户可以方便的看到tps、以及测试目标机器的cpu和内存等情况。测试结束后用户还可以通过详细的运行结果报告来分析所测试目标服务器的具体状况。
nGrinder依赖的其他开源项目
1.Grinder nGrinder主要测试和采集测试报告功能是基于Grinder开源测试框架实现的
2.Cubrid nGrinder目前所使用的开源数据库
3.Jython一个功能强大的脚步语言,它是Python语言在Java中的完全实现
4.Spring一个轻量级的功能全面的J2EE框架