軟件測試工具Loadrunner擴展開發的一點感想[1] 軟件測試
最近在應用VC6,大量采用win32 api擴展Loadrunner8.0/8.2的一些外圍功能,做到自動調節面向資源消耗目標的合適(臨界)并發數,碰到了幾個相當棘手問題。
如:
(1) 在Loadrunner controller design 界面上編程實現更改并發用戶數。
(2) 確保安全停止在運行的Loadrunner但不破壞已存在結果文件,如res.lrr等等。
由于沒有Loadrunner源代碼以及很detail的介紹Loadrunner內部結構的資料,為了突破這些點,耗費了相當的力氣。
如果我們換成對JMeter的外圍擴展內,在一堆結構清晰的代碼面前,突破這些功能難度可能陡降。
經過這些天的嘗試,對擴展黑盒工具的難度有一個更加清晰的認知,實踐才知道水有多深。
下面簡單介紹下如何做到編程更改Loadrunner并發數的幾個思路。
1)EnumWindows/GetWindowText 結合spy++,硬編碼檢索到窗口層次關系,獲取classname=GridControl、windows caption=GridClass的控件,然后利用grid控件的行、列改寫數據。
可是classname=GridControl僅僅是注冊窗口時的一個友好名字,并非真正實現類。這個實現這個控件的類是什么呢? 這下卡殼了。
從安全工程師哪邊拿到LookingGlass.exe、FABERTOYS(進程管理).EXE等工具,企圖嗅探出ocx但未果。
其他難度、實現成本比較高、非常笨拙操控grid的方式還有: 利用IDAPro動態調試或者進程注入修改對應內存內容,這個有時間再琢磨下。
原文轉自:http://www.anti-gravitydesign.com