您的位置:首页 > 其它

LoadRunner 调用Dll完成加密解密

2017-02-17 09:33 567 查看
百度搜索:小强测试品牌     官网:http://xqtesting.sxl.cn

小强性能测试和python全栈自动化测试招生中,咨询QQ2083503238

LoadRunner(LR)里的函数真的少得相当可怜,连简单的一个MD5、Base64加密都没有。

但我们可以通过在C++里把一些加解密写成函数,供LR调用。

 

DLL函数编写

C++里新建工程Class Library(本人是用VS2005,在VS6貌像是:Win32 Dynamic-Link Library)

创建了一个叫LrLoadDll的工程,在LrLoadDll.cpp里编写以下代码:



#define LRLOADDLL __declspec(dllexport)
extern "C" LRLOADDLL int Sum(int a,int b);
extern "C" LRLOADDLL void GetString(char* out);

LRLOADDLL int Sum(int a,int b)

{

   return a + b;

}

LRLOADDLL void GetString(char* out)

{

   char* showString = "hello
world!";

   strcpy(out,showString);

   delete showString;

}

编出一个LrLoadDll.dll 的文件,下面就可以在LR里直接调用了。

 

LoadRunner调用Dll过程

当创建完LR工程就可以把dll添加进来当前脚本使用了,在脚本区域点右键选择Add Files to Script,弹出对放选择刚刚C++编出来的dll就可以了。



在调用前必须加载dll,你可以放在verser_init里加载,也可以在action里用到的时候加载,这样都可以(个人喜欢前者)。



vuser_init()

{

   lr_load_dll("LrLoadDll.dll"); 
   return 0;

}

调用:



Action()

{

   char * showString;

   int a = Sum(5,5);

   GetString(showString);

   lr_message("-------%d-------",a);

   lr_message("-------%s-------",showString);

   return 0;

}

输出结果:



-------10-------
-------hello world!-------

 

这样就OK了!

微信公众号:测试帮日记                   QQ群:229390571



  
                        

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: