jmeter java requst请求
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请求的更多相关文章
- JMeter处理jdbc请求后的响应结果
JMeter如果进行JDBC请求,请求后的响应结果如何给下一个请求用(也就是传说中的关联),于是研究了一下,下面将学习的成果做个记录: 1.添加 "JDBC Connection Confi ...
- 转:应用JMeter测试solr请求
使用JMeter测试solr请求 一.安装JMeter 在官网http://jmeter.apache.org/download_jmeter.cgi下载JMeter 直接解压JMeter安装包 Li ...
- jmeter 发送http请求,并把获取到的请求的订单信息保存到文件中
有一个任务,需要频繁发送订单请求,并分析订单请求中有没有存在重复订单号,思路是用jmeter 发送http请求,使用正则表达式获取到订单号,并把订单号和线程号作为参数提供给java请求,在java请求 ...
- Jmeter代理服务器录制请求
1.文档前提说明 1)本文使用jmeter的版本为 apache-jmeter-2.13 及以上版本 2)java版本要求在 1.8.0 以上 注:jmeter版本一般和java相应的版本一起使用,如 ...
- 转 jmeter录制https请求
jmeter录制https请求 文章转自:https://www.cnblogs.com/zhengna/p/10180998.html 工具:Jmeter4.0 + Java1.8 需求:对某ht ...
- Java HTTP请求
注意:java http请求要放在 try catch里面,该过程是一个阻塞过程,所以需要新建一个线程进行处理 try { HttpPost request = new HttpPost(URL); ...
- jmeter测试HTTP请求
HTTP超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都必须遵守这个标准.(详情参考看一下百科) HTTP发送请求有GE ...
- java读取请求中body数据
java读取请求中body数据 /** * 获取request中body数据 * * @author lifq * * 2017年2月24日 下午2:29:06 * @throws IOExcepti ...
- Jmeter发送JDBC请求
下午花了两个小时研究了一下Jmeter发送JDBC请求,现在把基本操作流程分享一下. 做JDBC请求,首先需要两个jar包:mysql驱动-mysql-connector-java-5.1.13-bi ...
随机推荐
- git分支与主干合并操作
git分支与主干合并操作1.主干合并分支在主干上合并分支 branch (master)git merge branch --squash 提交合并后的代码 (master)git commit -m ...
- python中关于turtle库的学习笔记
一.基础概念 1.画布:画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置.常用的画布方法有两个:screensize()和setup(). (1)turtle.screen ...
- hue,kylin,ambari
apache-kylin https://ambari.apache.org/ https://www.jianshu.com/p/c49c61b654da docker pull sequencei ...
- LeetCode 13 Roman to Integer 解题报告
题目要求 Roman numerals are represented by seven different symbols: I, V, X, L, C, Dand M. Symbol Value ...
- 《Mysql 锁》
一:什么是锁? - 锁是计算机协调多个进程或纯线程并发访问某一资源的机制. - 通俗的来说,锁是一种对资源的保护形式. 二:锁分类 - 表级锁 - 开销小,加锁快,没有死锁,锁定粒度大,发生锁冲突的概 ...
- js导航栏单击事件背景颜色变换
<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo ...
- 数电基础之《OC门》
OC门,又称集电极开路门,Open Collector. 为什么引入OC门?实际使用中,有时需要两个或两个以上与非门的输出端连接在同一条导线上,将这些与非门上的数据(状态电平)用同一条导线输送出去 ...
- Schlumberger Petrel 2016.3 地震解释 油藏模拟
Schlumberger Petrel 2016.3 地震解释 油藏模拟世界上顶尖的三维地质建模软件,软件为用户提供的工具可以用于地震解释.地质建模.油藏数 值模拟等方面的使用,清晰的地质模型可以描述 ...
- XMPP技术之Smack库的自定义消息扩展
写此文是为了纪念我耗时两天的Smack库应用开发. 太苦恼了,网上找了一堆材料,关于XMPP的消息扩展方面的资料感觉都是出于同一个源头,基本问题还是基于的库版本都是低于4.1版本的讲解. 我是在Sma ...
- 解决SQL Server 2008无法连接127.0.0.1的问题
电脑操作系统是Win10中文版,新装的英文版SQL Server 2008,纯默认安装,没有做任何改动. 装完SQL Server 2008之后,发现只能用默认的机器名来登录: 如果用127.0.0. ...