技術(shù)報告基于Web性能測試的貼吧網(wǎng)站自動化測試_第1頁
技術(shù)報告基于Web性能測試的貼吧網(wǎng)站自動化測試_第2頁
技術(shù)報告基于Web性能測試的貼吧網(wǎng)站自動化測試_第3頁
技術(shù)報告基于Web性能測試的貼吧網(wǎng)站自動化測試_第4頁
技術(shù)報告基于Web性能測試的貼吧網(wǎng)站自動化測試_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、計劃類別 項目編號 項目技術(shù)報告課題名稱 項目主持人 承擔(dān)單位 題目:基于Web性能測試的貼吧網(wǎng)站自動化測試研究本文使用LoadRunner工具對貼吧網(wǎng)站進(jìn)行Web性能測試。貼吧是為學(xué)生們提供一個互動的空間。在開發(fā)和使用過程中,不可避免地會出現(xiàn)用戶訪問規(guī)模大、負(fù)載重等性能方面的問題。因此,可以采用LoadRunner專業(yè)工具,進(jìn)行性能測試,檢測這些問題。首先,通過對項目分析,設(shè)計完善的測試方案;然后,錄制相關(guān)腳本,對腳本進(jìn)行優(yōu)化處理,并模擬多用戶并發(fā),設(shè)計場景;最后,對測試用例進(jìn)行系統(tǒng)化的整理,生成測試分析報告。本文為研究采用LoadRunner工具對Web網(wǎng)站進(jìn)行自動化測試提供一種技術(shù)方案。

2、關(guān)鍵詞:Web;性能測試;自動化測試;LoadRunnerAbstract:In this paper,LoadRunner tools are applied to implement web performance testing on post bars.Post bars provide students with interactive space.In the development and application of post bars,some performance problems are unavoidable,such as the excessive load ca

3、used by too many visitors.Therefore,professional LoadRunner tools can be applied to implement performance testing and detect the problems.Firstly,the paper designs a thorough test scheme based on the project analysis.Then,the paper records and optimizes relevant scripts,simulates multi-user concurre

4、ncy,and designs the scene.Finally,the test cases are systematically organized to generate test analysis reports.This paper offers a technical solution to automated website testing with LoadRunner tools.Keywords:web;performance testing;automated testing;LoadRunner1 引言(Introduction)本測試主要針對徐州工程學(xué)院貼吧進(jìn)行性能

5、方面的測試,目的是檢測網(wǎng)站功能和性能上的缺陷,完善該平臺。性能測試是指在軟件開發(fā)后期,為了證實該軟件的可用性、穩(wěn)定性和可靠性,通過增加變換負(fù)載對軟件系統(tǒng)進(jìn)行的壓力測試,主要目的是檢測出軟件系統(tǒng)最大承受的負(fù)載量是否能夠達(dá)到需求的標(biāo)準(zhǔn)1。測試方法為基于LoadRunner的負(fù)載測試。測試目標(biāo)為檢測出軟件系統(tǒng)能承受的最大負(fù)載和檢測性能是否符合基本客戶要求。通過不斷改變負(fù)載環(huán)境來全面檢測系統(tǒng)性能,避免性能盲點,以及一臺計算機(jī)運行腳本、多臺客戶機(jī)進(jìn)行重復(fù),并給出這種方法在Web應(yīng)用性能測試實踐中的一個具體應(yīng)用2。LoadRunner是當(dāng)下測試工作中較為常用的負(fù)載測試工具3。該軟件分為三個部分,先由測試者

6、根據(jù)需求自行錄制對應(yīng)的腳本,再通過設(shè)置負(fù)載環(huán)境對腳本進(jìn)行用戶模擬操作,最后使用自動化分析插件對運行結(jié)果進(jìn)行分析,生成線形圖。2 LoadRunner功能(LoadRunner features)2.1 LoadRunner術(shù)語(1)場景:場景文件是根據(jù)性能需求來定義每次測試期間通過的事務(wù)。(2)Vuser:虛擬用戶處于場景中,LoadRunner用虛擬用戶來代替真實用戶,模仿真實用戶的操作來使用應(yīng)用系統(tǒng)。一個場景可以包含成百上千個Vuser。(3)腳本:腳本描述Vuser在場景中所執(zhí)行的動作。(4)事務(wù):要檢測服務(wù)器的性能,首先需要定義事務(wù)。事務(wù)表示要評測的終端用戶業(yè)務(wù)流程。2.2 創(chuàng)建虛擬用

