日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

LoadRunner如何调用外部函数

發(fā)布時間:2024/7/19 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 LoadRunner如何调用外部函数 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

LoadRunner如何調(diào)用外部函數(shù)

?

?? 使用 VuGen 時,可以調(diào)用在外部 DLL 中定義的函數(shù)。通過從腳本調(diào)用外部函
數(shù),可以降低腳本的內(nèi)存使用量以及總體運行時間。
要調(diào)用外部函數(shù),需要加載定義了該函數(shù)的 DLL。
可以用下列方法加載 DLL:
?本地— 用于一個腳本,使用 lr_load_dll 函數(shù)。
?全局— 用于所有腳本,方法是向 vugen.dat 文件中添加語句

加載 DLL — 本地
? 使用 lr_load_dll 函數(shù)可以在 Vuser 腳本中加載 DLL。DLL 加載成功之后,可以
調(diào)用 DLL 中定義的任何函數(shù),而無需在腳本中對其進(jìn)行聲明。
要調(diào)用 DLL 中定義的函數(shù),請執(zhí)行下列操作:
1 使用 lr_load_dll 函數(shù)在腳本的開頭加載 DLL。將語句放在 vuser_init 部分的開
頭。lr_load_dll 將替換 ci_load_dll 函數(shù)。
請使用以下語法:
lr_load_dll(library_name);
注意,在 UNIX 平臺中, DLL 被稱為共享庫。該庫的擴(kuò)展名取決于平臺。
2 在腳本的適當(dāng)位置調(diào)用 DLL 中定義的函數(shù)。
在下例中,創(chuàng)建表 Test_1 之后,調(diào)用了在 orac1.dll 中定義的 insert_vals 函數(shù)。

int LR_FUNC Actions(LR_PARAM p)
{
lr_load_dll("orac1.dll");
lrd_stmt(Csr1, "create table Test_1 (name char(15), id integer)\n", -1,
1 /*Deferred*/, 1 /*Dflt Ora Ver*/, 0);
lrd_exec(Csr1, 0, 0, 0, 0, 0);
/* Call the insert_vals function to insert values into the table.*/
insert_vals();
lrd_stmt(Csr1, "select * from Test_1\n", -1, 1 /*Deferred*/, 1 /*Dflt Ora Ver*/,
0);
lrd_bind_col(Csr1, 1, &NAME_D11, 0, 0);
lrd_bind_col(Csr1, 2, &ID_D12, 0, 0);
lrd_exec(Csr1, 0, 0, 0, 0, 0);
lrd_fetch(Csr1, -4, 15, 0, PrintRow14, 0);

注意: 您可以為 DLL 指定完整路徑。如果不指定路徑, lr_load_library 將使用
Windows?平臺上的 C++ 函數(shù) LoadLibrary 所使用的標(biāo)準(zhǔn)序列來搜索 DLL。在
UNIX 平臺上,可以設(shè)置 LD_LIBRARY_PATH 環(huán)境變量(或平臺上與其等效的
變量)。lr_load_dll 函數(shù)使用與 dlopen 相同的搜索規(guī)則。有關(guān)詳細(xì)信息,請參
閱 dlopen 或與其等效的主頁。

加載 DLL — 全局
可以全局加載 DLL,使其函數(shù)能夠用于所有 Vuser 腳本。DLL 加載成功之后,
可以調(diào)用 DLL 中定義的任何函數(shù),而無需在腳本中對其進(jìn)行聲明。
要調(diào)用 DLL 中定義的函數(shù),請執(zhí)行下列操作:
1 向 mdrv.dat 文件(位于應(yīng)用程序的 dat 目錄)的相應(yīng)部分中添加要加載的 DLL
列表。
請使用以下語法:
PLATFORM_DLLS=my_dll1.dll, my_dll2.dll, …
用您的特定平臺替換單詞 PLATFORM。有關(guān)平臺的列表,請參閱 mdrv.dat 文件
的開始部分

例如,要在 NT 平臺上為 Winsocket Vuser 加載 DLL,請向 mdrv.dat 文件中添
加下列語句:

[WinSock]
ExtPriorityType=protocol
WINNT_EXT_LIBS=wsrun32.dll
WIN95_EXT_LIBS=wsrun32.dll
LINUX_EXT_LIBS=liblrs.so
SOLARIS_EXT_LIBS=liblrs.so
HPUX_EXT_LIBS=liblrs.sl
AIX_EXT_LIBS=liblrs.so
LibCfgFunc=winsock_exten_conf
UtilityExt=lrun_api
ExtMessageQueue=0
ExtCmdLineOverwrite=-WinInet No
ExtCmdLineConc=-UsingWinInet No
WINNT_DLLS=user_dll1.dll, user_dll2.dll, …
2 在腳本的適當(dāng)位置調(diào)用 DLL 中定義的函數(shù)。

?

轉(zhuǎn)自:http://www.51testing.com/html/66/34866-101583.html

轉(zhuǎn)載于:https://www.cnblogs.com/abcd19880817/p/7201301.html

總結(jié)

以上是生活随笔為你收集整理的LoadRunner如何调用外部函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。