https://wangym.iteye.com/blog/731729

http://www.cnblogs.com/yangxia-test/p/4019541.html

https://blog.csdn.net/qq_34021712/article/details/78870407

http://www.51testing.com/html/82/n-854182-2.html

https://www.cnblogs.com/zhaoxd07/p/4895224.html

--添包和打包

https://blog.csdn.net/qq_34021712/article/details/78871739

https://www.cnblogs.com/yulia/p/6824058.html

1、核心流程

1.创建一个Java工程;

2.将JMeter的lib目录下的jar文件添加进此工程的Build Path;

3.创建一个类并实现JavaSamplerClient接口或继承AbstractJavaSamplerClient,并重写

public Arguments getDefaultParameters();设置可用参数及的默认值;
public void setupTest(JavaSamplerContext arg0):每个线程测试前执行一次,做一些初始化工作;
public SampleResult runTest(JavaSamplerContext arg0):开始测试,从arg0参数可以获得参数值;
public void teardownTest(JavaSamplerContext arg0):测试结束时调用;

4.Export为Runnable Jar File;

5.将此jar包放入JMETER_HOME\lib\ext目录;

6.以管理员身份打开JMeter;

7.创建线程组、Java Request、查看结果树,进行测试

package org.test;

public class Hello {

    public  String sayHello(){
return "hello";
} public String sayHelloToPerson(String s){
if (s == null || s.equals(""))
s="nobady";
return (new StringBuffer()).append("hello").append(s).toString();
} public int sum (int a ,int b ){
return a+b;
}
}
package org.test;

