您的位置:軟件測試 > 開源軟件測試 > 開源性能測試工具 > openSTA
如何用OpenSTA進行web性能測試
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時間:[ 2013/4/8 16:14:51 ] 推薦標簽:

  OpenSTA 測試的組成

  OpenSTA 測試

  OpenSTA 測試是一組用戶控制的定義,其中包括腳本、性能指標收集器還有用于運行測試的參數(shù)。測試運行會生成由圖形或者表格顯示的結(jié)果。腳本和性能指標收集器是測試 的構(gòu)建模塊?梢员辉S多不同的測試所引用。腳本決定了測試的內(nèi)容,指標收集器則定義了測試運行期間將被收集的數(shù)據(jù)。添加到測試中的腳本和性能指標收集器會 被放在測試任務(wù)組中。通過對每個測試任務(wù)組采用不同的設(shè)置來控制測試的運行以及目標 WAE 的負載水平。測試任務(wù)組的設(shè)置包括虛擬用戶的數(shù)量、所使用的主機數(shù)目和一次測試運行腳本的回放次數(shù)。性能測試的開發(fā)首先需要對結(jié)構(gòu)和內(nèi)容進行規(guī)劃。然后按 序創(chuàng)建測試所需要的腳本和性能指標收集器。

  OpenSTA 腳本

  腳本構(gòu)成了 HTTP/S性能測試的內(nèi)容,記錄了用戶通過瀏覽器向目標網(wǎng)絡(luò)應用環(huán)境(WAE)發(fā)出的請 求。腳本是通過代理服務(wù)器或者 Gateway 傳輸 HTTP/S 通信,使用 SCL(腳本控制語言)命令取代原來的 HTTP/S 命令生成的。腳本建模器根據(jù) Web 會話期間的 HTTP/S 通信來創(chuàng)建腳本,使用 SCL 語言記錄了 HTTP/S 活動。當測試開始運行,該腳本會回放所有原始請求。這意味著目標 Web 應用環(huán)境(WAE)將接收來自模擬瀏覽器用戶,或虛擬用戶的并發(fā),異步連接和請求,如同真實的終端用戶一樣。使用 SCL 編寫腳本,可以對內(nèi)容進行控制。通過引入變量來取代腳本錄制生成的固定值,可以在指定的負荷水平上測試 Web 活動,從而使性能測試更為靈活有效。

  腳本的錄制,會產(chǎn)生一個 .HTP 文件和一個 .ALL 文件。.HTP 文件包含了在 SCL 編寫過程中,Web 會話期間發(fā)出的所有 HTTP/S 瀏覽器請求。這個文件是腳本,它會作為 Web 性能測試的一部分被建模和回放。而 .ALL 文件則將 WAE 響應保存在不同分類下,包括可以被用來對附屬腳本進行建模的 DOM。所有的腳本都保存在存儲庫中,可以被不同的測試所引用。

  OpenSTA Gateway

  Gateway 是 OpenSTA 的一個組件,它與腳本建模器直接對接,記錄 HTTP/S 通信,并創(chuàng)建腳本。它相當于一個代理服務(wù)器,位于客戶端瀏覽器和承載了 WAE 環(huán)境的遠程 Web 服務(wù)器之間。當你開始使用腳本建模器進行錄制,Gateway 會覆蓋瀏覽器的一些 Internet 連接設(shè)置,強迫使用代理服務(wù)器,在這里特指的是 Gateway。Gateway 可以記錄瀏覽器和 WAE 之間的網(wǎng)絡(luò)活動,并產(chǎn)生一個 SCL 語言描述的腳本。 Gateway 將所有的瀏覽器請求存儲在 HTP 文件中,WAE 對瀏覽器請求的響應則存儲在 .ALL 文件中。.ALL 文件包含的 HTML 數(shù)據(jù)與 .HTP 文件中的內(nèi)容有著直接聯(lián)系。通過對 .ALL 文件的信息進行處理,可以實現(xiàn)腳本的建模。

  OpenSTA 腳本和 SCL

  SCL 是用于控制和記錄 HTTP/S 通信的腳本控制語言。使用的 SCL 編寫腳本,給開發(fā)切合實際的性能測試提供了建模能力。當你運行一個測試的時候,為了給一個或者多個目標 WAE 環(huán)境提供足夠的負載,你可以編寫一個腳本或者一個腳本序列,來模擬成千上萬的虛擬用戶。

   OpenSTA 腳本和測試運行

  HTTP/S 的通信是 Web 會話期間生成的關(guān)鍵信息。對它進行捕獲,使你能夠記錄各種瀏覽器類型在不同平臺的的活動。腳本可以被編寫,然后在測試中被引用。錄制和編寫腳本后,你可以 重放腳本從而重現(xiàn)原始的瀏覽器命令。HTTP/S 請求并發(fā)異步運行,建立起和原始的 Web 對話一樣多的 TCP 連接,連接數(shù)目可以因為你選擇運行測試的虛擬用戶數(shù)量而成倍增加。與其它仿真技術(shù)相比,開發(fā)和執(zhí)行基于 SCL 的測試消耗更少的資源。這使 OpenSTA 可以支持虛擬用戶數(shù)量較大的測試。

  OpenSTA Repository

  Repository 是 OpenSTA 在硬盤驅(qū)動器或網(wǎng)絡(luò)計算機上的一個存儲區(qū)域。其中保存了所有測試定義文件,包括腳本和性能指標收集器。另外,測試運行期間產(chǎn)生的所有結(jié)果文件也都存儲在這 里。Repository 的內(nèi)容和結(jié)構(gòu)可以通過 commander 的 Repository 窗口來查看。它位于主窗口的左側(cè),能夠顯示存儲的所有腳本、性能指標收集器和測試。你可以從 Repository 窗口開始創(chuàng)建新的腳本或者打開現(xiàn)有腳本。

  OpenSTA 腳本開發(fā)

  腳本包含了測試的內(nèi)容,需要進行提前的錄制。通過 OpentSTA Commander來啟動腳本建模器,進行腳本的錄制和編輯并把它添加到你的測試中。在你開始錄制腳本前,應該先選擇配置。對于不同的計算機網(wǎng)絡(luò)配置,OpenSTA 提供了幾種選擇。你可以選擇用來錄制腳本的瀏覽器類型以及連接方式。

  腳本的錄制

  打開 Commander 選擇 File->New Script->HTTP。 在 Repository 窗口中,右鍵單擊 Scripts文件夾,并選擇 New Script->HTTP。腳本將出現(xiàn)在 Repository 窗口,腳本的圖標上會出現(xiàn)一個紅色小叉,表明該文件沒有任何內(nèi)容。只要你打開的腳本,錄制一個 Web 會話,腳本圖標的小叉會消失。

  右鍵單擊新腳本的圖標,選擇 Rename,輸入一個符合 OpenSTA Dataname 的名稱,多 60 個字符。

  雙擊新腳本的圖標, 啟動腳本建模器。

  在捕獲 / 回放工具欄點擊錄制按鈕,或者選擇 Capture->Record,來開始腳本 錄制。這個動作會啟動你所選擇的 Gateway 和 Web 瀏覽器。當錄制開始,瀏覽器的主頁 Internet 選項會被腳本建模器重寫,瀏覽器的主頁將變成一個空白的 HTML 頁面。這樣以確保你的正常主頁不會被啟動并記錄在腳本中。注意:如果沒有手動選擇遠程錄制模式,Gateway 會默認啟動本地錄制。

  鍵入一個 URL,回車,或從瀏覽器的 URL 地址欄打開一個網(wǎng)址。然后正常的使用瀏覽器,執(zhí)行一些你想記錄到腳本上的動作。當您正在錄制一個 Web 會話時,使用 Capture/Replay工具欄的添加注釋按鈕來添加注釋,同樣您也可以選擇 Capture->Insert Comments。它們可以在進行單步執(zhí)行時向你提供幫助。但是添加評論的時間不會被記錄在腳本中。

  當你完成所需要的瀏覽器動作后,在 Capture/Replay工具欄單擊停止按鈕或者直接關(guān)閉瀏覽器以切換回腳本建模器。當你完成腳本的錄制,腳本窗格中會顯示 SCL 格式的數(shù)據(jù)。

  保存新腳本之前,需要使用語法檢查選項來對它進行編譯,以確保錄制結(jié)果的有效性。選擇 Capture->Syntax Check或在 Capture/Replay工具欄中單擊編譯按鈕。編譯結(jié)果會顯示到輸出窗格中。如果編譯失敗,則要通過重新錄制腳本或者編輯腳本的內(nèi)容來解決。

  編譯成功后,選擇 Capture->Replay或者點擊 Capture/Replay工具欄的回放按鈕來回放腳本以檢查已錄制的結(jié)果。

  錄制完成后,在標準工具欄中點擊保存按鈕或者單擊 File->Save將腳本保存在 Repository 中。

  選擇 File->Close以關(guān)閉當前腳本或者 File->Exit以退出腳本建模器。 如有未保存的腳本,在程序關(guān)閉之前會有自動提示對它們進行保存。關(guān)閉腳本建模器的同時也會關(guān)閉關(guān)聯(lián)的瀏覽器并恢復原有的瀏覽器設(shè)置。

上一頁12345下一頁
軟件測試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd