数据库查询压力测试脚本

jdbc_java_查询类型接口测试

 package com.test;

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet; public class Jdbc_Query {
// 定义全局变量
String username = "root";
String password = "123456";
String url = "jdbc:mysql://localhost:3306/oa?useUnicode=true&characterEncoding=utf8";
String sql = "select * from itcast_role where id = ?";
PreparedStatement ps;
Connection conn;
public int init() throws Throwable {
//1、注册mysql驱动
Class.forName("com.mysql.jdbc.Driver");
//2、通过url、用户名、密码建立mysql连接,返回一个Connection对象
conn = DriverManager.getConnection(url, username, password);
//3、对sql进行预编译,返回一个已经编译过的sql对象PreparedStatement
ps = conn.prepareStatement(sql);
return 0;
}//end of init public int action() throws Throwable { //4、执行sql语句之前,先对sql中不确定的数据进行赋值
ps.setInt(1, 1);
//5、执行sql语句,返回受影响的行数
//(executeUpdate 增删改)(executeQuery 查询单独用这个,返回结果集的对象,这个对象叫ResultSet,然后取个变量名叫set)
ResultSet set = ps.executeQuery();
// 只有结果集中有数据,就认为查询成功 set.next() next方法
while (set.next()){
String name = set.getString("name");
String desc = set.getString("description");
System.out.println("name"+name + ",desc"+desc);
}
return 0;
} public int end() throws Throwable {
//6、关闭mysql连接
conn.close();
return 0;
}//end of end //执行前需要申明一下 谁调用谁处理
public static void main(String[] args) throws Throwable {
// 模拟lr一下执行
Jdbc_Query Query = new Jdbc_Query();
Query.init();
Query.action();
Query.end(); } }

jdbc_java_query

loadrunner_jdbc_查询的方法

 /*
* LoadRunner Java script. (Build: _build_number_)
*
* Script Description:
*
*/ import lrapi.lr;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet; public class Actions
{ // 定义全局变量
String username = "root";
String password = "123456";
String url = "jdbc:mysql://localhost:3306/oa?useUnicode=true&characterEncoding=utf8";
String sql = "select * from itcast_role where id = ?";
PreparedStatement ps;
Connection conn;
public int init() throws Throwable {
//1、注册mysql驱动
Class.forName("com.mysql.jdbc.Driver");
//2、通过url、用户名、密码建立mysql连接,返回一个Connection对象
conn = DriverManager.getConnection(url, username, password);
//3、对sql进行预编译,返回一个已经编译过的sql对象PreparedStatement
ps = conn.prepareStatement(sql);
return 0;
}//end of init public int action() throws Throwable { lr.start_transaction("query"); //4、执行sql语句之前,先对sql中不确定的数据进行赋值
ps.setInt(1, Integer.parseInt("<num>"));
//5、执行sql语句,返回受影响的行数
//(executeUpdate 增删改)(executeQuery 查询单独用这个,返回结果集的对象,这个对象叫ResultSet,然后取个变量名叫set)
ResultSet set = ps.executeQuery();
// 只有结果集中有数据,就认为查询成功 set.next() next方法 if (set.next()) { lr.end_transaction("query", lr.PASS); }else{ lr.end_transaction("query", lr.FAIL); } return 0;
} public int end() throws Throwable {
//6、关闭mysql连接
conn.close();
return 0;
}//end of end }

loadrunner_jdbc_query

loadrunner运行日志

 Virtual User Script started at : 2019-03-30 20:18:47
Starting action vuser_init.
Ending action vuser_init.
Running Vuser...
Starting iteration 1.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "15"
Notify: Transaction "query" ended with "Pass" status (Duration: 0.0197).
Ending action Actions.
Ending iteration 1.
Starting iteration 2.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "6"
Failed to get file name and line of the script for failed transaction "query".
Notify: Transaction "query" ended with "Fail" status (Duration: 0.0123).
Ending action Actions.
Ending iteration 2.
Starting iteration 3.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "18"
Notify: Transaction "query" ended with "Pass" status (Duration: 0.0132).
Ending action Actions.
Ending iteration 3.
Starting iteration 4.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "15"
Notify: Transaction "query" ended with "Pass" status (Duration: 0.0124).
Ending action Actions.
Ending iteration 4.
Starting iteration 5.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "20"
Notify: Transaction "query" ended with "Pass" status (Duration: 0.0130).
Ending action Actions.
Ending iteration 5.
Starting iteration 6.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "11"
Notify: Transaction "query" ended with "Pass" status (Duration: 0.0127).
Ending action Actions.
Ending iteration 6.
Starting iteration 7.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "12"
Notify: Transaction "query" ended with "Pass" status (Duration: 0.0121).
Ending action Actions.
Ending iteration 7.
Starting iteration 8.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "7"
Failed to get file name and line of the script for failed transaction "query".
Notify: Transaction "query" ended with "Fail" status (Duration: 0.0124).
Ending action Actions.
Ending iteration 8.
Starting iteration 9.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "12"
Notify: Transaction "query" ended with "Pass" status (Duration: 0.0137).
Ending action Actions.
Ending iteration 9.
Starting iteration 10.
Starting action Actions.
Notify: Transaction "query" started.
Notify: Parameter Substitution: parameter "num" = "6"
Failed to get file name and line of the script for failed transaction "query".
Notify: Transaction "query" ended with "Fail" status (Duration: 0.0129).
Ending action Actions.
Ending iteration 10.
Ending Vuser...
Starting action vuser_end.
Ending action vuser_end.
Vuser Terminated.

