Ngrinder安装配置 idea开发 压测groovy脚本项目教程

  • 时间:2025-11-21 22:02 作者: 来源: 阅读:0
  • 扫一扫,手机访问
摘要:1.下载软件 开发软件IntelliJ IDEA Apache:apache-tomcat-8.5.65 Ngrinder:ngrinder-controller-3.4.3.war Groovy: apache-groovy-sdk-2.4.21.zip2.安装配置软件 1)先安装IDEA软件 ,这个大家都知道,不再赘述2)配置Apache Tomcat软件:第一将下载的tomcat:apach


1.下载软件

开发软件IntelliJ IDEA

Apache:apache-tomcat-8.5.65

Ngrinder:ngrinder-controller-3.4.3.war

Groovy: apache-groovy-sdk-2.4.21.zip

2.安装配置软件

1)先安装IDEA软件 ,这个大家都知道,不再赘述

2)配置Apache Tomcat软件:

第一将下载的tomcat:apache-tomcat-8.5.65 解压到一个目录,例如:d:soft omcat8

然后右键我的电脑,点击属性-》点击高级系统设置-》点击高级-》点击环境变量


Ngrinder安装配置 idea开发 压测groovy脚本项目教程


在打开的页面中,选择系统变量点击新建,名称:CATALINA_HOME 值为:tomcat解压的目录,我这里是d:soft omcat8,然后将:%CATALINA_HOME%in; 再加入系统的 path 环境变量中,完成后点击确定

最后安装apache服务:

cmd进入tomcat解压的d:soft omcat8in目录,输入service.bat install 即可安装成功,同样service.bat remove可以移除注册服务

3)安装ngrinder

把下载的
ngrinder-controller-3.4.3.war放到tomcat的webapps目录下,我这里是:d:soft omcat8webapps

启动Tomcat

进入到tomcat的bin目录,d:soft omcat8in,点击startup.bat 启动tomcat

3.nGrinder 简单使用

3.1 启动tomcat后,访问url地址

http://127.0.0.1:8088/ngrinder-controller-3.4.3/login

使用默认账号密码:admin/admin登录 ,进入后,可以自行查看各个功能。

3.2 下载代理
ngrinder-agent-3.4.3-127.0.0.1.tar

打开nGrinder首页后,默认账号admin密码admin进入,点击右上角的admin===>Download Agent.下载Agent,并解压包,运行run_agent.bat(win下)或者run_agent.sh(linux下)便可。

这时回到nGrinder平台,点击admin===> Agent Management,可以查看到刚新增的代理,以及代理机器上的ip等信息。

nGrinder可以通过简单方式就可以做到集群

3.3 下载监控
ngrinder-monitor-3.4.3.tar

同样点击右上角的admin===>Download Monitor,解压运行run_monitor.bat或者run_monitor.sh文件,便可以,具体检查得等后续跑脚本时才能看出

4.使用idea软件开发groovy压测脚本

4.1创建groovy项目

Ngrinder安装配置 idea开发 压测groovy脚本项目教程

4.2把以下jar包导入项目即可

Ngrinder安装配置 idea开发 压测groovy脚本项目教程

4.3 编写脚本

Ngrinder安装配置 idea开发 压测groovy脚本项目教程

4.4 脚本实例1:如下

package yace;

import static net.grinder.script.Grinder.grinder;

import static org.junit.Assert.*;

import static org.hamcrest.Matchers.*;

import net.grinder.plugin.http.HTTPRequest;

import net.grinder.plugin.http.HTTPPluginControl;

import net.grinder.script.GTest;

import net.grinder.script.Grinder;

import net.grinder.scriptengine.groovy.junit.GrinderRunner;

import net.grinder.scriptengine.groovy.junit.annotation.BeforeProcess;

import net.grinder.scriptengine.groovy.junit.annotation.BeforeThread;

import org.junit.Before;

import org.junit.Test;

import org.junit.runner.RunWith;

import java.util.Date;

import java.util.List;

import java.util.ArrayList;

import HTTPClient.Cookie;

import HTTPClient.CookieModule;

import HTTPClient.HTTPResponse;

import HTTPClient.NVPair;

@RunWith(GrinderRunner)

class TestRunner1 {

public static GTest test;

public static HTTPRequest request;

public static NVPair[] headers = [];

public static NVPair[] params = [];

public static Cookie[] cookies = [];

@BeforeProcess

public static void beforeProcess() {

HTTPPluginControl.getConnectionDefaults().timeout = 6000;

test = new GTest(1, "www.baidu.com");

request = new HTTPRequest();

grinder.logger.info("before process.");

}

@BeforeThread

public void beforeThread() {

test.record(this, "test");

grinder.statistics.delayReports=true;

grinder.logger.info("before thread.");

}

@Before

public void before() {

request.setHeaders(headers);

cookies.each { CookieModule.addCookie(it, HTTPPluginControl.getThreadHTTPClientContext()) };

grinder.logger.info("before thread. init headers and cookies");

}

@Test

public void test(){

HTTPResponse result = request.GET("http://www.baidu.com/", params);

if (result.StatusCode == 301 || result.StatusCode == 302) {

grinder.logger.warn("Warning. The response may not be correct. The response code was {}.", result.StatusCode);

} else {

assertThat(result.StatusCode, is(200));

}

}

}

4.5 编译运行

首次编译运行报错

java.lang.RuntimeException: Please add

-javaagent:F:projectyacelibgrinder-dcr-agent-3.9.1.jar

in 'Run As JUnit' vm argument.

需要把-javaagent:F:projectyacelib
grinder-dcr-agent-3.9.1.jar添加到idea运行配置里面的vm options里面

Ngrinder安装配置 idea开发 压测groovy脚本项目教程

成功运行就可以编写压测脚本了,祝你压测越来越顺利。

想要测试项目的关注私信我。


注意一下:如果版本不对,可能会报错:

java.lang.UnsupportedOperationException

最后大家有啥问题欢迎大家在留言区留言。

  • 全部评论(0)
最新发布的资讯信息
【系统环境|】UV vs pyenv:谁才是更强的 Python 管理工具?(2025-11-21 23:07)
【系统环境|】7种 Python 虚拟环境工具全面对比:新手应该选择哪种(2025-11-21 23:06)
【系统环境|】Python pyQt5 适于新手上路(第一篇 环境和配置)(2025-11-21 23:06)
【系统环境|】pyhon基础-(一)开发环境搭建(2025-11-21 23:05)
【系统环境|】Markdown简洁高效的文本标记语言,技术人的写作利器之扩展语法(2025-11-21 23:05)
【系统环境|】html开发笔记06- 字体标签和文字标签(2025-11-21 23:04)
【系统环境|】jQuery HTML代码/文本(2025-11-21 23:04)
【系统环境|】QT5.9.9生成并调用自己的DLL(2025-11-21 23:03)
【系统环境|】C#调用C++常用的两种方式(2025-11-21 23:03)
【系统环境|】科普 | 聊聊COD吃鸡之余,发现个强力清理注册表软件(2025-11-21 23:02)
手机二维码手机访问领取大礼包
返回顶部