loadrunner动态从mysql取值 [需要下载跟数据库服务器一致的dll,32位或64位]
loadrunner中有参数化从数据库中取值,但是只是静态的,对于一些要实时取值的数据就game over了,比如取短信验证码,因为MySQL中有一个libmysql.dll,里面提供了可以操作数据库的方法,所以我们可以调用这个dll连接数据库实时从数据库中取值
Action()
{
int status; //定义状态变量,0表示成功,非0表示失败
int db_connection; //定义初始化状态
int result; //定义查询结果状态
char *server = "*****"; // 数据库的ip地址
char *user = "test"; // 用户名
char *password = "123456"; // 密码
char *database = "*****"; // 数据库名称
int port = 3306; // 端口
int socket = NULL;
int flags = 0;
char** result_set; //定义查询的结果集
//数据库操作
status=lr_load_dll("E:\\VuGen Scripts\\libmysql.dll");
if (status!=0) {
lr_error_message("不能加载dll文件");
lr_error_message("%s",mysql_error(db_connection));//打印加载失败错误信息
mysql_close(db_connection);
lr_abort();
}
db_connection=mysql_init(NULL); //初始化mysql连接
if (db_connection==NULL ) { //如果链接状态为空就退出
lr_abort();
}
status=mysql_real_connect(db_connection,server,user,password,database,port,socket,flags);//连接到mysql数据库
//打印连接不成功的原因
if (status==NULL) {
lr_error_message("%s",mysql_error(db_connection));
mysql_close(db_connection);
lr_abort();
}
//调用dll方法执行查询语句
status=mysql_query(db_connection,"select vcode from cb_vcode_list where telphone=180******** and is_deleted=0");
//打印查询失败的原因
if (status!=0) {
lr_error_message("%s",mysql_error(db_connection));
mysql_close(db_connection);
lr_abort();
}
result=mysql_use_result(db_connection);//查询数据表
while (result_set=(char**)mysql_fetch_row(result)) {
lr_save_string(result_set[0],"vcode"); //将获取的数据保存为参数vcode
lr_output_message("vcode is %s",lr_eval_string("{vcode}")); //打印数据
if ( result_set==NULL) { //如果查询结果行为空 ,就关闭并退出
lr_error_message("没有查询到结果");
mysql_free_result(result);
mysql_close(db_connection);
lr_abort();
}
}
mysql_free_result(result); //释放结果集
mysql_close(db_connection); //关闭数据库连接
return 0;
}
loadrunner动态从mysql取值 [需要下载跟数据库服务器一致的dll,32位或64位]的更多相关文章
- loadrunner动态从mysql取值
loadrunner动态从mysql取值 [需要下载跟数据库服务器一致的dll,32位或64位] loadrunner中有参数化从数据库中取值,但是只是静态的,对于一些要实时取值的数据就game ov ...
- Windows32位或64位下载安装配置Scala
[学习笔记] Windows 32位或64位下载安装配置Scala: 1)下载地址:http://www.scala-lang.org/download/,看我的spark那节,要求scala是2.1 ...
- LoadRunner可以把关联取值当作检查点来使用
在性能测试过程中,很多人都会想通过使用检查点来检查系统响应是否正常,LR的51Testing软件测试网E$S ]:x(d a6h.G \(y 检查点对“死”的,静态的 可以做到检查作业,但是对于动态时 ...
- LoadRunner参数化之数据取值和更新方式
其实看LR已经很久了,每次看到参数化的取值更新时,都没有看透,了解个大概就为止了,也确实挺搞脑子的. 现在理解下来 分成2部分 取值方式 Select next row 如何从数据列表中取值 Seq ...
- Loadrunner 关于参数赋值取值的操作
1.参数的赋值和取值 lr_save_string("hello world","param"); lr_eval_string("{param}&q ...
- Jquery为下拉列表动态赋值与取值,取索引
接触前端也不久对jquery用的也只是皮毛,写过去感觉能复用的发出来,大家指点下 1.下拉列表动态赋值 function initddlYear() { var mydate = new Date() ...
- 64位windows下mysql安装
登入mysql官网https://www.mysql.com/downloads/,点击Community,选择MySQL on Windows,选择MySQL Installer,选择MySQL S ...
- mysql操作入门基础之对数据库和表的增删改查
一.数据库管理-- 1.登陆数据库 mysql -u root -p; -- 2.查看数据库服务器所有数据库 SHOW DATABASES; -- 3.创建数据库 CREATE DATABASE My ...
- 转 powerdesigner12.5在64位JDK下连接mysql数据库问题
前因:由于项目在研发的过程中,数据库字段需要不停的增加和修改,导致最初设计的数据库原型无法使用,后来就想到用powerdesinger来反转数据库表结构. 环境:win7 64位系统,本机装有64位j ...
随机推荐
- react 使用antd导航组件实现事件传递并局部刷新DOM
我们要实现一个通过点击顶部导航来查询左侧菜单的一个功能 在这个功能中,我们要应用到onClick={this.headNavMenuList.bind(this)}方法来传递点击 不同按钮来传递不同的 ...
- Codeforces Gym101473 F.Triangles-前缀和 (2013-2014 ACM-ICPC Brazil Subregional Programming Contest)
前缀和. 代码: 1 #include<iostream> 2 #include<cstring> 3 #include<cstdio> 4 #include< ...
- 2018年东北农业大学春季校赛 F wyh的集合【思维】
链接:https://www.nowcoder.com/acm/contest/93/F来源:牛客网 题目描述 你们wyh学长给你n个点,让你分成2个集合,然后让你将这n个点进行两两连接在一起,连接规 ...
- TopCoder SRM 301 Div2 Problem 1000 CorrectingParenthesization(区间DP)
题意 给定一个长度为偶数的字符串.这个字符串由三种括号组成. 现在要把这个字符串修改为一个符合括号完全匹配的字符串,改变一个括号的代价为$1$,求最小总代价. 区间DP.令$dp[i][j]$为把子 ...
- Topcoder SRM 668 DIV 2
VerySecureEncryption 模拟 题意: 给你个串message,然后一个置换key,输出置换K次后的结果. 题解: 直接模拟就好. 代码: #include<iostream&g ...
- 2016北京集训测试赛(六)Problem B: 矩阵
Solution 最小割. 参考BZOJ 3144切糕 在那道题的基础上将建图方法稍作变形: 我们对格子进行黑白染色, 对于两个格子之和\(\le k\)的限制, 就可以确定其中一个是白色格子, 一个 ...
- iOS博客列表
国外 iOSDevWeekly NSHipster NSBlog objcio Raywenderlich Bignerdranch NSScreencast 需FQ Pilky.me jeremyw ...
- node.js中的exports和module.exports
不同的编程语言都有各自的代码组织和复用的方式,如.net.php中的命名空间,python中的import,ruby中的module等,来避免命名空间污染.一直都没搞清楚node中的exports和m ...
- (译)关于使用Eclipse Memory Analyzer的10点小技巧
作者 Rave_Tian 2016.02.01 17:56* 字数 2988 阅读 520评论 0喜欢 0 分析和理解应用的内存使用情况是开发过程中一项不小的挑战.一个微小的逻辑错误可能会导致监听器没 ...
- 关于 Shiro 的权限匹配器和过滤器
项目源码:https://github.com/weimingge14/Shiro-project演示地址:http://liweiblog.duapp.com/Shiro-project/login ...