log

跳转到 ------- Update 数据库增删改 压测方法             https://www.cnblogs.com/zhenyu1/p/10620524.html

Query类型_JDBC的方法_JAVA方法_Loadrunner脚本的更多相关文章

  1. Update类型_JDBC的方法_JAVA方法_Loadrunner脚本

    java vuser   JDBC 参数化的方法 如果不进行参数化 直接把32  33行去掉 ,sql 值写到valuers  中就行了 下面这是 insert,delete,update  三种方法 ...

  2. zendstudio 声明变量类型,让变量自动方法提示

    zendstudio 行内注释, 显式声明变量类型,让变量自动方法提示 $out = []; /* @var $row \xxyy\SizeEntity */ foreach ($rows[ 'lis ...

  3. paip。java 高级特性 类默认方法,匿名方法+多方法连续调用, 常量类型

    paip.java 高级特性 类默认方法,匿名方法+多方法连续调用, 常量类型 作者Attilax 艾龙,  EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http ...

  4. SpringMVC提交数据遭遇基础类型和日期类型报400错误解决方法

    使用SpringMVC开发的时候,页面如果有日期格式的数据,后台接受也是java.util.Date,则报告400错误 .下面是解决方案的演示示例: 这个是实体类,里面createDate就是java ...

  5. JavaScript中判断整字类型最简洁的实现方法

    这篇文章主要介绍了JavaScript中判断整字类型最简洁的实现方法,本文给出多个判断整数的方法,最后总结出一个最短.最简洁的实现方法,需要的朋友可以参考下 我们知道JavaScript提供了type ...

  6. String 类型equals方法和int == 方法效率比较

    最近写了一个递归方法,在进行比较判断的时候,因为都是integer类型,而integer类型在大于127或者小于-128时会在新建一个,这是因为integer类型的拆装箱机制, 之前没有考虑过equa ...

  7. 【js实例】Array类型的9个数组方法,Date类型的41个日期方法,Function类型

    前文提要:[js实例]js中的5种基本数据类型和9种操作符 Array类型的9个数组方法 Array中有9个数组方法: 1.检测数组 2.转换方法 3.栈方法 4.队列方法 5.冲排序方法6.操作方法 ...

  8. 使用interface与类型诊断机制判断一个类型是否实现了某个方法

    Golang中的interface通常用来定义接口,在接口里提供一些方法,其他类型可以实现(implement)这些方法,通过将接口指针指向不同的类型实例实现多态(polymorphism),这是in ...

  9. 当要将其他类型转成String类型时候 看String的方法

    当要将其他类型转成String类型时候 看String的方法进行转换

随机推荐

  1. Mac 下 SVN 的使用

    在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境.在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还 ...

  2. IQueryable和IEnumerable

    使用EF你必须知道这两个的区别,可以帮助我们的提升性能. 表达树:Linq 表达 ①IQueryable和IEnumerable IQueryable 延时执行:扩展方法接受的是Expression( ...

  3. ios软键盘将页面抵到上面后,关闭软键盘页面不回弹

    这个问题有时候会导致弹出框确定按钮失效等一系列问题, 解决办法:失去焦点时将页面滚动到底层,或者最顶部,个人看实际情况滚动到适合位置 $('input,textarea').on('blur', fu ...

  4. javascript的执行机制—Event Loop

    既然今天要谈的是javascript的事件循环机制,要理解事件循环,首先要知道事件循环是什么. 我们先从一个例子来看一下javascript的执行顺序. <script> setTimeo ...

  5. docker之MySQL主从复制

    MySQL主从复制 主服务器 配置文件目录 mkdir /var/lib/mysql/master/conf.d 数据存储目录 mkdir var/lib/mysql/master/data 配置my ...

  6. Linux操作系统相关

    在工作过程中,如果大家接触的操作系统比较多的话,会发现aix,hpux,CentOS,Redhat命令上都有一定的差异,实则是操作系统内引用的bash(Bourne-Again SHell)不一样,现 ...

  7. js 里常用的数组操作方法

    var ar=[112,44,55,66,77,88,99,'00',77]; var ar1=['ddd','fff','ggg']; //concat() 拼接一个或多个数组: //console ...

  8. 获取vue路由跳转路径

    平时BUG: 在vue中使用element ui 中的导航组件时,使用index作为跳转的路径,单击跳转没有问题,但是当刷新页面是,选项卡的激活 状态就变成初始化的了,起起初想到用获取window.l ...

  9. Python 装饰器装饰类中的方法(转)

    def catch_exception(origin_func): def wrapper(self, *args, **kwargs): try: u = origin_func(self, *ar ...

  10. android一个下拉放大库bug的解决过程及思考

    android一个下拉放大库bug的解决过程及思考 起因 项目中要做一个下拉缩放图片的效果,搜索了下github上面,找到了两个方案. https://github.com/Frank-Zhu/Pul ...