7、戶通過使用Virtual User Generator組件4,錄制相關(guān)用戶腳本。首先模擬真實用戶操作,錄制相關(guān)模塊的腳本,待錄制完畢,對腳本進(jìn)行優(yōu)化處理。然后將其轉(zhuǎn)換成測試腳本。該組件通過模擬真實環(huán)境的業(yè)務(wù)操作來對網(wǎng)站進(jìn)行性能測試,讓很多虛擬用戶模擬真實用戶,并發(fā)操作,對服務(wù)器進(jìn)行負(fù)載。利用這些虛擬用戶,測試人員能夠在多個服務(wù)器上并發(fā)訪問網(wǎng)站,從而對服務(wù)器生成負(fù)載。LoadRunner測試工具能有效地減少測試過程中的資源耗費。在通過Virtual User Generator組件創(chuàng)建并優(yōu)化測試腳本后,需要對相關(guān)參數(shù)進(jìn)行設(shè)置,可以通過模擬多種實際情況來測試網(wǎng)站性能。2.3 創(chuàng)建真實的負(fù)載在建立虛

8、擬用戶之后,測試人員需要根據(jù)測試需要來確定虛擬用戶的數(shù)量,從而更好地測試網(wǎng)站性能5。利用LoadRunner測試工具中的Controller組件,能夠快速設(shè)置測試場景,并且確定虛擬用戶數(shù),并明確測試方案。Controller組件中有一個Rendezvous功能,能夠有效提供給測試人員一個互動的環(huán)境,讓負(fù)載循環(huán)操作,并且能夠讓測試人員更好地管理負(fù)載測試方案。同時,測試人員還可以設(shè)定虛擬用戶訪問網(wǎng)站的時間對網(wǎng)站設(shè)定不同的負(fù)載。在一定程度上,讓測試過程更加智能化。Controller組件還可以設(shè)定虛擬用戶同時執(zhí)行,從而達(dá)到模擬峰值數(shù)據(jù)的目的。endprint2.4 定位性能問題LoadRunner測

9、試工具中,有一個實時監(jiān)測的功能。在運行測試過程中,測試人員可以通過折線圖來觀察系統(tǒng)每個時間段的運行情況。這樣,測試人員可以及時發(fā)現(xiàn)系統(tǒng)運行過程中性能的不足,能夠?qū)崟r定位性能的弱點。通過LoadRunner中的ContentCheck TM組件,還能有效判斷哪個模塊的哪個功能是否正常運行。ContentCheck組件在虛擬用戶運行過程中,能夠判斷是否有錯誤數(shù)據(jù)傳出,能夠有效地幫助測試人員查看系統(tǒng)性能情況。2.5 測試報告當(dāng)測試結(jié)束以后,LoadRunner會自動收集并匯總,生成測試結(jié)果數(shù)據(jù),提供高級的分析報告,測試人員可通過此工具及時發(fā)現(xiàn)性能問題并進(jìn)行實時反饋。使用分析工具,可以很快地查找到缺陷

10、所在,并及時將錯誤內(nèi)容和需要改進(jìn)的地方做出反饋。通過Controller對目標(biāo)進(jìn)行負(fù)載測試之后,進(jìn)入Analysis進(jìn)行性能測試分析,擬寫測試報告。完整的測試報告應(yīng)當(dāng)包含幾個部分6:(1)摘要報告:查看平均時間、最大時間、前一次時間等各項數(shù)據(jù)。(2)Vuser日志:虛擬用戶在運行的過程中所產(chǎn)生的運行明細(xì)。(3)測試狀態(tài)(Controller中查看):查看虛擬用戶在場景中的運行情況。(4)正在運行的Vuser:在指定的時間內(nèi)Vuser運行的數(shù)量。(5)每秒點擊次數(shù)線形圖:根據(jù)線形圖觀察用戶對服務(wù)器發(fā)出的請求量。(6)吞吐量:單位時間內(nèi)傳輸數(shù)據(jù)的數(shù)量(以比特、字節(jié)、分組等測量)。(7)事務(wù)概要:查

11、看在特定數(shù)量的并發(fā)用戶運行時,能夠通過的事務(wù)數(shù)量和不能通過的事務(wù)數(shù)量。(8)事務(wù)響應(yīng)時間:在特定時間內(nèi),隨著并發(fā)用戶數(shù)量的變化而變化的事務(wù)響應(yīng)所需的時間。(9)CPU和內(nèi)存使用情況:隨著時間和并發(fā)用戶數(shù)量的變動,CPU占用百分比和內(nèi)存占用量產(chǎn)生的變化。3 測試項目(Project undertesting)黑盒測試主要采用自動化測試的方法。選用LoadRunner這個測試工具,對貼吧重要的功能進(jìn)行性能測試,找出運行缺陷,從而擬寫完善的測試報告。3.1 測試內(nèi)容測試用戶注冊、用戶登錄、我的帖子和我的設(shè)置這四個大模塊,其中我的帖子測試中包括四個子功能的測試:發(fā)帖、刪帖、評論和回復(fù);我的設(shè)置測試中也

12、包括四個子功能的測試:簽到、關(guān)注、刷新和分享。根據(jù)這些內(nèi)容編寫測試用例,對每個功能進(jìn)行測試分析,從而發(fā)現(xiàn)缺陷,完善功能。3.2 測試思路根據(jù)對徐州工程學(xué)院百度貼吧實際運用中出現(xiàn)的特點,分析出徐州工程學(xué)院貼吧在實際運用中將會出現(xiàn)以下特點:(1)VIP用戶模塊使用率較低,普通用戶使用率很高。(2)主任務(wù)為登錄、發(fā)帖、頁面的切換。(3)負(fù)載期間,將會有大量用戶登錄,相應(yīng)模塊的壓力增強(qiáng)。(4)結(jié)合本校和百度貼吧的普及率考慮,特定時間段預(yù)計登錄人數(shù)約為10到500人,相應(yīng)的測試方案也會在此基礎(chǔ)上形成。3.3 測試方案設(shè)計網(wǎng)站主要操作為用戶登錄、用戶注冊和游客瀏覽等功能,可以確定主任務(wù)為用戶注冊、用戶登錄

13、、發(fā)帖評論和游客頁面切換?;玖鞒虨椋?)進(jìn)入頁面首頁,點擊注冊按鈕。(2)進(jìn)入用戶注冊頁面,輸入用戶注冊的賬號和密碼,點擊發(fā)送驗證碼,輸入驗證碼。(3)注冊成功,跳轉(zhuǎn)到貼吧首頁并且自動登錄。(4)點擊發(fā)帖按鈕,在標(biāo)題和正文文本框中輸入內(nèi)容,點擊“我要發(fā)表”發(fā)表成功。(5)點擊進(jìn)入帖子頁面。點擊“我也說一句”按鈕,輸入內(nèi)容,點擊發(fā)表。(6)點擊刪除按鈕,確認(rèn)刪除。(7)退出登錄,返回徐州工程學(xué)院貼吧首頁。根據(jù)測試思路,本次測試將創(chuàng)建Vuser腳本去模擬用戶在操作時的不同情況,根據(jù)測試目標(biāo)去定義虛擬用戶并發(fā)形式、并發(fā)數(shù)量,設(shè)置合適的負(fù)載,并且在錄制過程中將腳本完善、具體化,用集合點來模擬高峰期的

14、使用情況。3.4 測試用例設(shè)計測試用例為10Vuser低負(fù)載發(fā)帖操作,測試用例為50Vuser中負(fù)載發(fā)帖操作,測試用例為500Vuser高負(fù)載發(fā)帖操作,測試用例為10Vuser低負(fù)載注冊登錄操作,測試用例為50Vuser中負(fù)載注冊登錄操作,測試用例為500Vuser高負(fù)載注冊登錄操作。根據(jù)本次測試的需求情況,從所有用例中篩選出6個較為典型的測試用例。以測試用例為例,測試場景描述:總共登錄500個用戶,登錄模式為每5秒100個用戶并發(fā)操作。(1)用戶在用戶發(fā)帖模塊中活動,過程包括:輸入標(biāo)題與正文內(nèi)容,界面輸出相應(yīng)數(shù)據(jù),此過程重復(fù)兩次。(2)用戶點擊“我要發(fā)表”鏈接,提交并提示發(fā)表成功。(3)用戶

