1、库文件下载地址:http://files.cnblogs.com/files/xiaoxitest/MySQL_LoadRunner_libraries.zip

分别库文件和代码添加到Loadrunner bin目录和include目录下

2、vuser_init文件添加代码:

 
  1. #include "Ptt_Mysql.h"
  2. #include "mysql.h"
  3. #include "mysql_com.h"
  4. #include "mysql_time.h"
  5. #include "mysql_version.h"
  6. #include "typelib.h"
  7. #include "my_list.h"
  8. #include "my_alloc.h"
  9. #define MYSQLSERVER "172.16.1.220"
  10. #define MYSQLUSERNAME "dbuser"
  11. #define MYSQLPASSWORD "1qaz@wsx"
  12. #define MYSQLDB "sroa_lyt"
  13. #define MYSQLPORT "3309"
  14. char chQuery[1024];
  15. int statu=1;
  16. int status=0;
  17. MYSQL *Mconn;
  18. char sql_query[256], sql_sub_query[50];
  19. int i=0, res=0, conn_fail=0, conn_iter=0;
  20. char response[50];// to go
  21. vuser_init()
  22. {
  23. lr_load_dll ("libmysql.dll");
  24. lr_start_transaction("mysql_conn"); //设置一个连接数据库的事务
  25. /*------------------------------------------------------------------------*/
  26. /* Initialise MySQL */
  27. if(!(Mconn = mysql_init(NULL)))
  28. {
  29. lr_message("Error -1: Cannot initialize MySQL - %s", mysql_error(Mconn));
  30. //return -1;
  31. statu = 0;
  32. lr_end_transaction("mysql_conn", LR_FAIL); //初始化数据库失败判定事务失败
  33. }
  34. /*------------------------------------------------------------------------*/
  35. do
  36. {
  37. /* Connect to database */
  38. if (!mysql_real_connect(Mconn, MYSQLSERVER, MYSQLUSERNAME, MYSQLPASSWORD, MYSQLDB, atoi(MYSQLPORT), NULL, 0))
  39. {
  40. conn_fail = -2;
  41. conn_iter++;
  42. sleep(100);
  43. }
  44. else
  45. conn_fail = 0;
  46. }
  47. while(conn_fail < 0 && conn_iter < 10);
  48. if (conn_fail < 0)
  49. {
  50. lr_message("Error -2: %s", mysql_error(Mconn));
  51. //mysql_close(Mconn);
  52. //return -2;
  53. statu = 0;
  54. lr_end_transaction("mysql_conn", LR_FAIL); //连接数据库失败判定事务失败
  55. }
  56. else
  57. {
  58. //lr_message("MySql - Good Connection");
  59. //mysql_close(Mconn);
  60. statu = 1;
  61. lr_end_transaction("mysql_conn", LR_PASS); //连接数据库成功,事务通过。
  62. }
  63. return 0;
  64. }

3、Action文件添加代码

 
  1. Action()
  2. {
  3. if(statu){ //成功连接数据库后才进行执行sql的操作
  4. lr_start_transaction("mysql_select");
  5. sprintf(chQuery, "SELECT id, lb, title, nr, attachment_id, attachment_name, pic_name, fbsj, fbbm, fbr, vcount FROM sroa_lyt.oa_news;");//查询论坛用户
  6. //sprintf(chQuery,"UPDATE lr_test SET password = "%s" WHERE username='tom'",lr_eval_string ("{pwd}"));
  7. /*
  8. sprintf(chQuery,"update pre_ucenter_members set username='dd' where username='qq' ");//更改用户名qq为dd
  9. sprintf(chQuery,"delete from pre_ucenter_members ORDER BY uid desc LIMIT 1");//删除最后添加的一条数据
  10. */
  11. status = lr_mysql_query(Mconn, chQuery);
  12. if(status!=0){ //判断sql是否执行成功
  13. lr_end_transaction("mysql_select",LR_FAIL);
  14. }else{
  15. lr_end_transaction("mysql_select",LR_PASS);
  16. }
  17. lr_start_transaction("mysql_insert");
  18. sprintf(chQuery,"insert into oa_news(id, lb, title, nr, attachment_id, attachment_name, pic_name, fbsj, fbbm, fbr, vcount) values(9,9,'qq@qq.com','test','','','teste','',6,'test',0)");//插入数据
  19. status = lr_mysql_query(Mconn, chQuery);
  20. if(status!=0){ //判断sql是否执行成功
  21. lr_end_transaction("mysql_insert",LR_FAIL);
  22. }else{
  23. lr_end_transaction("mysql_insert",LR_PASS);
  24. }
  25. }
  26. return 0;
  27. }

4、vuser_end文件添加代码:

    1. vuser_end()
    2. {
    3. lr_mysql_disconnect(Mconn); //关闭数据库连接
    4. return 0;
    5. }

