jmeter 开发自己的java请求 二次开发
package test; import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.FileRequestEntity;
import org.apache.commons.httpclient.methods.PostMethod;
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; import java.io.File;
import java.io.IOException;
import java.net.MalformedURLException;
import java.util.Map; /**
* Created by MacGang on 2015/12/27.
*/
public class HttpSam extends AbstractJavaSamplerClient {
public static String label="short_video";
private SampleResult results;
public void setupTest(JavaSamplerContext arg0) {
results = new SampleResult();
}
public SampleResult runTest(JavaSamplerContext javaSamplerContext) {
results.setSampleLabel(label);
results.sampleStart();
try {
Test.execute(javaSamplerContext.getParameter("ip"),javaSamplerContext.getParameter("port"),javaSamplerContext.getParameter("Authorization"),javaSamplerContext.getParameter("path"));
System.out.println(javaSamplerContext.getParameter("Authorization"));
results.setSuccessful(true);
} catch (MalformedURLException e) {
results.setSamplerData(e.getMessage());
e.printStackTrace();
results.setSuccessful(false);
}finally{
results.sampleEnd();
} return results;
} public Arguments getDefaultParameters(){
Arguments args = new Arguments();
args.addArgument("ip", "192.168.1.11");//设置参数,并赋予默认值0
args.addArgument("port", "8080");//设置参数,并赋予默认值0
args.addArgument("path", "C:\\Users\\MacGang\\Desktop\\url.txt");//设置参数,并赋予默认值0
args.addArgument("Authorization", "0");//设置参数,并赋予默认值0 return args;
} public static void main(String[] args) {
// TODO Auto-generated method stub
Arguments params = new Arguments();
params.addArgument("ip", "192.168.1.11");//设置参数,并赋予默认值0
params.addArgument("port", "8080");//设置参数,并赋予默认值0
params.addArgument("Authorization", "111");//设置参数,并赋予默认值0
params.addArgument("path", "C:\\Users\\MacGang\\Desktop\\url.txt");//设置参数,并赋予默认值0 JavaSamplerContext arg0 = new JavaSamplerContext(params);
HttpSam test = new HttpSam();
test.setupTest(arg0);
test.runTest(arg0);
System.exit(1);
} }
class Test { public static void execute(String ip,String port,String auth,String path) throws MalformedURLException { String url = "http://"+ip+":"+port+"/multimedia/upload.json";
System.out.println(ip+"-->"+port+"-->"+auth);
HttpClient httpClient = new HttpClient();
PostMethod post= new PostMethod(url);
try {
post.setRequestHeader("Authorization",auth);
post.setRequestEntity(new FileRequestEntity(new File(path),"application/x-www-form-urlencoded"));
} catch (Exception e) {
e.printStackTrace();
} try {
httpClient.executeMethod(post);
} catch (IOException e) {
e.printStackTrace();
} }
}
jmeter 开发自己的java请求 二次开发的更多相关文章
- Jmeter性能测试实践之java请求
前言 Apache Jmeter是开源.易用的性能测试工具,之前工作中用过几次对http请求进行性能测试,对jmeter的基本操作有一些了解.最近接到开发的对java请求进行性能测试的需求,所以需要 ...
- JMeter 中实现发送Java请求
JMeter 中实现发送Java请求 1. 步骤1 新建JAVA项目 File -> New -> Java Project 如上图,填写Project Name,然后Next,打开以J ...
- Java微信二次开发(一)
准备用Java做一个微信二次开发项目,把流程写在这里吧. 第一天,做微信请求验证 需要导入库:servlet-api.jar 第一步:新建包com.wtz.service,新建类LoginServle ...
- 【Jmeter测试】使用Java请求进行Dubbo接口的测试
如何构建一个Dubbo接口测试的通用框架(https://github.com/nitibu/jmeter-dubbo-test)从上面的流程我们可以看出,测试类大致的一个结构: 使用json文件来 ...
- EcShop二次开发学习方法和Ecshop二次开发必备基础
ecshop二次开发学习方法 近年来,随着互联网的发展,电子商务也跟着一起成长,B2B,C2C,B2C的电子商务模式也不断的成熟.这时催生出了众多电子商务相关的php开源产品.B2C方面有Ecshop ...
- 手机APP开发:学JAVA转安卓APP开发是不是很容易?
成都亿合云商小编为您分享:Android开发是以Java语言为基础的,Android 虽然使用Java 语言作为开发工具,但是在实际开发中发现,还是与Java SDK 有一些不同的地方.Android ...
- Java微信二次开发(十)
生成带参数的二维码以及长链接转短链接 第一步:找到包com.wtz.vo,新建类WeixinQRCode.java package com.wtz.vo; /** * @author wangtian ...
- Java微信二次开发(七)
自定义菜单 第一步:新建包com.wtz.menu,新建类Button.java package com.wtz.menu; /** * @author wangtianze QQ:864620012 ...
- Java微信二次开发(五)
消息加密 需要到入库:commons-io-2.4.jar,commons-codec-1.9.jar(在官网的Java微信加密demo下) 第一步:访问https://mp.weixin.qq.co ...
随机推荐
- eclipse如何debug调试jdk源码
java是一门开源的程序设计语言,喜欢研究源码的java开发者总会忍不住debug一下jdk源码.虽然官方的jdk自带了源码包src.zip,然而在debug时查看变量却十分麻烦.例如调试HashMa ...
- iOS7 文本转语音 AVSpeechSynthesizer -转载-
http://www.cnblogs.com/qingjoin/p/3160945.html iOS7 的这个功能确实不错.我刚试了下,用官方提供的API ,简单的几句代码就能实现文本转语音! Xco ...
- iOS 键盘变中文
plist文件添加 Localizations 添加一项字段Chinese (simplified)
- Cocos2d-x 3.0final 终结者系列教程16-《微信飞机大战》实现
看到cocos2d-x推出了3.1版本号,真是每月一次新版本号,速度. 另一个好消息就是http://cn.cocos2d-x.org/上线了,祝贺!啥时候把我的视频和教程放上去呢?!! . 视频下载 ...
- Linq Group By 多个字段
var counts = dal.QueryStatisticsCount(condition); var result = from p in counts group p by new { Auc ...
- ArcGIS Overview Map(鹰眼/概览图)
一.说明 引用文件那块,可以参考我上一篇博文,arcgis api for javascript离线部署. 这篇博文中,地图占满整个body 二.运行效果 三.HTML代码 <!DOCTYPE ...
- JavaScript library of crypto standards. 看源码
crypto-js - npm https://www.npmjs.com/package/crypto-js crypto-js/docs/QuickStartGuide.wiki <wiki ...
- ABAP 调用webservice 错误
错误:1.soamanager 配置端口错误: 调整端口后报错: java端回复: 嗯 有问题了我待会儿看看应该是数据有问题
- gradle 跳过junitTest的方法
Web项目中不长会写JunitTest,但也会写.gradle build的时候回执行test 这项task.如果想跳过,通常有几种方法: 1.在build.gradle 文件中禁用task test ...
- .net编程扫盲(*)
http://www.cnblogs.com/edisonchou/p/4787775.html