• 利用Lib库实现LoadRunner测试Mysql性能


    由于项目初期测试计划并没有涉及Mysql的性能测试,只是针对前端及负载做了性能测试,于是乎就在上线后出现了各种Mysql死锁等问题。正好在项目1.0期之后出现空档,自己可以研究一下关于Mysql的性能测试。本期也只是记录通过LoadRunner官方库去实现Mysql的连接及SQL事务提交的步骤,真正的性能测试还没有开始。

    1。LoadRunner的mysqllib库

      下载地址:http://down.51cto.com/data/403722

      安装步骤:解压文件,将bin和include文件覆盖至LoadRunner根目录下;

      库函数文件:Ptt_Mysql.h文件;

      调用函数:lr_mysql_connect();lr_mysql_query();lr_mysql_disconnect();

    2。代码实现

      vuser_init:

    #define MYSQLSERVER "*******" 		//mysql服务端IP
    #define MYSQLUSERNAME "*****"	        //mysql用户名
    #define MYSQLPASSWORD "*****"  	        //mysql密码
    #define MYSQLDB "******"		//mysql数据库名
    #define MYSQLPORT "****" 		//mysql端口
    
    #include "Ptt_Mysql.h"			//导入库文件
    
    vuser_init()
    {
    	return 0;
    }    
    

       Action:

    {
    	char chQuery[128];
    	int resultValue;
    	MYSQL *Mconn;
    
    	lr_load_dll("libmysql.dll");
    
    	Mconn = lr_mysql_connect(MYSQLSERVER,MYSQLUSERNAME,MYSQLPASSWORD,MYSQLDB,atoi(MYSQLPORT));
    	strcpy(chQuery, "INSERT INTO `netbarapppolicys`.`dbsyncinfo`(syncversion) VALUES('112');");
    
    	lr_start_transaction("Insert");
    	resultValue = lr_mysql_query(Mconn, chQuery);   //执行SQL语句
    
    	if (resultValue != 0) 
    	{
    		lr_end_transaction("Insert",LR_FAIL);
    	}
    	else 
    	{
    		lr_end_transaction ("Insert",LR_PASS);
    	}
    
    	lr_mysql_disconnect(Mconn);
    
    	return 0;
    }
    

     3。注意

      让你的Mysql允许其他PC可以作为root连接。命令: grant all on *.* to 'root'@'IP' identified by 'password';

  • 相关阅读:
    div水平居中和垂直居中
    HTML流动布局各种宽度自适应
    PHP导出大量数据到excel表格
    等比例压缩图片到指定的KB大小
    SQLServer数据库中创建临时表
    Mysql数据库表关于几个int类型的字符长度
    JS 获取浏览器和屏幕宽高信息
    CTSC2018 & APIO2018 颓废 + 打铁记
    [UOJ#192]【UR #14】最强跳蚤
    ZJOI2018 Day2 滚粗记 + 流水账
  • 原文地址:https://www.cnblogs.com/GoldbachRhapsody/p/4595920.html
Copyright © 2020-2023  润新知