15、進(jìn)行界面切換,順序為:主頁面、帖子界面。(4)返回用戶主頁并退出。4 測試報告(Report)4.1 性能概要以測試用例為例,Analysis對腳本運行的結(jié)果的摘要報告如圖1所示。4.2 圖形方式查看性能(1)正在運行Vuser運行開始后,虛擬用戶的數(shù)量逐步增加,之后逐步遞減。并發(fā)線形圖如圖2所示。(2)吞吐量吞吐量指的是系統(tǒng)在負(fù)載測試中單位時間內(nèi)通過的事務(wù)數(shù)量即交換的數(shù)據(jù)量。如圖3所示為測試用例吞吐量的情況,網(wǎng)絡(luò)資源呈平穩(wěn)趨勢。(3)平均事務(wù)響應(yīng)時間圖4中曲線表示action,通過觀察可以看出,隨著虛擬用戶的增加,action沒有呈現(xiàn)穩(wěn)定趨勢,而且突然急劇拉長呈快速上升和下降趨勢。因此,當(dāng)并

16、發(fā)用戶為500時,服務(wù)器無法承受這樣的負(fù)載,將會崩潰。endprint(4)每秒點擊次數(shù)每秒點擊次數(shù)表示用戶每秒向Web服務(wù)器發(fā)出的請求次數(shù),服務(wù)器承受的壓力與點擊次數(shù)成正比,通過查看點擊對服務(wù)器產(chǎn)生的影響來進(jìn)行性能分析。運行的初期,縱坐標(biāo)有很大的波動,當(dāng)虛擬用戶開始減少時,縱坐標(biāo)趨向穩(wěn)定,結(jié)合running vuser進(jìn)行觀察,當(dāng)虛擬用戶在50左右時,性能相對達(dá)到比較穩(wěn)定的階段。(5)事務(wù)概要圖5中,最高柱形圖為未通過事務(wù),最低柱形圖為通過的事務(wù),最后兩個為被終止的事務(wù)??梢钥闯觯蟛糠质聞?wù)都沒有通過,因此當(dāng)虛擬用戶為500時,性能很不穩(wěn)定,服務(wù)器幾近崩潰,性能達(dá)到一個瓶頸。虛擬用戶為10時

17、,運行良好,不能說明性能有問題。5 結(jié)論(Conclusion)通過設(shè)計測試用例,使用LoadRunner錄制腳本,通過Controller模擬多用戶并發(fā)測試場景,調(diào)試,收集測試數(shù)據(jù),再由Analysis對測試的結(jié)果進(jìn)行分析探討,對貼吧性能實現(xiàn)了初步的檢測并最終生成測試報告。測試結(jié)果顯示的是貼吧服務(wù)器軟件各事務(wù)的平均響應(yīng)時間與負(fù)載的關(guān)系;當(dāng)虛擬用戶并發(fā)量達(dá)到60的時候,通過率極佳,比重約為100%。在所有通過的事務(wù)之中,登錄事務(wù)所占比重最大,這個決定因素主要在于事務(wù)的性質(zhì);在高并發(fā)高負(fù)載的情況下,事務(wù)響應(yīng)時間和每秒點擊次數(shù)會發(fā)生驟升,也就是通過這樣的情況來檢測系統(tǒng)的瓶頸所在;當(dāng)并發(fā)用戶達(dá)到30

18、0時,服務(wù)器會直接面臨崩潰。參考文獻(xiàn)(References)1 Bozic J,Garn B,Kapsalis I,et al.Attack Pattern-Based Combinatorial Testing with Constraints for Web Security TestingC.IEEE International Conference on Software Quality,Reliability and Security.IEEE,2015:207-212.2 Novak S,Stefanovi D,Popovi M,et al.Web based system for automatic testingC.IEEE International Workshop on Consumer Electronics.IEEE, 2017:30-31.3 Abbas R,Sultan Z,Shahid N.Comparative Analysis of Automated Load Testing T

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論