基于nGrinder下的web网站性能测试

简介
nGrinder 看名字估计很多人就猜到跟Grinder有关系。nGrinder是韩国一家公司居于Grinder二次开发的一个性能平台。nGrinder具有 开源、易用、高可用、高扩展等特性,在Grinder基础上实现了多测试并行,通过web管理,实现了集群,同时支持Groovy和Jython脚本语言,(官方上说,Groovy的性能会更好),也实现了对目标服务的监控以及插件的扩展,简单实现更多用户虚拟用户并发(官方上说,8G内存的4核cpu机器可以支持高到8000个虚拟用户)
环境配置
一、JDK的安装配置 1、从官网下载对应系统的jdk,注意是jdk不是jre。最好从官网下载,也可以直接度娘。
2、下载完毕后,安装jdk,?直接按照安装向导的提示安装即可,安装时可以自己选择安装路径,我的安装路径是D:\java\JDK\jdk
基于nGrinder下的web网站性能测试
文章图片
jdk安装路径
3、配置环境变量:右击计算机—属性—高级系统设置—环境变量,如图

基于nGrinder下的web网站性能测试
文章图片
?在“系统变量”中,设置3项属性,JAVA_HOME,PATH,CLASSPATH(大小写无所谓),若已存在则点击“编辑”,不存在则点击“新建”;
(1)JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径D:\java\JDK\jdk
(并且后边不带分号)此路径下包括lib,bin,jre等文件夹(此变量最好设置,因为以后运行tomcat,eclipse等都需要依靠此变量),如图
基于nGrinder下的web网站性能测试
文章图片
JAVA_HOME
?(2) Path使得系统可以在任何路径下识别java命令,设为%JAVA_HOME%\bin; (注意后面有分号) 如图

基于nGrinder下的web网站性能测试
文章图片
?(3)CLASSPATH为java加载类(class or lib)路径,只有类在classpath中,java命令才能识别,设为:
.; %JAVA_HOME%\lib\dt.jar; %JAVA_HOME%\lib\tools.jar;
(要加.表示当前路径,前面有点号和分号,后边结尾也有分号。或者可以写成“.; %JAVA_HOME%\lib; ”一样的效果。),如图

基于nGrinder下的web网站性能测试
文章图片
4、环境变量配置完之后测试一下JDK是否安装成功
单击“开始”—“运行”,键入"cmd",然后分别键入命令java -version,java,javac,若出现以下类似画面表示安装成功:
基于nGrinder下的web网站性能测试
文章图片
java -version 基于nGrinder下的web网站性能测试
文章图片
java 基于nGrinder下的web网站性能测试
文章图片
javac


二、Tomcat的安装配置 1、进入官网http://tomcat.apache.org/(这里我下载的版本号为apache-tomcat-7.0.92-windows-x64)
下载Tomcat的Windows版本,下载完之后直接解压,解压到D:\java\Tomcat
2、右击我的电脑—属性—高级系统设置—环境变量,在系统变量中添加以下变量
(1)TOMCAT_HOME,该变量指向解压文件的路径,该目录下有lib、bin等文件夹。添加方法如下:
点击环境变量下的“新建”,在“变量名”中填写“TOMCAT_HOME”,在“变量值”中填写解压文件的路径,D:\java\Tomcat(后面没有分号)然后点击“确定”,如图
基于nGrinder下的web网站性能测试
文章图片
TOMCAT_HOME
(2)CATALINA_HOME,该变量的值与TOMCAT_HOME相同,设置方法同(1),如图
基于nGrinder下的web网站性能测试
文章图片
CATALINA_HOME
(3)在“系统变量”中找到Path变量,双击打开Path变量,在“变量值”的最后面添加%CATALINA_HOME%\bin (后面没有分号),如图

基于nGrinder下的web网站性能测试
文章图片
? (4)在“系统变量”中找到CLASSPath变量,双击打开CLASSPath变量,在“变量值”的最后面添加%CATALINA_HOME%\lib\servlet-api.jar(后面没有分号),如图

基于nGrinder下的web网站性能测试
文章图片
?3、单击“开始”—“运行”,键入"cmd",在控制台输入service install Tomcat7,?在系统中安装Tomcat7服务项。
基于nGrinder下的web网站性能测试
文章图片
安装Tomcat7服务 然后进入控制面板—系统和安全—管理工具—服务,找到Apache Tomcat Tomcat7服务项,右击该项,点“启动”,启动该服务,如图
基于nGrinder下的web网站性能测试
文章图片
启动Tomcat7服务 ?4、打开浏览器,地址栏输入http://localhost:8080或 http://127.0.0.1:8080
如果出现tomcat示例主页,则表示服务器安装成功,如图

基于nGrinder下的web网站性能测试
文章图片
服务器安装成功页面 5、也可以在控制台运行startup.dat和tomcat7.exe(运行时要指明绝对路径,startup.dat和tomcat7.exe在bin目录下)来测试服务器是否安装成功,如图

基于nGrinder下的web网站性能测试
文章图片
控制台运行Tomcat7服务 ?6、在控制台运行bin目录中shutdown.bat可以关闭服务器
7、若无法访问tomcat主要或者无法启动startup.dat,可能是8080端口被占用了,可以用netstat -a 命令查看一下,如图

