LR十五:Query类型_JDBC的方法_JAVA方法_Loadrunner脚本
数据库查询压力测试脚本
jdbc_java_查询类型接口测试
1 package com.test; 2 3 4 import java.sql.Connection; 5 import java.sql.DriverManager; 6 import java.sql.PreparedStatement; 7 import java.sql.ResultSet; 8 9 public class Jdbc_Query { 10 // 定义全局变量 11 String username = "root"; 12 String password = "123456"; 13 String url = "jdbc:mysql://localhost:3306/oa?useUnicode=true&characterEncoding=utf8"; 14 String sql = "select * from itcast_role where id = ?"; 15 PreparedStatement ps; 16 Connection conn; 17 public int init() throws Throwable { 18 //1、注册mysql驱动 19 Class.forName("com.mysql.jdbc.Driver"); 20 //2、通过url、用户名、密码建立mysql连接,返回一个Connection对象 21 conn = DriverManager.getConnection(url, username, password); 22 //3、对sql进行预编译,返回一个已经编译过的sql对象PreparedStatement 23 ps = conn.prepareStatement(sql); 24 return 0; 25 }//end of init 26 27 public int action() throws Throwable { 28 29 //4、执行sql语句之前,先对sql中不确定的数据进行赋值 30 ps.setInt(1, 1); 31 //5、执行sql语句,返回受影响的行数 32 //(executeUpdate 增删改)(executeQuery 查询单独用这个,返回结果集的对象,这个对象叫ResultSet,然后取个变量名叫set) 33 ResultSet set = ps.executeQuery(); 34 // 只有结果集中有数据,就认为查询成功 set.next() next方法 35 while (set.next()){ 36 String name = set.getString("name"); 37 String desc = set.getString("description"); 38 System.out.println("name"+name + ",desc"+desc); 39 } 40 return 0; 41 } 42 43 44 public int end() throws Throwable { 45 //6、关闭mysql连接 46 conn.close(); 47 return 0; 48 }//end of end 49 50 //执行前需要申明一下 谁调用谁处理 51 public static void main(String[] args) throws Throwable { 52 // 模拟lr一下执行 53 Jdbc_Query Query = new Jdbc_Query(); 54 Query.init(); 55 Query.action(); 56 Query.end(); 57 58 } 59 60 }
loadrunner_jdbc_查询的方法
1 /* 2 * LoadRunner Java script. (Build: _build_number_) 3 * 4 * Script Description: 5 * 6 */ 7 8 import lrapi.lr; 9 import java.sql.Connection; 10 import java.sql.DriverManager; 11 import java.sql.PreparedStatement; 12 import java.sql.ResultSet; 13 14 15 public class Actions 16 { 17 18 // 定义全局变量 19 String username = "root"; 20 String password = "123456"; 21 String url = "jdbc:mysql://localhost:3306/oa?useUnicode=true&characterEncoding=utf8"; 22 String sql = "select * from itcast_role where id = ?"; 23 PreparedStatement ps; 24 Connection conn; 25 public int init() throws Throwable { 26 //1、注册mysql驱动 27 Class.forName("com.mysql.jdbc.Driver"); 28 //2、通过url、用户名、密码建立mysql连接,返回一个Connection对象 29 conn = DriverManager.getConnection(url, username, password); 30 //3、对sql进行预编译,返回一个已经编译过的sql对象PreparedStatement 31 ps = conn.prepareStatement(sql); 32 return 0; 33 }//end of init 34 35 public int action() throws Throwable { 36 37 lr.start_transaction("query"); 38 39 40 //4、执行sql语句之前,先对sql中不确定的数据进行赋值 41 ps.setInt(1, Integer.parseInt("<num>")); 42 //5、执行sql语句,返回受影响的行数 43 //(executeUpdate 增删改)(executeQuery 查询单独用这个,返回结果集的对象,这个对象叫ResultSet,然后取个变量名叫set) 44 ResultSet set = ps.executeQuery(); 45 // 只有结果集中有数据,就认为查询成功 set.next() next方法 46 47 if (set.next()) { 48 49 lr.end_transaction("query", lr.PASS); 50 51 }else{ 52 53 lr.end_transaction("query", lr.FAIL); 54 55 } 56 57 return 0; 58 } 59 60 61 62 public int end() throws Throwable { 63 //6、关闭mysql连接 64 conn.close(); 65 return 0; 66 }//end of end 67 68 69 }
loadrunner运行日志
1 Virtual User Script started at : 2019-03-30 20:18:47 2 Starting action vuser_init. 3 Ending action vuser_init. 4 Running Vuser... 5 Starting iteration 1. 6 Starting action Actions. 7 Notify: Transaction "query" started. 8 Notify: Parameter Substitution: parameter "num" = "15" 9 Notify: Transaction "query" ended with "Pass" status (Duration: 0.0197). 10 Ending action Actions. 11 Ending iteration 1. 12 Starting iteration 2. 13 Starting action Actions. 14 Notify: Transaction "query" started. 15 Notify: Parameter Substitution: parameter "num" = "6" 16 Failed to get file name and line of the script for failed transaction "query". 17 Notify: Transaction "query" ended with "Fail" status (Duration: 0.0123). 18 Ending action Actions. 19 Ending iteration 2. 20 Starting iteration 3. 21 Starting action Actions. 22 Notify: Transaction "query" started. 23 Notify: Parameter Substitution: parameter "num" = "18" 24 Notify: Transaction "query" ended with "Pass" status (Duration: 0.0132). 25 Ending action Actions. 26 Ending iteration 3. 27 Starting iteration 4. 28 Starting action Actions. 29 Notify: Transaction "query" started. 30 Notify: Parameter Substitution: parameter "num" = "15" 31 Notify: Transaction "query" ended with "Pass" status (Duration: 0.0124). 32 Ending action Actions. 33 Ending iteration 4. 34 Starting iteration 5. 35 Starting action Actions. 36 Notify: Transaction "query" started. 37 Notify: Parameter Substitution: parameter "num" = "20" 38 Notify: Transaction "query" ended with "Pass" status (Duration: 0.0130). 39 Ending action Actions. 40 Ending iteration 5. 41 Starting iteration 6. 42 Starting action Actions. 43 Notify: Transaction "query" started. 44 Notify: Parameter Substitution: parameter "num" = "11" 45 Notify: Transaction "query" ended with "Pass" status (Duration: 0.0127). 46 Ending action Actions. 47 Ending iteration 6. 48 Starting iteration 7. 49 Starting action Actions. 50 Notify: Transaction "query" started. 51 Notify: Parameter Substitution: parameter "num" = "12" 52 Notify: Transaction "query" ended with "Pass" status (Duration: 0.0121). 53 Ending action Actions. 54 Ending iteration 7. 55 Starting iteration 8. 56 Starting action Actions. 57 Notify: Transaction "query" started. 58 Notify: Parameter Substitution: parameter "num" = "7" 59 Failed to get file name and line of the script for failed transaction "query". 60 Notify: Transaction "query" ended with "Fail" status (Duration: 0.0124). 61 Ending action Actions. 62 Ending iteration 8. 63 Starting iteration 9. 64 Starting action Actions. 65 Notify: Transaction "query" started. 66 Notify: Parameter Substitution: parameter "num" = "12" 67 Notify: Transaction "query" ended with "Pass" status (Duration: 0.0137). 68 Ending action Actions. 69 Ending iteration 9. 70 Starting iteration 10. 71 Starting action Actions. 72 Notify: Transaction "query" started. 73 Notify: Parameter Substitution: parameter "num" = "6" 74 Failed to get file name and line of the script for failed transaction "query". 75 Notify: Transaction "query" ended with "Fail" status (Duration: 0.0129). 76 Ending action Actions. 77 Ending iteration 10. 78 Ending Vuser... 79 Starting action vuser_end. 80 Ending action vuser_end. 81 Vuser Terminated.
跳转到 ------- Update 数据库增删改 压测方法 https://www.cnblogs.com/zhenyu1/p/10620524.html