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位]的更多相关文章

  1. loadrunner动态从mysql取值

    loadrunner动态从mysql取值 [需要下载跟数据库服务器一致的dll,32位或64位] loadrunner中有参数化从数据库中取值,但是只是静态的,对于一些要实时取值的数据就game ov ...

  2. Windows32位或64位下载安装配置Scala

    [学习笔记] Windows 32位或64位下载安装配置Scala: 1)下载地址:http://www.scala-lang.org/download/,看我的spark那节,要求scala是2.1 ...

  3. LoadRunner可以把关联取值当作检查点来使用

    在性能测试过程中,很多人都会想通过使用检查点来检查系统响应是否正常,LR的51Testing软件测试网E$S ]:x(d a6h.G \(y 检查点对“死”的,静态的 可以做到检查作业,但是对于动态时 ...

  4. LoadRunner参数化之数据取值和更新方式

    其实看LR已经很久了,每次看到参数化的取值更新时,都没有看透,了解个大概就为止了,也确实挺搞脑子的. 现在理解下来 分成2部分 取值方式  Select next row 如何从数据列表中取值 Seq ...

  5. Loadrunner 关于参数赋值取值的操作

    1.参数的赋值和取值 lr_save_string("hello world","param"); lr_eval_string("{param}&q ...

  6. Jquery为下拉列表动态赋值与取值,取索引

    接触前端也不久对jquery用的也只是皮毛,写过去感觉能复用的发出来,大家指点下 1.下拉列表动态赋值 function initddlYear() { var mydate = new Date() ...

  7. 64位windows下mysql安装

    登入mysql官网https://www.mysql.com/downloads/,点击Community,选择MySQL on Windows,选择MySQL Installer,选择MySQL S ...

  8. mysql操作入门基础之对数据库和表的增删改查

    一.数据库管理-- 1.登陆数据库 mysql -u root -p; -- 2.查看数据库服务器所有数据库 SHOW DATABASES; -- 3.创建数据库 CREATE DATABASE My ...

  9. 转 powerdesigner12.5在64位JDK下连接mysql数据库问题

    前因:由于项目在研发的过程中,数据库字段需要不停的增加和修改,导致最初设计的数据库原型无法使用,后来就想到用powerdesinger来反转数据库表结构. 环境:win7 64位系统,本机装有64位j ...

随机推荐

  1. json手动解析详解

    项目中有时候仅仅需要一个或者多个字段时可以使用这种解析方式,省去创建实体类. 1.首先讲解下最基本的数据格式. 例如: String json="{'name':'小明','action': ...

  2. java值传递和引用传递的理解

    java的基础数据类型有:(byte.short.int.long.float.double.char.boolean)八种 基础数据都是值传递,其他都是引用传递.但是引用传递要特别注意:String ...

  3. Docker镜像原理和最佳实践

    https://yq.aliyun.com/articles/68477 https://yq.aliyun.com/articles/57126  DockerCon 2016 深度解读: Dock ...

  4. Using Blocks in iOS 4: The Basics

    iOS 4 introduces one new feature that will fundamentally change the way you program in general: bloc ...

  5. PHP计算两个时间的年数、月数以及天数

    如何获取两个不同时间相差几年几月几日呢?比如当前时间距离2008年08月08日的北京奥运会有几年几月几日了?需要说明的是:1.定义一年为360天,一个月为30天:2.代码中86400=24*60*60 ...

  6. mac 下bash命令

    可以一行写一条命令 nginx uwsgi /Users/***/djangoprojects/bpmTest/uwsgi.ini 将上述命令保存成**.sh文件 这样,然后bash ***.sh 实 ...

  7. JDK8 下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    JDK8 下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 安装时最好在 ...

  8. 如何Enable FireFox里的Java Plugin

    步骤,Tools->Add-ons->Plugins 然后把Java(TM) PlatformXXX...的状态修改为Always Activate 如下图:

  9. 管理voting disks

     管理voting disks 一.关于voting disk 的一些必需要知道的东西: 11g 曾经我们能够使用dd 命令来备份voting disk ,可是在11g 以后 oracle 不再支 ...

  10. SpringBoot学习之常用注解

    @SpringBootAppliaction:通常注解写在SpringBoot启动类中,主要包括三个作用: 1.@Configuration表示将该类作用springboot配置文件类. 2.@Ena ...