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请求 二次开发的更多相关文章

  1. Jmeter性能测试实践之java请求

     前言 Apache Jmeter是开源.易用的性能测试工具,之前工作中用过几次对http请求进行性能测试,对jmeter的基本操作有一些了解.最近接到开发的对java请求进行性能测试的需求,所以需要 ...

  2. JMeter 中实现发送Java请求

    JMeter 中实现发送Java请求 1.  步骤1 新建JAVA项目 File -> New -> Java Project 如上图,填写Project Name,然后Next,打开以J ...

  3. Java微信二次开发(一)

    准备用Java做一个微信二次开发项目,把流程写在这里吧. 第一天,做微信请求验证 需要导入库:servlet-api.jar 第一步:新建包com.wtz.service,新建类LoginServle ...

  4. 【Jmeter测试】使用Java请求进行Dubbo接口的测试

    如何构建一个Dubbo接口测试的通用框架(https://github.com/nitibu/jmeter-dubbo-test)​从上面的流程我们可以看出,测试类大致的一个结构: 使用json文件来 ...

  5. EcShop二次开发学习方法和Ecshop二次开发必备基础

    ecshop二次开发学习方法 近年来,随着互联网的发展,电子商务也跟着一起成长,B2B,C2C,B2C的电子商务模式也不断的成熟.这时催生出了众多电子商务相关的php开源产品.B2C方面有Ecshop ...

  6. 手机APP开发:学JAVA转安卓APP开发是不是很容易?

    成都亿合云商小编为您分享:Android开发是以Java语言为基础的,Android 虽然使用Java 语言作为开发工具,但是在实际开发中发现,还是与Java SDK 有一些不同的地方.Android ...

  7. Java微信二次开发(十)

    生成带参数的二维码以及长链接转短链接 第一步:找到包com.wtz.vo,新建类WeixinQRCode.java package com.wtz.vo; /** * @author wangtian ...

  8. Java微信二次开发(七)

    自定义菜单 第一步:新建包com.wtz.menu,新建类Button.java package com.wtz.menu; /** * @author wangtianze QQ:864620012 ...

  9. Java微信二次开发(五)

    消息加密 需要到入库:commons-io-2.4.jar,commons-codec-1.9.jar(在官网的Java微信加密demo下) 第一步:访问https://mp.weixin.qq.co ...

随机推荐

  1. 【WPF学习笔记】之如何传递第一个登录界面的值到下一个页面显示:动画系列之(三)

    ... ... 承接系列(二) 在之前的登录后台已设置发送到主界面: 在主界面接收传递的值: using System; using System.Collections.Generic; using ...

  2. Linux NAT网络连接权威指南

    [1]准备工作,写在前面 1.1)检查服务(cmd>>services.msc,我用的是VM) 1.2)确保Vmnet8 连接处于启动状态 + 获取ipv4(ipv6)地址 (在网络连接不 ...

  3. 转载 -- 基于原生JS与OC方法互相调用并传值(附HTML代码)

    最近项目里面有有个商品活动界面,要与web端传值,将用户在网页点击的商品id 传给客户端,也就是js交互,其实再说明白一点就是方法的互相调用而已. 本文叙述下如何进行原生的JavaScript交互 本 ...

  4. go test 下篇

    前言 go test 上篇 给大家介绍了golang自带的测试框架,包括单元测试和性能测试.但是在实际生产中测试经常会遇到一些网络或者依赖的第三方系统接口,运行测试用例的时候希望忽略这些接口的实际依赖 ...

  5. 交易准实时预警 kafka topic 主题 异常交易主题 低延迟 event topic alert topic 内存 算法测试

    https://www.ibm.com/developerworks/cn/opensource/os-cn-kafka/index.html 周 明耀2015 年 6 月 10 日发布 示例:网络游 ...

  6. git服务的安装和使用

    参考文章 http://www.centoscn.com/image-text/install/2014/0514/2972.html 1.搭建Git服务器yum安装Git服务器创建一个git用户,用 ...

  7. virtualBox redhat 共享文件夹 安装增强功能

    (一) 场景描述: virtualBox设置了共享文件夹,显示让点击安装增强功能 点击后挂载了光盘 运行了里面的run,却一闪而过 原因: 权限不够 在终端,./VBoxLinuxAdditions. ...

  8. JS继承的实现方式

    JS作为面向对象的弱类型语言,继承也是其非常强大的特性之一.那么如何在JS中实现继承呢?让我们拭目以待. JS继承的实现方式 既然要实现继承,那么首先我们得有一个父类,代码如下: // 定义一个动物类 ...

  9. centos7 永久修改主机名

    hostnamectl set-hostname xxx 一劳永逸,永绝后患

  10. 粉红色织梦CMS企业模板

    粉红色织梦CMS企业网站模板,粉红色,织梦CMS,织梦企业模板,CMS模板. 模板地址:http://www.huiyi8.com/sc/7247.html