jmeter中实现java请求实战日志
public class JdbcInsert implements JavaSamplerClient {
// 全局变量
PreparedStatement pstmt;
Connection conn;
@Override
public Arguments getDefaultParameters() {
// 主要用于把jmeter界面中的参数和java脚本关联起来
Arguments arguments = new Arguments();
arguments.addArgument("uuid",UUID.randomUUID().toString());
arguments.addArgument("username","张三");
arguments.addArgument("pwd","123");
arguments.addArgument("jdbcurl","jdbc:mysql://localhost:3306/xxxx"
return arguments;
}
// 执行测试操作,类似于LR里的Action函数,执行N次
@Override
public SampleResult runTest(JavaSamplerContext context) {
int rows = 0;
// 框架要求可能出现问题的代码,不能抛出异常,只能自己处理,把有问题的代码放到try里面,解决方案放到catch里
try {
pstmt.setString(1,context.getParameter("uuid"));
pstmt.setString(2, context.getParameter("username"));
pstmt.setString(3, context.getParameter("pwd"));
// 执行sql多次
rows = pstmt.executeUpdate();
} catch (SQLException e) {
// 当出现异常时打印异常
e.printStackTrace();
}
System.out.println(rows);
return null;
}
// 初始化操作,类似于LR中的init函数,执行1次
@Override
public void setupTest(JavaSamplerContext context) {
String url =context.getParameter("jdbcurl");
String username = "root";
String password = "123123";
String sql = "insert into t_user (uuid,username,pwd) values(?,?,?)
// 注册驱动,告诉java要链接哪个数据库
try {
Class.forName("com.mysql.jdbc.Driver");
// 建立mysql数据库链接
conn = (Connection) DriverManager.getConnection(url, username,
// 把sql进行编译
pstmt = (PreparedStatement) conn.prepareStatement(sql);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
// 结束操作,类似于LR里的end函数,执行1次
@Override
public void teardownTest(JavaSamplerContext context) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) {
JdbcInsert jdbcInsert = new JdbcInsert();
//先创建一个参数对象Argument
Arguments arguments = jdbcInsert.getDefaultParameters();
//再创建一个上下文对象JavaSamplerContext,并且把Argument对象传入
JavaSamplerContext context = new JavaSamplerContext(arguments);
jdbcInsert.setupTest(context);
jdbcInsert.runTest(context);
jdbcInsert.teardownTest(context);
}
}
jmeter中实现java请求思路:采用jmeter提供的框架包,创建一个类,继承类JavaSamplerClient
新建java类继承JavaSamplerClient










jmeter中实现java请求实战日志的更多相关文章
- 性能测试十一:jmeter进阶之java请求
使用Java编写JDBC脚本对Mysql进行增删改查等操作的性能测试 使用Jmeter提供的脚本框架依赖的jar包(分别在jmeter目录下的lib和ext目录下) ApacheJMeter_core ...
- 【JMeter】JMeter完成一个java请求的压测
先定义一下我说的remoteService:即远程调用服务,没有http的url.不对外提供或者对外提供有限的服务.具体视各公司的代码架构所定,比如有些公司为web工程,scf服务,db.scf即为服 ...
- 【转】JMeter完成一个java请求的压测
JMeter完成java请求的压力测试详解以及问题总结 原文地址:http://www.cnblogs.com/zhaoxd07/p/4895224.html 作者:KK_Yolanda 这篇文 ...
- jmeter之自定义java请求性能测试
一.环境准备 1.新建一个java工程 2.导入jar包:ApacheJMeter_core.jar ApacheJMeter_java.jar ...
- 性能测试十二:jmeter进阶之java请求参数化
如项目中的ip.端口号之类的,都可以在此代码中定义 public Arguments getDefaultParameters() { // TODO Auto-generated method st ...
- 六、Jmeter中自动提取Http请求参数,并put到Map,然后进行MD5加密
1.BeanShell PerOrocessor中的脚本 import src.com.csjin.qa.MD5.*;//个人jar包 import java.util.*; import java. ...
- JMeter中使用Put请求方式请求接口
前言 现在有如下接口,是以PUT的方式请求的: 请求URL:IP+Port+/api/v1/apps/{appId} 请求参数: 参数名 必选 类型 nameCn 是 string nameEn 是 ...
- eclipse中纯java配置log4j日志
1.新建java项目log4Test 2.新建目录lib,把log4j-1.2.9.jar包放入lib目录 3.右键工程,选择Properties->Java Build Path->Li ...
- 利用jmeter发起java请求调用shell脚本
1.创建maven项目 在pom文件中加入依赖: 2.在路径src/main/java下创建类,如类名shellclass 3. 创建jmet ...
随机推荐
- instanceof判断的对象可以是接口
instanceof是Java的一个二元操作符(运算符) 用法 boolean result = object instanceof class instanceof通过返回一个布尔值来指出,这个对象 ...
- Codeforces Round #487 (Div. 2) E. A Trance of Nightfall (矩阵优化)
题意 有一个平面 , 给你 \(n\) 个点构成一个点集 \(S\) , 一开始可以选择一个平面上任意点 \(P\) . 存在一种操作 : 1 选择一条至少 通过 \(S\) 中任意两个点以及 \(P ...
- LCT模板(指针版)
本来是想做THUWC2017的泰勒展开xLCT题的-- 然后觉得数组写很麻烦-- 然后就决定挑战指针版-- 然后写得全是BUG-- 与BUG鏖战三千年后,有了这个指针版LCT板子! #include ...
- Java -- JDBC 学习--处理Blob
Oracle LOB LOB,即Large Objects(大对象),是用来存储大量的二进制和文本数据的一种数据类型(一个LOB字段可存储可多达4GB的数据).LOB 分为两种类型:内部LOB和外部L ...
- 树莓派上使用Slowloris进行DDoS攻击
安装Slowloris工具 git clone https://github.com/gkbrk/slowloris.git 使用Slowloris进行攻击 进入Slowloris文件夹.cd slo ...
- CF848E Days of Floral Colours——DP+多项式求逆/分治NTT
官方题解:http://codeforces.com/blog/entry/54233 就是由简入繁 1.序列处理,只考虑一个半圆 2.环形处理(其实这个就是多了旋转同构) 然后基于分割线邻居的跨越与 ...
- A1056. Mice and Rice
Mice and Rice is the name of a programming contest in which each programmer must write a piece of co ...
- 使用iostat来对linux硬盘IO性能进行检测
-x显示扩展统计数据 # 每隔1s显示6个统计数据 $ iostat -x 1 6 # 每隔1s显示磁盘sda的6个统计数据 $ iostat -x sda 1 6 # 每隔1s显示设备sda及其分区 ...
- vue2.0 之表单控件绑定
表单控件绑定v-model 1.文本 <template> <div> <input type="text" name="" v- ...
- Hadoop基础-网络拓扑机架感知及其实现
Hadoop基础-网络拓扑机架感知及其实现 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.网络拓扑结构 在本地网络中,两个节点被称为“彼此近邻”是什么意思?在海量数据处理中,其 ...