import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.protocol.java.sampler.AbstractJavaSamplerClient;
import org.apache.jmeter.protocol.java.sampler.JavaSamplerContext;
import org.apache.jmeter.samplers.SampleResult; public class perftest extends AbstractJavaSamplerClient {
private String a;
private String b;
private String resultData; private static long start = 0;
private static long end = 0;
// JMeter测试用例入口
@Override
public SampleResult runTest(JavaSamplerContext arg0) {
a=arg0.getParameter("num1");
b=arg0.getParameter("num2");
SampleResult sr=new SampleResult();
sr.setSampleLabel("java请求哦");
try{
sr.sampleStart();//jmeter开始统计响应时间标记 Hello test=new Hello();
// 通过下面的操作就可以将被测方法的响应输出到Jmeter的察看结果树中的响应数据里面了。
resultData=String.valueOf(test.sum(Integer.parseInt(a),Integer.parseInt(b)));
if (resultData != null && resultData.length() > 0){ sr.setResponseData("结果是"+resultData,null);
sr.setDataType(SampleResult.TEXT); }
sr.setSuccessful(true); }catch (Throwable e){ sr.setSuccessful(false );
e.printStackTrace(); }
finally {
sr.sampleEnd();// jmeter 结束统计响应时间标记 }
return null;
}
// 这个方法是用来自定义java方法入参的。
// params.addArgument("num1","");表示入参名字叫num1,默认值为空。
//JMeter界面中可手工输入参数,代码里面通过此方法获取
public Arguments getDefaultParameters() { Arguments params = new Arguments();
params.addArgument("num1","");//设置参数,并赋予默认值0
params.addArgument("num2", "");//设置参数,并赋予默认值0 return params;
}
//执行runTest()方法前会调用此方法,可放一些初始化代码
public void setupTest(JavaSamplerContext arg0){ // 开始时间
start = System.currentTimeMillis(); }
//执行runTest()方法后会调用此方法.
public void teardownTest(JavaSamplerContext arg0) {
//结束时间
end = System.currentTimeMillis();
// 总体耗时
System.err.println("cost time:" + (end - start) / 1000);
} /* public static void main(String[] args) {
Arguments params =new Arguments();
params.addArgument("num1","1");
params.addArgument("num2","2");
JavaSamplerContext arg0 = new JavaSamplerContext(params);
perftest test = new perftest();
test.setupTest(arg0);
test.runTest(arg0);
test.teardownTest(arg0); }*/
}

jmeter java requst请求的更多相关文章

  1. JMeter处理jdbc请求后的响应结果

    JMeter如果进行JDBC请求,请求后的响应结果如何给下一个请求用(也就是传说中的关联),于是研究了一下,下面将学习的成果做个记录: 1.添加 "JDBC Connection Confi ...

  2. 转:应用JMeter测试solr请求

    使用JMeter测试solr请求 一.安装JMeter 在官网http://jmeter.apache.org/download_jmeter.cgi下载JMeter 直接解压JMeter安装包 Li ...

  3. jmeter 发送http请求,并把获取到的请求的订单信息保存到文件中

    有一个任务,需要频繁发送订单请求,并分析订单请求中有没有存在重复订单号,思路是用jmeter 发送http请求,使用正则表达式获取到订单号,并把订单号和线程号作为参数提供给java请求,在java请求 ...

  4. Jmeter代理服务器录制请求

    1.文档前提说明 1)本文使用jmeter的版本为 apache-jmeter-2.13 及以上版本 2)java版本要求在 1.8.0 以上 注:jmeter版本一般和java相应的版本一起使用,如 ...

  5. 转 jmeter录制https请求

    jmeter录制https请求  文章转自:https://www.cnblogs.com/zhengna/p/10180998.html 工具:Jmeter4.0 + Java1.8 需求:对某ht ...

  6. Java HTTP请求

    注意:java  http请求要放在 try catch里面,该过程是一个阻塞过程,所以需要新建一个线程进行处理 try { HttpPost request = new HttpPost(URL); ...

  7. jmeter测试HTTP请求

    HTTP超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必须遵守这个标准.(详情参考看一下百科) HTTP发送请求有GE ...

  8. java读取请求中body数据

    java读取请求中body数据 /** * 获取request中body数据 * * @author lifq * * 2017年2月24日 下午2:29:06 * @throws IOExcepti ...

  9. Jmeter发送JDBC请求

    下午花了两个小时研究了一下Jmeter发送JDBC请求,现在把基本操作流程分享一下. 做JDBC请求,首先需要两个jar包:mysql驱动-mysql-connector-java-5.1.13-bi ...

随机推荐

  1. 引用:使用grunt 压缩 合并js、css文件

    引用:https://www.jianshu.com/p/08c7babdec65 压缩 js 文件 1.创建一个目录 名为grunt   目录.png 2.在grunt目录下创建一个 src目录,存 ...

  2. php composer windows安装

    2018年6月22日10:40:49 笔记 1.先下载Composer-Setup.exe,下载地址:http://docs.phpcomposer.com/00-intro.html#Install ...

  3. 写一篇博文介绍JSP

    一.JSP概述 JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导.许多公司参与一起建立的 ...

  4. k8s-No.1-概述与架构

    本章目录 k8s概述 k8s系统架构 k8s工作流程图 一  概述 k8s是什么 k8s是谷歌公司基于内部容器管理系统borg开源出的一个容器集群管理工具,它是用go语言开发,提供了容器的应用部署,规 ...

  5. 在python项目中导出项目依赖的模块信息

    1.安装pipreqs pip install pipreqs 2.导出requriements.txt文件 在windows中,终端切换到项目所在的文件夹下: 运行: pipreqs ./ 如果遇到 ...

  6. 剑指offer-扑克牌顺子

    题目描述 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决 ...

  7. 框架及其技术(Android)

    Log框架: Logger: 简单,漂亮,强大的Android日志工具 Hugo:    在调试版本上注解的触发方法进行日志记录 Timber: 一个小的,可扩展的日志工具 响应式编程: RxJava ...

  8. python之进程,线程,协程简单理解

    进程:资源单位,由操作系统控制调度.正在执行的一个程序或者过程,进程之间不共享资源,进程间通讯手段:管道,队列,信号量等.多用于计算密集型场景,如金融计算 线程:是cpu的最小执行单位,由操作系统控制 ...

  9. 北京大学Cousera学习笔记--8-计算导论与C语言基础--C的运算部分

    赋值运算符 1.两边类型不同:赋值时要进行类型转换,右边要转换到左边 2.长数赋值短数 最后的部分截断赋值给短数 3.短数赋给长数 数不变 4.符号位赋值 --计算机不区分符号位数字位,直接赋值 表达 ...

  10. Maven 学习笔记-maven属性

    Maven有六类属性: 1)内置属性 主要有两个常用内置属性 ${basedir}:表示项目根目录,即包含pom.xml文件的目录: ${version}:表示项目版本: 2)POM属性 ${M2_H ...