多線程類并發(fā)測試工作流系統(tǒng)
剛修完10.1長假,還沒緩過來,整天不想事事,閑逛論壇園子,偶見吉日老大的C# winform 窗體接收命令行參數(shù)自動登錄進(jìn)行系統(tǒng),模擬600個WCF客戶端的并發(fā)壓力測試。
http://www.cnblogs.com/jirigala/archive/2011/10/02/2197964.html
哈哈,想起我們也曾做過這樣并發(fā)測試,當(dāng)然和吉日老大一樣,沒有使用測試工具,是自己做的多線程并發(fā)測試,真是"高手"所見略同^_^.
可能大家又會說,為毛要自己寫,用loadrunner等壓力測試工具不是更好?
無奈,我就喜歡自己動手,豐衣足食。其實(shí)主要還是自己寫的測試類,發(fā)現(xiàn)問題了,方便調(diào)試,可以在IDE工具中設(shè)置斷點(diǎn),跟蹤調(diào)試啊,多快捷方便啊,其實(shí)我還是懶人一個!
閑話少說,直接上測試類方案了
說起來復(fù)雜,其實(shí)很簡單,就是寫個多線程類,不停的啟動流程,做業(yè)務(wù)流程節(jié)點(diǎn)的提交。
如下圖:線程主程
紅框1中http://localhost:8089/ebiao/servlet/WebBill?key=doSubmitData地址為模擬post到的web地址,我用本機(jī)發(fā)布,所以localhost
紅框2中 int max=100; 表示一次并發(fā)的數(shù)量100個,IBM thinkpad t61的老機(jī)器,先就100個吧
下圖:線程子程,用httpclient模擬post到web網(wǎng)站上
sb.append("<root userType='eform_inital_workflow'
pubParam='wf_name=wf_leave_condition;wf_version=1;init_actionid=4960;action_id=4926'><DsMain><t.....................
為post提交的頁面數(shù)據(jù),這里為啟動業(yè)務(wù)流程wf_leave_condition,版本1,
執(zhí)行初始化流程,得到流程實(shí)例,并執(zhí)行流程***個節(jié)點(diǎn)的提交,提交業(yè)務(wù)表單和執(zhí)行流程。使得當(dāng)前步驟到第二個節(jié)點(diǎn)
模擬一個這樣的提交過程。用我本機(jī)t61的老機(jī)器,連接oracle庫,100個并發(fā),28秒完成。
沒有那些cpu性能等的數(shù)據(jù),但是,如果有問題的話,可以在IDE的編程環(huán)境中設(shè)置斷點(diǎn)等,快速定位到bug所在,哈哈,也是懶人的一個方法。
原文鏈接:http://www.cnblogs.com/webreport/archive/2011/10/10/2205864.html
【編輯推薦】