数据库查询压力测试脚本

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. npm run dev启动项目报错 Cannot find module 'webpack-cli/bin/config-yargs'

    一般是webpack的版本和webpackserver的版本不兼容导致的错误. 解决方法是先卸载这两个版本,再安装指定的版本. 卸载: 再安装指定或者最新版本的webpack和webpack-dev- ...

  2. 轻量ORM-SqlRepoEx (十三)最佳实践

    ORM-SqlRepoEx 是 .Net平台下兼容.NET Standard 2.0,一个实现以Lambda表达式转转换标准SQL语句,使用强类型操作数据的轻量级ORM工具,在减少魔法字串同时,通过灵 ...

  3. oracle的建表语句

    oracle数据库的建表语句,具体语法如下: CREATE TABLE tablename (column_name datatype [null,not null], column_name dat ...

  4. 【转】Linux常用命令大全(非常全!!!)

    最近都在和Linux打交道,感觉还不错.我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大.我将我了解到的命令列举一 ...

  5. encodeURIComponent编码反斜杠 \ (正则匹配)

    记录一个小bug... 前言废话: 1. 功能需求:修改输入框的内容,获取字符串传给后端保存. 2. bug历程:刚开始直接获取value值传过去.后来测试发现%&这些特殊字符无法传递后,在前 ...

  6. SQL学习笔记:基础教程

    SQL语法 在表中选择列 select 列名 from 表名 选择所有列 select * from 表名 返回唯一值 select distinct 列名 from 表名 where select ...

  7. poj 2349 Arctic Network(prime)

    Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 25165   Accepted: 7751 Description The ...

  8. Python之路(六)---> 函数、变量

    Python中的函数和数学上的函数定义是不一样的,从数学的角度上来说函数的定义:给定一个数集A,假设其中的元素为x.现对A中的元素x施加对应法则f,记作f(x),得到另一数集B.假设B中的元素为y.则 ...

  9. C语言复习20170728

    C语言复习20170728 键盘输入和屏幕输出 字符常量:把字符放在一对单引号内,适用于多数可打印字符. 转义字符: 以反斜线()开头,也是放在一对单引号内,适用于控制字符. .\t,是水平制表符,相 ...

  10. 20155327 信息安全技术 实验二 Windows口令破解

    课程:信息安全概论 班级:1553 姓名:了李百乾 学号:20155327 成绩: 指导教师: 李冬冬 实验日期及时间: 2017年10月11日 15:30-18:00 必修/选修:必修 实验序号:0 ...