基于nGrinder下的web网站性能测试
文章图片
查看端口号 如果8080端口被占用了,可以修改tomcat的访问端口,方法如下:找到D:\java\Tomcat\apache-tomcat-7.0.92-windows-x64\apache-tomcat-7.0.92\conf目录下的server.xml文件,打开该文件,找到以下内容

基于nGrinder下的web网站性能测试
文章图片
修改端口号 注:每次需要启动tomcat服务器都要运行startup.bat文件。如果觉得麻烦可以把服务里启动类型设置为自动。但这样开机速度会慢些。
三、nGrinder的安装配置 1、下载grinder-controller-3.3.war(地址:http://sourceforge.net/projects/ngrinder/files/ )
(1)用右侧命令运行nGrinder controller:java -jar ngrinder-controller-X.X.war然后你会看到如下的错误信息。
nGrinder requires very big PermGen memory because it includes very many libraries such asSVNKit, maven, Jetty webserver, groovy, and python. Re-run the ngrinder with the PermGen settings.
(2)nGrinder需要更多的perm-gen 内存空间,请重新用右侧命令运行nGrinder:java -XX:MaxPermSize=200m -jarngrinder-controller-3.3.war
(3)请注意,nGrinder用9090作为web端访问的端口,如果你想使用其他的端口,请增加参数配置–port port_number。
java -XX:MaxPermSize=200m -jarngrinder-controller-3.3.war --port 80
(4)当执行这个war包文件,war包中的文件会解压到~/.ngrinder/webapp文件夹中并创建默认数据文件到.ngrinder文件夹中。
如果你能在屏幕中看见下面的日志信息,说明ngridner controller已经正常启动运行。
基于nGrinder下的web网站性能测试
文章图片
启动nGrinder信息 现在可以打开浏览器访问http://localhost:9090/使用nGrinder了。
2、 把下载好的包放到Tomcat路径/webApps文件夹中
(1)将war包文件放到tomcat的webapps文件夹中,${TOMCAT_HOME}/webapps 。如果你不想通过路径ngrinder-controller访问nGrinder,可以修改war包文件的名称为war。
(2)然后打开sh或者catalina.bat将下面这行命令添加到文件头部。
JAVA_OPTS="-Xms600m -Xmx1024m -XX:MaxPermSize=200m"# for catalina.sh
set JAVA_OPTS=-Xms600m -Xmx1024m -XX:MaxPermSize=200m# for catalina.bat
(3)然后运行${TOMCAT_HOME}/startup.sh或者bat
(4)打开浏览器访问http://localhost:8080/ngrinder-controller-X.X或者http://localhost:8080如果你修改了war包文件的名称为war
3 、修改Tomcat/bin目录下的 catalina.bat文件或者catalina.sh文件头部添加如下:
set JAVA_OPTS=-Xms600m -Xmx1024m -XX:MaxPermSize=200m# for win catalina.bat
JAVA_OPTS="-Xms600m -Xmx1024m -XX:MaxPermSize=200m"# for linux catalina.sh
基于nGrinder下的web网站性能测试
文章图片
catalina.bat 4、打开浏览器访问http://localhost:9090/ngrinder-controller-X.X或者http://localhost:9090/war(如果你修改了war包文件的名称为war)【本篇测试地址是:http://localhost:9090/ngrinder】,打开nGrinder首页后,默认账号admin密码admin进入
基于nGrinder下的web网站性能测试
文章图片
nGrinder网页显示 四、安装代理
打开nGrinder首页后,默认账号admin密码admin进入,点击右上角的admin===>Download Agent.下载代理,并解压包,运行run_agent.bat(win下)或者run_agent.sh(linux下)便可。这时回到nGrinder平台,点击admin===> Agent Management,可以查看到刚新增的代理,以及代理机器上的ip等信息。nGrinder可以通过简单方式就可以做到集群。
基于nGrinder下的web网站性能测试
文章图片
启动代理 五、安装监控 同样点击右上角的admin===>Download Monitor(中文翻译有误,一样写成“下载代理”),解压运行run_monitor.bat或者run_monitor.sh文件,便可以,具体检查得等后续泡脚本时才能看出。
六、简单的测试案例
1、登录nGrinder后,你可以通过输入一个测试的url,选择Jython,然后点击Start Test执行测试,nGrinder会自动生成测试脚本
基于nGrinder下的web网站性能测试
文章图片
输入被测试网址 2、输入一个有效的测试链接,选择脚本语言(比如Jython)后,点击开始测试,进入配置页面
基于nGrinder下的web网站性能测试
文章图片
配置页面 3、测试完成后,显示如下的页面
基于nGrinder下的web网站性能测试
文章图片
测试结果 4、点击页面中的详细测试结果按钮,查看详细的测试数据
基于nGrinder下的web网站性能测试
文章图片
测试结果详情页面 七、 安装踩过的坑记录 1. 在后面验证脚本时出现:找不到或无法加载主类 Files\apache-tomcat-7.0.92\temp\jython
原因 tomcat 路径D:\Program Files\tomcatXX 中存在空格引起,把tomcat直接复制放D:\tomcatXX下问题解决
2. nGrinder 服务起不来,访问出现404错误:
原因可能本地jdk版本不支持或者tomcat版本不支持,解决方案推荐使用jdk1.8和tomcat 7.X .X版本。
基于nGrinder下的web网站性能测试
文章图片
nGrinder 服务启动异常 结果分析拓展:在详细报告里增加更多统计项
【基于nGrinder下的web网站性能测试】参考链接:nGrider性能测试操作指南

    推荐阅读