性能测试Loadrunner与Mysql的更多相关文章

  1. 老李分享:loadrunner操作mysql数据库

    老李分享:loadrunner操作mysql数据库        在poptest测试开发工程师就业培训的课程中,针对一套商业系统进行性能测试,目标是mysql后台数据库的负载能力,在这里我把测试代码 ...

  2. LoadRunner参数化MySQL

    准备:安装[msql-ODBC驱动] 一.配置数据源 1.Win7,打开控制面板-系统和安全-管理工具,点击“数据源(ODBC)”. 打开数据源(ODBC),在用户DSN选项卡中点击“添加”按钮,弹出 ...

  3. 老李分享:Eclipse中开发性能测试loadrunner脚本

    老李分享:Eclipse中开发性能测试loadrunner脚本 前篇我分享了如何用loadrunner搭建javauser的性能测试脚本环境,本次我来告诉大家如何在eclipse开发loadrunne ...

  4. [性能测试] LoadRunner结果分析 – TPS(转)

    [性能测试] LoadRunner结果分析 – TPS 针对吞吐率和 TPS 的关系,这个在结果分析中如何使用,就个人经验和朋友讨论后,提出如下建议指导,欢迎同僚指正. 相关定义 响应时间 = 网络响 ...

  5. 转 14 jmeter性能测试实战--数据库MySQL

    14 jmeter性能测试实战--数据库MySQL   需求 测试用户表(对用户表select操作) 测试步骤 1.MySQL驱动下载并安装. 2.测试计划面板点击"浏览"按钮,将 ...

  6. lib库实现loadrunner驱动mysql性能测试

    一.添加mysql驱动链接文件到loadrunner的bin和include目录下  以下链接为本人云盘分享,也可百度自行寻找下载源. http://yunpan.cn/cfTxbANSvipGi  ...

  7. 【性能测试】:loadrunner直压MYSQL数据库的脚本开发

    有时性能测试,会涉及到直接压测数据库,测试数据库处理sql的水平,或者通过sql脚本向数据库写数据做铺地数据 这里贴上一个自己用的对数据库操作的脚本 一,首先要去下载一个LR压MYSQL的一个库文件, ...

  8. Jememeter和Loadrunner测试MySQL性能

    From:http://blog.csdn.net/testingstar/article/details/60579454 MySQL数据库性能测试的方法 前置条件: 安装系统:windows 7 ...

  9. LoadRunner访问Mysql数据库

    这是很久以前编写的一个测试案例,那时是为了检查大量往Mysql数据库里插入数据,看一下数据库的性能如何?服务器是否会很快就被写满了. 前期的准备工作:Mysql 数据库搭建,LoadRunner,li ...

随机推荐

  1. 应用开发之Asp.net

    本章简言 上一章中笔者讲到关于Linq和EF的用法.并以hibernate来进行讲解.那么本章笔者来讲一下C#的Asp.Net.即是在B/S模式下开发.现在企业大部分的业务都是面向B/S模式的.所以对 ...

  2. SqlSession接口和Executor

    mybatis框架在操作数据的时候,离不开SqlSession接口实例类的作用.可以说SqlSession接口实例是开发过程中打交道最多的一个类.即是DefaultSqlSession类.如果笔者记得 ...

  3. 【BZOJ3894】文理分科 最小割

    [BZOJ3894]文理分科 Description 文理分科是一件很纠结的事情!(虽然看到这个题目的人肯定都没有纠结过) 小P所在的班级要进行文理分科.他的班级可以用一个n*m的矩阵进行描述,每个格 ...

  4. js让程序暂停运行的方法

    //自己写的暂停毫秒数的函数 function pauseTime(millTime) { var start=Date.now(); while(true){ var nowTime=Date.no ...

  5. 170323、Spring 事物机制总结

    spring两种事物处理机制,一是声明式事物,二是编程式事物 声明式事物 1)Spring的声明式事务管理在底层是建立在AOP的基础之上的.其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加 ...

  6. Dynamic Programming: Fibonacci

    Recently I watched an interesting video in youtube, the vbloger use calculating Fibonacci number to ...

  7. PAT 甲级 1026 Table Tennis(模拟)

    1026. Table Tennis (30) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue A table ...

  8. 关于LegacyExchangeDN的问题

    IMCEAEX i NDR This problem is not common but quite annoying and usually hard to understood by users. ...

  9. idea破解方法

    1.http://idea.lanyus.com/ 下载破解文件 2.将下载的JetbrainsIdesCrack-3.4-release-enc.jar破解文件放在idea安装目录下的bin中: 3 ...

  10. mysql 创建函数ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_f

    mysql 创建函数的时候 报错 ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL, or READS SQL D ...