• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    LoadRunner中的事務--好友冰巖友情原創

    發布: 2008-7-30 22:02 | 作者: 陽光 | 來源: 本站原創 | 查看: 1387次 | 進入軟件測試論壇討論

    領測軟件測試網

    MILY: 宋體; mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">事務又稱為Transaction,在LoadRunner中的定義如下:An end-to-end(browser-to-browser) measurement of one or more user actions within action file。中文理解如下:事務(Transaction)是這樣一個點,我們為了衡量某個action的性能,需要在action的開始和結束位置插入這樣一個范圍,這就定義了一個transaction。

    事務的作用:LoadRunner 運行到該事務的開始點時,LoadRunner 就會開始計時,直到運行到該事務的結束點,計時結束。這個事務的運行時間在LoadRunner的運行結果中會有反映。通俗的講LoadRunner中的事務就是一個計時標識,LoadRunner在運行過程中一旦發現事務的開始標識,就開始計時,一旦發現事務的結束表示,則計時結束,這個過程中得到的時間即為一個事務時間。通常事務時間所反映的是一個操作過程的響應時間。

    下面我們說說為什么在LoadRunner中使用事務。為什么使用事務的原因是多種多樣的,總結下來如下五點所示:

    1、事務是 LoadRunner 度量系統性能指標的唯一手段;(沒有事務則沒有辦法衡量系統的響應時間,也許有人說LoadRunner可以通過編程來計時得到,不錯如果你編程能力夠強是能夠實現的,但肯定不如LoadRunner中的事務用的簡單而且方便)

    2、事務能夠用于度量高風險業務流程的性能指標;

    3、事務能夠度量在一組操作中每一步的性能指標;

    4、通過事務計時實現了不同壓力負載下的性能指標對比;

    5、通過事務計時可以幫助定位性能瓶頸;

    性能測試的角度出發,我們需要知道不同的操作所花費的時間,這樣我們就可以衡量不同的操作對被測系統所造成的影響,那么我們如何知道不同的操作所花費的時間,這就用到了事務,我們在操作之前插入一個事務開始標識,在操作完成后插入一個事務結束表示,這樣我們就知道了這個操作所花費的時間。

    接著我們說說如何使用事務,以及事務應該應用在什么地方。

    使用事務有如下幾種方法:

    1、方法一:腳本生成后,手動插入事務;方法:在LoadRunner腳本中點擊鼠標:右鍵,選擇“InsertStart Transaction”彈出一個對話框,輸入一個事務名字(注:事務名字可以為中文、可以為英文,也可以中英文混合,但推薦的做法是起一個容易理解的名稱,例如想知道登錄所花費的時間,則插入事務可以命名為login或登錄);“Start Transaction”插入完成后,還需要插入一個“End Transaction”,用以標識事務結束;注:Start TransactionEnd Transaction需要成對出現,如果僅插入Start Transaction則腳本編譯會提示錯誤;此外,還可以通過LoadRunner vugen中的“Insert”菜單插入Start TransactionEnd Transaction;

    2、方法二:在腳本錄制過程中插入Start TransactionEnd Transaction;在腳本錄制過程中,通過錄制工具條上的Start TransactionEnd Transaction圖標插入事務,如下圖所示:

    3、方法三:通過Run-time Settings 中的Automatic Transactions自動生成事務,如下圖所示:

    注:該種方法插入的事務僅能在LoadRunner Controller中的圖表和報告中看到在腳本的log中看不到。

    以上為事務的插入方法,無論是那種方法,插入事務后,我們都可以在腳本中看到如下兩個函數:lr_start_transaction("事務")  lr_end_transaction("事務", LR_AUTO),前一個為事務開始函數,后一個為事務結束函數,括號中引號中的內容為事務名稱。

    事務舉例:如下為一個LoadRunner所生成的腳本。

        web_url("Folder.jsp_4",

                  "URL=http://172.17.16.5/xpc71/jsp/com/folder/Folder.jsp",

                  "Resource=0",

                  "RecContentType=text/html",

                  "Referer=http://172.17.16.5/xpc71/LoginAction.do",

                  "Snapshot=t10.inf",

                  "Mode=HTML",

                  LAST);

           web_url("TemplateAdminAction.do",

                  "URL=http://172.17.16.5/xpc71/TemplateAdminAction.do?forwardID=1",

                  "Resource=0",

                  "RecContentType=text/html",

                  "Referer=http://172.17.16.5/xpc71/LoginAction.do",

                  "Snapshot=t11.inf",

                  "Mode=HTML",

                  LAST);

     

           web_submit_form("ScheduleCreationAction.do",

                  "Snapshot=t12.inf",

                  ITEMDATA,

                  "Name=PTName", "Value=test", ENDITEM,

                  "Name=headerTempID", "Value=ttte", ENDITEM,

                  "Name=selectHeader", "Value=1", ENDITEM,

                  "Name=schTempID", "Value=preProductionDetailTemplate", ENDITEM,

                  LAST);

     

    我們插入事務之后如下所示:

     

        lr_start_transaction("事務");

        lr_start_transaction("事務1");

        lr_start_transaction("事務2");

     

        web_url("Folder.jsp_4",

                  "URL=http://172.17.16.5/xpc71/jsp/com/folder/Folder.jsp",

                  "Resource=0",

                  "RecContentType=text/html",

                  "Referer=http://172.17.16.5/xpc71/LoginAction.do",

                  "Snapshot=t10.inf",

                  "Mode=HTML",

                  LAST);

           lr_end_transaction("事務", LR_AUTO);

           web_url("TemplateAdminAction.do",

                  "URL=http://172.17.16.5/xpc71/TemplateAdminAction.do?forwardID=1",

                  "Resource=0",

                  "RecContentType=text/html",

                  "Referer=http://172.17.16.5/xpc71/LoginAction.do",

                  "Snapshot=t11.inf",

                  "Mode=HTML",

                  LAST);

           lr_end_transaction("事務1", LR_AUTO);

     

           web_submit_form("ScheduleCreationAction.do",

                  "Snapshot=t12.inf",

                  ITEMDATA,

                  "Name=PTName", "Value=test", ENDITEM,

                  "Name=headerTempID", "Value=ttte", ENDITEM,

                  "Name=selectHeader", "Value=1", ENDITEM,

                  "Name=schTempID", "Value=preProductionDetailTemplate", ENDITEM,

                  LAST);

           lr_end_transaction("事務2", LR_AUTO);

    解釋:

    Ø        “事務”統計的時間為

    web_url("Folder.jsp_4",

                         "URL=http://172.17.16.5/xpc71/jsp/com/folder/Folder.jsp",

                         "Resource=0",

                         "RecContentType=text/html",

                         "Referer=http://172.17.16.5/xpc71/LoginAction.do",

                         "Snapshot=t10.inf",

                         "Mode=HTML",

                         LAST);

    所執行的時間;

    Ø        “事務1”統計的時間為:

           web_url("Folder.jsp_4",

                  "URL=http://172.17.16.5/xpc71/jsp/com/folder/Folder.jsp",

                  "Resource=0",

                  "RecContentType=text/html",

                  "Referer=http://172.17.16.5/xpc71/LoginAction.do",

                  "Snapshot=t10.inf",

                  "Mode=HTML",

                  LAST);

           web_url("TemplateAdminAction.do",

                  "URL=http://172.17.16.5/xpc71/TemplateAdminAction.do?forwardID=1",

                  "Resource=0",

                  "RecContentType=text/html",

                  "Referer=http://172.17.16.5/xpc71/LoginAction.do",

                  "Snapshot=t11.inf",

                  "Mode=HTML",

                  LAST);

    所執行的時間;

    Ø        “事務2”統計的時間為:

           web_url("Folder.jsp_4",

                  "URL=http://172.17.16.5/xpc71/jsp/com/folder/Folder.jsp",

                  "Resource=0",

                  "RecContentType=text/html",

                  "Referer=http://172.17.16.5/xpc71/LoginAction.do",

                  "Snapshot=t10.inf",

                  "Mode=HTML",

                  LAST);

    web_url("TemplateAdminAction.do",      

    "URL=http://172.17.16.5/xpc71/TemplateAdminAction.do?

    forwardID=1",

                  "Resource=0",

                  "RecContentType=text/html",

                  "Referer=http://172.17.16.5/xpc71/LoginAction.do",

                  "Snapshot=t11.inf",

                  "Mode=HTML",

                  LAST);

     

           web_submit_form("ScheduleCreationAction.do",

                  "Snapshot=t12.inf",

                  ITEMDATA,

                  "Name=PTName", "Value=test", ENDITEM,

                  "Name=headerTempID", "Value=ttte", ENDITEM,

                  "Name=selectHeader", "Value=1", ENDITEM,

    "Name=schTempID", "Value=preProductionDetailTemplate", ENDITEM,

                  LAST);

    所執行的時間;

    從上文我們可以看出事務之間可以嵌套使用,相互之間沒有影響,事務計時僅僅以事務名稱為標識。

    總結:

            使用LoadRunner transactions可以度量:

        業務流程中每一步所花費的時間

        整個業務流程所花費的時間

        業務流程中每一步的性能指標可以自動度量

            可以在錄制過程中和錄制完成后增加LoadRunner transactions

            利用 “automatic LoadRunner transactions” 可以很方便的度量每一步的性能指標。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: loadrunner LoadRunner Loadrunner 事務 原創 好友 友情


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>