上一篇文章中,提到怎么生成jar包让jmeter使用,这次我们来试试做参数,因为发现调包的时候其实更多还是参数化,那么开始改造吧

1.在httpclientpost这个类中替换参数,且打印参数

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List; import org.apache.http.HttpEntity;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.message.BasicNameValuePair; public class httpclientPost { public static int sendpost(String email,String value) throws ClientProtocolException, IOException {
CloseableHttpClient httpclient = HttpClients.createDefault();
HttpPost post = new HttpPost("https://user.zaful.com/m-users-a-act_sign.htm?pipeline=zf");
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("email", email));
params.add(new BasicNameValuePair("password", value));
post.setEntity(new UrlEncodedFormEntity(params));
CloseableHttpResponse response2 = httpclient.execute(post); int code = response2.getStatusLine().getStatusCode();
HttpEntity http = response2.getEntity(); InputStream instreams = http.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(instreams));
StringBuffer buffer = new StringBuffer();
String line;
while ((line = reader.readLine()) != null) {
buffer.append(line + "br ");
}
reader.close();
System.out.println("email: "+email +" password:"+value);
System.out.println(code +" respones:"+buffer); return code;
} }

在addcomputerInfo中实现getDefaultParameters方法,这步很重要

//参数化方法
@Override
public Arguments getDefaultParameters() {
// TODO Auto-generated method stub Arguments arguments=new Arguments();
arguments.addArgument("email","");
arguments.addArgument("value","");
return arguments;
}
public SampleResult runTest(JavaSamplerContext arg0) {
// TODO Auto-generated method stub
SampleResult result=new SampleResult();
result.sampleStart(); //事务启动
try { //参数化方法的使用
int responeCode=httpclientPost.sendpost(arg0.getParameter("email"),arg0.getParameter("value"));
if (responeCode==200) {
result.setSuccessful(true);
}else {
result.setSuccessful(false);
}
} catch (ClientProtocolException e) {
result.setSuccessful(false);
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
result.setSuccessful(false);
e.printStackTrace();
}
result.sampleEnd();//事务关闭
return result; }
public static void main(String[] args) {
new addcomputerInfo().runTest(new JavaSamplerContext(new Arguments()));
}

三、重新打包

四:jmeter使用

可以看到已经加载了两个参数,我们给下面参数做个参数化,增加一个计数器

增加计数器,每次递增1,每次填充0001

使用:

运行,因为都是没有注册的用户,所以都是错误

java自定义jar包让jmeter使用---给java参数化的更多相关文章

  1. java自定义jar包让jemeter使用

    背景:可能在做定义化的要求上,jmeter原有的jar包,已经不能满足我们,就需要自己写一个方法,以下就是写入的一个模拟post的请求,在jmeter中使用的案例 一:写代码 1.代码中的有两个包,原 ...

  2. Java打jar包详解

    Java打jar包详解 一.Java打jar包的几种方式https://www.cnblogs.com/mq0036/p/8566427.html 二.MANIFEST.MF文件详解https://w ...

  3. Jmeter调用自定义jar包

    一. 场景 在测试过程中, 可能需要调用第三方jar包来生成测试数据或者使用java工具类来实现业务场景, 普遍的做法是手动调用jar包, 再把这些值赋给jmeter中的某个参数, 以满足业务测试需求 ...

  4. jmeter接口测试-调用java的jar包-csv参数化请求-BeanShellPreProcessor生成验签作为请求验证参数-中文乱码----实战

    背景及思路: 需求:要做 创建新卡 接口的测试,要求: 1. 不需要每次手动修改请求参数. 方案:文中先用excle将数据准备好,导出为csv格式,再用jmeter的csv请求进行参数化 2. 卡号需 ...

  5. Kettle自定义jar包供javascript使用

    我们都知道 Kettle 是用 Java 语言开发,并且可以在 JavaScript 里面直接调用 java 类方法.所以有些时候,我们可以自定义一些方法,来供 JavaScript 使用. 本篇文章 ...

  6. java 执行 jar 包中的 main 方法

    java 执行 jar 包中的 main 方法 通过 OneJar 或 Maven 打包后 jar 文件,用命令: java -jar ****.jar执行后总是运行指定的主方法,如果 jar 中有多 ...

  7. Java常用jar包用途

    Java常用jar包用途: USAGE INDEX JAR NAME USAGE 1 ASM asm-2.2.3.jar ASM字节码库 2 ASM asm-commons-2.2.3.jar ASM ...

  8. (转)java 从jar包中读取资源文件

    (转)java 从jar包中读取资源文件 博客分类: java   源自:http://blog.csdn.net/b_h_l/article/details/7767829 在代码中读取一些资源文件 ...

  9. Python3.5调用Java的jar包

    声明:这个是在一个博客上看到的,过了俩星期了突然找不到原博客了,如果原来的博主看到,请联系我删除~ 主要是怕自己忘记,所以在此记录: 环境 Python3.5+JDK1.8 安装命令:python3 ...

随机推荐

  1. java abstractQueue

  2. selenium-1-python

    python selenium from selenium import webdriver from selenium.webdriver.common.action_chains import A ...

  3. “SkyReach”对“待就业六人组”和“葫芦娃”的Beta产品测试报告

    对"待就业六人组"的Beta产品测试报告 安装成功截图 第一次上手体验感觉如何?能否正常运行? 第一次上手体验,界面简洁明了,简约的风格比较迎合个人的口味:能够正常运行: 该产品具 ...

  4. python 使用 requests 做 http 请求

    1. get import requests # 最简单的get请求 r = requests.get(url) print(r.status_code) print(r.json()) # url ...

  5. 【PHP】系统部署

    1.MySql数据库,单独创建用户和数据库 使用MySql-Front导入,避免使用Navicat导入 2.httpd-vhosts.conf配置 文件位于:D:\Xampp\apache\conf\ ...

  6. 五个wordpress调用随机文章的方法

    分享几个WordPress不用插件调用随机文章的方法,不仅增强用户粘性,而且当蜘蛛来爬你的文章的时候每次都会有变化,搜索引擎很喜欢.主要用到的是orderby rand参数,下面就随ytkah一起来看 ...

  7. SpringBoot整合Spring Data Elasticsearch

    Spring Data Elasticsearch提供了ElasticsearchTemplate工具类,实现了POJO与elasticsearch文档之间的映射 elasticsearch本质也是存 ...

  8. layoutSubviews的缺省实现是使用约束进行布局

    Discussion The default implementation of this method does nothing on iOS 5.1 and earlier. Otherwise, ...

  9. P1657选书-(dfs)

    https://www.luogu.org/problemnew/show/P1657 解题:对于某个人喜欢的两本书,选或者是不选! 坑:数据有一组是0的,按dfs会出错,0本书选个屁,有啥意义?不给 ...

  10. PHP 判断时间段 至今过了多长时间

    /** * * @param timestamp $time 输入时间 * @return str $str 输入时间与现在时间差的中文 */ function wordTime($time) { / ...