性能测试Loadrunner与Mysql
1、库文件下载地址:http://files.cnblogs.com/files/xiaoxitest/MySQL_LoadRunner_libraries.zip
分别库文件和代码添加到Loadrunner bin目录和include目录下
2、vuser_init文件添加代码:
- #include "Ptt_Mysql.h"
- #include "mysql.h"
- #include "mysql_com.h"
- #include "mysql_time.h"
- #include "mysql_version.h"
- #include "typelib.h"
- #include "my_list.h"
- #include "my_alloc.h"
- #define MYSQLSERVER "172.16.1.220"
- #define MYSQLUSERNAME "dbuser"
- #define MYSQLPASSWORD "1qaz@wsx"
- #define MYSQLDB "sroa_lyt"
- #define MYSQLPORT "3309"
- char chQuery[1024];
- int statu=1;
- int status=0;
- MYSQL *Mconn;
- char sql_query[256], sql_sub_query[50];
- int i=0, res=0, conn_fail=0, conn_iter=0;
- char response[50];// to go
- vuser_init()
- {
- lr_load_dll ("libmysql.dll");
- lr_start_transaction("mysql_conn"); //设置一个连接数据库的事务
- /*------------------------------------------------------------------------*/
- /* Initialise MySQL */
- if(!(Mconn = mysql_init(NULL)))
- {
- lr_message("Error -1: Cannot initialize MySQL - %s", mysql_error(Mconn));
- //return -1;
- statu = 0;
- lr_end_transaction("mysql_conn", LR_FAIL); //初始化数据库失败判定事务失败
- }
- /*------------------------------------------------------------------------*/
- do
- {
- /* Connect to database */
- if (!mysql_real_connect(Mconn, MYSQLSERVER, MYSQLUSERNAME, MYSQLPASSWORD, MYSQLDB, atoi(MYSQLPORT), NULL, 0))
- {
- conn_fail = -2;
- conn_iter++;
- sleep(100);
- }
- else
- conn_fail = 0;
- }
- while(conn_fail < 0 && conn_iter < 10);
- if (conn_fail < 0)
- {
- lr_message("Error -2: %s", mysql_error(Mconn));
- //mysql_close(Mconn);
- //return -2;
- statu = 0;
- lr_end_transaction("mysql_conn", LR_FAIL); //连接数据库失败判定事务失败
- }
- else
- {
- //lr_message("MySql - Good Connection");
- //mysql_close(Mconn);
- statu = 1;
- lr_end_transaction("mysql_conn", LR_PASS); //连接数据库成功,事务通过。
- }
- return 0;
- }
3、Action文件添加代码
- Action()
- {
- if(statu){ //成功连接数据库后才进行执行sql的操作
- lr_start_transaction("mysql_select");
- sprintf(chQuery, "SELECT id, lb, title, nr, attachment_id, attachment_name, pic_name, fbsj, fbbm, fbr, vcount FROM sroa_lyt.oa_news;");//查询论坛用户
- //sprintf(chQuery,"UPDATE lr_test SET password = "%s" WHERE username='tom'",lr_eval_string ("{pwd}"));
- /*
- sprintf(chQuery,"update pre_ucenter_members set username='dd' where username='qq' ");//更改用户名qq为dd
- sprintf(chQuery,"delete from pre_ucenter_members ORDER BY uid desc LIMIT 1");//删除最后添加的一条数据
- */
- status = lr_mysql_query(Mconn, chQuery);
- if(status!=0){ //判断sql是否执行成功
- lr_end_transaction("mysql_select",LR_FAIL);
- }else{
- lr_end_transaction("mysql_select",LR_PASS);
- }
- lr_start_transaction("mysql_insert");
- 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)");//插入数据
- status = lr_mysql_query(Mconn, chQuery);
- if(status!=0){ //判断sql是否执行成功
- lr_end_transaction("mysql_insert",LR_FAIL);
- }else{
- lr_end_transaction("mysql_insert",LR_PASS);
- }
- }
- return 0;
- }
4、vuser_end文件添加代码:
- vuser_end()
- {
- lr_mysql_disconnect(Mconn); //关闭数据库连接
- return 0;
- }
性能测试Loadrunner与Mysql的更多相关文章
- 老李分享:loadrunner操作mysql数据库
老李分享:loadrunner操作mysql数据库 在poptest测试开发工程师就业培训的课程中,针对一套商业系统进行性能测试,目标是mysql后台数据库的负载能力,在这里我把测试代码 ...
- LoadRunner参数化MySQL
准备:安装[msql-ODBC驱动] 一.配置数据源 1.Win7,打开控制面板-系统和安全-管理工具,点击“数据源(ODBC)”. 打开数据源(ODBC),在用户DSN选项卡中点击“添加”按钮,弹出 ...
- 老李分享:Eclipse中开发性能测试loadrunner脚本
老李分享:Eclipse中开发性能测试loadrunner脚本 前篇我分享了如何用loadrunner搭建javauser的性能测试脚本环境,本次我来告诉大家如何在eclipse开发loadrunne ...
- [性能测试] LoadRunner结果分析 – TPS(转)
[性能测试] LoadRunner结果分析 – TPS 针对吞吐率和 TPS 的关系,这个在结果分析中如何使用,就个人经验和朋友讨论后,提出如下建议指导,欢迎同僚指正. 相关定义 响应时间 = 网络响 ...
- 转 14 jmeter性能测试实战--数据库MySQL
14 jmeter性能测试实战--数据库MySQL 需求 测试用户表(对用户表select操作) 测试步骤 1.MySQL驱动下载并安装. 2.测试计划面板点击"浏览"按钮,将 ...
- lib库实现loadrunner驱动mysql性能测试
一.添加mysql驱动链接文件到loadrunner的bin和include目录下 以下链接为本人云盘分享,也可百度自行寻找下载源. http://yunpan.cn/cfTxbANSvipGi ...
- 【性能测试】:loadrunner直压MYSQL数据库的脚本开发
有时性能测试,会涉及到直接压测数据库,测试数据库处理sql的水平,或者通过sql脚本向数据库写数据做铺地数据 这里贴上一个自己用的对数据库操作的脚本 一,首先要去下载一个LR压MYSQL的一个库文件, ...
- Jememeter和Loadrunner测试MySQL性能
From:http://blog.csdn.net/testingstar/article/details/60579454 MySQL数据库性能测试的方法 前置条件: 安装系统:windows 7 ...
- LoadRunner访问Mysql数据库
这是很久以前编写的一个测试案例,那时是为了检查大量往Mysql数据库里插入数据,看一下数据库的性能如何?服务器是否会很快就被写满了. 前期的准备工作:Mysql 数据库搭建,LoadRunner,li ...
随机推荐
- sizeof 数组与指针
在学习指针的时候,得到指针的定义和数组的定义一样,但是这时候就很好奇,指针只是一个地址,那数组和指针一样的话,sizeof时怎么得知其长度呢. 于是百度了下面的回复: 千万不要把数组名看成指针,尽管有 ...
- 正则表达式Regex
1.概念 正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表通常被用来检索.替换那些符合某个模式( ...
- iOS开发之 -- bundle程序束的制造
我们在写项目的时候,需要添加大量的图片,这个时候除了在x-code-->Assets文件里面添加图片外,还可以添加程序束,这样的话 项目看起来比较整齐,也显得比较专业,下面就来说一下程序束的制造 ...
- 创建4个线程,两个对j加一,两个对j减一(j两同两内)
package multithread; public class MyThread { //j变量私有 private int j; //同步的+1方法 private synchronized v ...
- 关于Win7 x64下过TP保护(应用层)(转)
非常感谢大家那么支持我上一篇教程.Win10 快出了,所以我打算尽快把应用层的部分说完. 调试对象:DXF调试工具:CE.OD.PCHunter.Windbg调试先言:TP的应用层保护做得比较多,包括 ...
- 【BZOJ4598】[Sdoi2016]模式字符串 树分治+hash
[BZOJ4598][Sdoi2016]模式字符串 Description 给出n个结点的树结构T,其中每一个结点上有一个字符,这里我们所说的字符只考虑大写字母A到Z,再给出长度为m的模式串s,其中每 ...
- PHP HTTP协议:防盗链
test.html:主界面 <html> <head> <meta http-equiv="content-type" content="t ...
- TCL电视直播软件
升级你的电视系统我的型号46寸 V7300 3D,具体的升级程序在"技术宅"里有下载 找个格式化过的U盘把你的程序拷贝进去,插在电视上,电视会自动升级 当你成功安装V8-0MT32 ...
- 160505、oracle 修改字符集 修改为ZHS16GBK
修改oracle字符集 方法/步骤 oracle数据库的字符集更改 A.oracle server 端 字符集查询 select userenv('language') from dual 其中N ...
- 面试之二:Redis是单线程还是多线程?以及处理模型。
Redis是单线程还是多线程?以及处理模型. 线程:单线程 处理模型:参考书<Redis 设计与实现>P151-152 ![](https://ws1.sinaimg.cn/large ...