性能測試實例課件_第1頁
性能測試實例課件_第2頁
性能測試實例課件_第3頁
性能測試實例課件_第4頁
性能測試實例課件_第5頁
已閱讀5頁,還剩255頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

性能測試培訓(xùn)蔡立志上海市計算機軟件評測重點實驗室上海計算機軟件技術(shù)開發(fā)中心10/27/20221上海市計算機軟件評測重點實驗室性能測試培訓(xùn)蔡立志10/22/20221上海市計算機軟件評內(nèi)容安排性能測試的目的性能測試的概念性能測試的策略性能測試的計劃性能測試的結(jié)果分析性能測試的案例WEB測試經(jīng)驗交流10/27/20222上海市計算機軟件評測重點實驗室內(nèi)容安排性能測試的目的10/22/20222上海市計算1.性能測試目的性能疑慮:我的系統(tǒng)響應(yīng)時間太慢了,到底問題出哪里?要花多少時間做完一筆交易?什么樣的配置提供最好的性能?那些因素降低了交易響應(yīng)時間?系統(tǒng)在無錯的情況下承受多大的及多長的時間的負載。10/27/20223上海市計算機軟件評測重點實驗室1.性能測試目的性能疑慮:10/22/20223上海市計算1.性能測試目的評估系統(tǒng)的能力:測試中得到的負荷和響應(yīng)時間數(shù)據(jù)可以被用于驗證所計劃的模型的能力,并幫助作出決策。識別體系中的弱點(瓶頸):受控的負荷可以被增加到一個極端的水平,并突破它,從而修復(fù)體系的瓶頸或薄弱的地方。系統(tǒng)調(diào)優(yōu):重復(fù)運行測試,驗證調(diào)整系統(tǒng)的活動得到了預(yù)期的結(jié)果,從而改進性能。10/27/20224上海市計算機軟件評測重點實驗室1.性能測試目的評估系統(tǒng)的能力:10/22/20224上海1.性能測試目的檢測軟件中的問題:長時間的測試執(zhí)行可導(dǎo)致程序發(fā)生由于內(nèi)存泄露引起的失敗,揭示程序中的隱含的問題或沖突。驗證穩(wěn)定性(resilience)可靠性(reliability):在一個生產(chǎn)負荷下執(zhí)行測試一定的時間是評估系統(tǒng)穩(wěn)定性和可靠性是否滿足要求的唯一方法。10/27/20225上海市計算機軟件評測重點實驗室1.性能測試目的檢測軟件中的問題:10/22/20225上1.性能測試目的-檢查可靠性舉例確定系統(tǒng)在連續(xù)的高工作負載下的穩(wěn)定性級別。強制系統(tǒng)在短時間內(nèi)處理大量任務(wù),以模擬系統(tǒng)在數(shù)周或數(shù)月的時間內(nèi)通常會遇到的活動類型。10/27/20226上海市計算機軟件評測重點實驗室1.性能測試目的-檢查可靠性舉例確定系統(tǒng)在連續(xù)的高工作負載1.性能測試目的-確定瓶頸舉例您可以運行測試以確定系統(tǒng)的瓶頸,并確定哪些因素導(dǎo)致性能下降,例如,文件鎖定、資源爭用和網(wǎng)絡(luò)過載。10/27/20227上海市計算機軟件評測重點實驗室1.性能測試目的-確定瓶頸舉例您可以運行測試以確定系統(tǒng)的1.性能測試目的-度量系統(tǒng)容量舉例查看現(xiàn)有系統(tǒng)中性能與負載間的關(guān)系,并確定出現(xiàn)響應(yīng)時間顯著延長的位置“拐點”??梢源_定是否需要增加資源以支持額外的用戶。10/27/20228上海市計算機軟件評測重點實驗室1.性能測試目的-度量系統(tǒng)容量舉例查看現(xiàn)有系統(tǒng)中性能與負載2.性能測試的概念性能:系統(tǒng)的性能是一個很大的概念,覆蓋面非常廣泛,對一個軟件系統(tǒng)而言包括執(zhí)行效率、資源占用、穩(wěn)定性、安全性、兼容性、可擴展性、可靠性等等。

負載壓力是系統(tǒng)性能的一個重要方面。10/27/20229上海市計算機軟件評測重點實驗室2.性能測試的概念性能:10/22/20229上海市計算機2.1性能測試的概念利用測試工具,模擬大量用戶操作,對系統(tǒng)增加負載,考察系統(tǒng)的輸出項,例如吞吐量、響應(yīng)時間、CPU負載、內(nèi)存使用等如何決定系統(tǒng)的性能,例如穩(wěn)定性和響應(yīng)等。模擬情況:正常負載峰值負載異常負載10/27/202210上海市計算機軟件評測重點實驗室2.1性能測試的概念利用測試工具,模擬大量用戶操作,對系統(tǒng)2.2性能測試的時機時機1:完成系統(tǒng)集成完成功能測試系統(tǒng)試運行階段最好的時機:不用擔(dān)心產(chǎn)生測試的垃圾數(shù)據(jù)問題不用擔(dān)心影響系統(tǒng)運行問題10/27/202211上海市計算機軟件評測重點實驗室2.2性能測試的時機時機1:10/22/202211上海市2.2性能測試的時機時機2:系統(tǒng)運行期間出現(xiàn)性能問題。目的:查找問題的原因。注意事項:必須備份運行的數(shù)據(jù)設(shè)定專用的策略查找原因必須采用采用出現(xiàn)問題的數(shù)據(jù)10/27/202212上海市計算機軟件評測重點實驗室2.2性能測試的時機時機2:10/22/202212上海市2.2性能測試的時機時機3硬件升級:目的:提高用戶的投資效益在舊系統(tǒng)上查找性能的瓶頸在系統(tǒng)升級以后進行系統(tǒng)前后的比較。升級前后的系統(tǒng)均應(yīng)該做性能測試10/27/202213上海市計算機軟件評測重點實驗室2.2性能測試的時機時機310/22/202213上海市計2.3性能測試的分類性能測試類型包括:負載測試:確定在各種工作負載下系統(tǒng)的性能,目標(biāo)是測試當(dāng)負載逐漸增加時,系統(tǒng)各項性能指標(biāo)的變化情況。強度測試:強度測試是一種性能測試,他在系統(tǒng)資源特別低的情況下軟件系統(tǒng)運行情況。容量測試:確定系統(tǒng)可處理同時在線的最大用戶數(shù)(在用戶可接收的范圍內(nèi))。壓力測試:通過確定一個系統(tǒng)的瓶頸或者最大使用極限的測試。10/27/202214上海市計算機軟件評測重點實驗室2.3性能測試的分類性能測試類型包括:10/22/20222.3性能測試的分類疲勞強度測試:系統(tǒng)穩(wěn)定運行情況下能夠支持的最大并發(fā)用戶數(shù)或者日常運行用戶數(shù),持續(xù)執(zhí)行一段時間業(yè)務(wù),通過綜合分析交易執(zhí)行指標(biāo)和資源監(jiān)控指標(biāo)來確定系統(tǒng)處理最大工作量強度性能的過程。10/27/202215上海市計算機軟件評測重點實驗室2.3性能測試的分類疲勞強度測試:10/22/2022152.3性能測試的分類大數(shù)據(jù)量測試獨立的數(shù)據(jù)量測試

針對某些系統(tǒng)存儲、傳輸、統(tǒng)計、查詢等業(yè)務(wù)進行大數(shù)據(jù)量測試綜合數(shù)據(jù)量測試和壓力性能測試、負載性能測試、疲勞性能測試相結(jié)合的綜合測試方案10/27/202216上海市計算機軟件評測重點實驗室2.3性能測試的分類大數(shù)據(jù)量測試10/22/202216上2.4性能測試的工具手工測試:多臺電腦和同樣數(shù)目的操作人員,在同意時刻擦作,幾下響應(yīng)時間。缺點:需要的人力和機器設(shè)備無法解決測試人員的同步問題無法捕捉程序內(nèi)部的變化情況10/27/202217上海市計算機軟件評測重點實驗室2.4性能測試的工具手工測試:10/22/202217上海市2.4性能測試的工具自動化性能測試工具商業(yè)性能測試工具:開源性能測試工具自主開發(fā)工具測試10/27/202218上海市計算機軟件評測重點實驗室2.4性能測試的工具自動化性能測試工具10/22/202212.4性能測試的工具自動化測試工具的弱點:缺乏功能點的校驗對有些控件支持得不好不能達到真實模擬負載腳本的支持不夠靈活報錯定位不夠詳細10/27/202219上海市計算機軟件評測重點實驗室2.4性能測試的工具自動化測試工具的弱點:10/22/202.4性能測試的工具自動負載測試工具盲點:在負載測試中,不進行功能校驗,就是當(dāng)功能錯誤發(fā)生時,測試工具不能夠記錄產(chǎn)生的功能性錯誤,這就忽略了負載壓力情況下的功能不穩(wěn)定問題。在負載壓力測試過程中記錄所有虛擬用戶的操作及服務(wù)器的響應(yīng)是當(dāng)前負載壓力測試技術(shù)發(fā)展的最大挑戰(zhàn)。但測試過程中的附加記錄會導(dǎo)致資源消耗、操作行為增加以及產(chǎn)生大量日志等問題。10/27/202220上海市計算機軟件評測重點實驗室2.4性能測試的工具自動負載測試工具盲點:10/22/202.4.1商業(yè)測試工具商業(yè)測試工具:MercuryInteractive的LoadRunnerCompuware(康博)的QaloadSegue(賽格瑞)公司的SilkperformerSpirentavalanche10/27/202221上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具商業(yè)測試工具:10/22/202222.4.1商業(yè)測試工具工具選擇依據(jù):模擬您的客戶機運行多個模擬的客戶機腳本化執(zhí)行并能編輯腳本支持會話協(xié)議可配置的用戶數(shù)量報告成功、錯誤和失敗10/27/202222上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具工具選擇依據(jù):10/22/202222.4.1商業(yè)測試工具LoadRunner特點:支持的協(xié)議多且個別協(xié)議支持的版本高;負載測試方案設(shè)置靈活;豐富的資源監(jiān)控,資源監(jiān)控計數(shù)器報告可導(dǎo)出Word,Excel以及HTML格式10/27/202223上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具LoadRunner特點:10/2.4.1商業(yè)測試工具LoadRunner缺點:可擴展性差,對不支持的協(xié)議無能為力;資源監(jiān)控指標(biāo)需進一步細化;功能校驗應(yīng)該加入10/27/202224上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具LoadRunner缺點:10/22.4.1商業(yè)測試工具Qaload特點:腳本直接采用c語言從控制中心管理全局負載測試快速創(chuàng)建仿真的負載測試性價比較高10/27/202225上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具Qaload特點:10/22/202.4.1商業(yè)測試工具Qaload缺點:穩(wěn)定性較差;需要測試工程師有較強的編程經(jīng)驗;協(xié)議升級不及時腳本調(diào)試部方便10/27/202226上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具Qaload缺點:10/22/202.4.1商業(yè)測試工具Silkperformer優(yōu)點:在工具中融合了功能測試的方法腳本采用類Pascal語言,資源消耗較小支持動態(tài)的dll外部函數(shù)錯誤可精確定位提供了數(shù)據(jù)池模板,并可定制用戶可以通過拖拉的方式最為直觀地定制測試報告10/27/202227上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具Silkperformer優(yōu)點2.4.1商業(yè)測試工具Silkperformer缺點報告對中文的支持較差報告導(dǎo)出以后html鏈接會丟失10/27/202228上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具Silkperformer缺點12.4.2開源測試工具OpenSTAURL:特點:基于windows平臺,Corba分布式軟件測試體系。具有腳本控制語言(SCL),用戶創(chuàng)建腳本,并將輸入數(shù)據(jù)參數(shù)化測試基于Web的應(yīng)用軟件10/27/202229上海市計算機軟件評測重點實驗室2.4.2開源測試工具OpenSTA10/22/202222.4.2開源測試工具TestMakerURL:特點:基于java架構(gòu),支持Windows、linux、unix平臺。腳本語言采用Jython.(Python的java實現(xiàn))提供Python的面向?qū)ο蟓h(huán)境支持HTTP/HTTPS、TCP/IP、SOAP以及XML10/27/202230上海市計算機軟件評測重點實驗室2.4.2開源測試工具TestMaker10/22/20222.4.2開源測試工具ApacheJMeterURL:/jmeter特點:純JAVA,不受平臺的約束同時支持功能和性能負載壓力測試測試JAVA對象、JDBC、數(shù)據(jù)庫、Perl腳本、Web服務(wù)器和應(yīng)用服務(wù)器等可記錄瀏覽器和Web服務(wù)器之間的通信。10/27/202231上海市計算機軟件評測重點實驗室2.4.2開源測試工具ApacheJMeter10/22/2.5性能測試的原理測試拓撲示意圖10/27/202232上海市計算機軟件評測重點實驗室2.5性能測試的原理測試拓撲示意圖10/22/2022322.5性能測試的原理其中: Conductor為測試控制機; Player為測試代理機(測試代理機數(shù)目根據(jù)實際而定)。被測服務(wù)器指WEB服務(wù)器或者數(shù)據(jù)庫服務(wù)器、應(yīng)用服務(wù)器等等。10/27/202233上海市計算機軟件評測重點實驗室2.5性能測試的原理其中:10/22/202233上海市計算2.5性能測試的原理基本原理錄制/回放方式來模擬用戶的實際操作的錄制:測試工具啟動一個代理監(jiān)視并獲取在不同通信協(xié)議下客戶端和服務(wù)器端的通信信息,生成測試腳本框架?;胤牛簻y試工具通過控制臺將測試腳本分發(fā)到各個負載測試生成器(測試代理)上,控制負載測試生成器模擬多個用戶對服務(wù)器并發(fā)訪問。

10/27/202234上海市計算機軟件評測重點實驗室2.5性能測試的原理基本原理10/22/202234上海市計2.5性能測試的原理測試腳本的錄制和分配原則:腳本越小越好(一個功能一個腳本)。選擇負載壓力最高的業(yè)務(wù)功能進行測試。選擇所需要的操作進行錄制,如果部隊服務(wù)器產(chǎn)生壓力的操作可以不錄制。10/27/202235上海市計算機軟件評測重點實驗室2.5性能測試的原理測試腳本的錄制和分配原則:10/22/22.5性能測試的原理回放模式:

進程回放模式:線程回放模式:10/27/202236上海市計算機軟件評測重點實驗室2.5性能測試的原理回放模式:

進程回放模式:10/22/22.5性能測試的原理測試的一般步驟:選擇協(xié)議創(chuàng)建腳本:錄制或者手工編寫參數(shù)華測試數(shù)據(jù)創(chuàng)建虛擬用戶,設(shè)定負載方案執(zhí)行測試結(jié)果分析10/27/202237上海市計算機軟件評測重點實驗室2.5性能測試的原理測試的一般步驟:10/22/2022373.性能測試的策略內(nèi)容包括:負荷策略網(wǎng)絡(luò)策略業(yè)務(wù)策略監(jiān)測策略10/27/202238上海市計算機軟件評測重點實驗室3.性能測試的策略內(nèi)容包括:10/22/202238上海市3.1性能測試的一般步驟1.

分析需求2.制定測試策略3.

制定測試計劃4.

設(shè)計測試用例5.

運行測試用例6.

分析測試結(jié)果10/27/202239上海市計算機軟件評測重點實驗室3.1性能測試的一般步驟1.

分析需求10/22/2023.2分析測試需求確定客戶需求和期望穩(wěn)定性?大數(shù)據(jù)量?性能?壓力?調(diào)優(yōu)?實際業(yè)務(wù)需求必須達到什么的響應(yīng)時間?穩(wěn)定性怎么樣?(實時系統(tǒng)、報警系統(tǒng))系統(tǒng)分析使用的是什么系統(tǒng)?(決定了我們可以采用什么樣的策略)10/27/202240上海市計算機軟件評測重點實驗室3.2分析測試需求確定客戶需求和期望10/22/202243.2分析測試需求-在軟件生命周期中性能測試計劃和需求在需求分析中充分關(guān)注負載壓力性能:負載壓力需求占10%的需求分析時間系統(tǒng)性能目標(biāo)的設(shè)計和分析方法具備并確定性能測試需求相關(guān)的系統(tǒng)結(jié)果資料性能需求分析應(yīng)該和體系結(jié)構(gòu)分析結(jié)合進行10/27/202241上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在需3.2分析測試需求-在軟件生命周期中性能測試計劃和需求從設(shè)計中得到負載壓力性能指標(biāo)清楚不同的設(shè)計對負載壓力的影響,給出負載壓力性能的預(yù)期的性能指標(biāo)。設(shè)計使用了第三方的產(chǎn)品,要求提供商能夠?qū)ζ洚a(chǎn)品進行性能驗證和設(shè)計,識別和其產(chǎn)品有關(guān)負載壓力性能問題在資金預(yù)算方面考慮性能測試(10%的資金預(yù)算是個安全的選擇)設(shè)計中考慮應(yīng)用規(guī)模和數(shù)據(jù)量的可升級性10/27/202242上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求從設(shè)3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在開發(fā)階段創(chuàng)建一個負載壓力性能測試環(huán)境確保合理精確的測試環(huán)境,并且此環(huán)境可重用為測試環(huán)境制定負載壓力性能測試時間表,如果測試環(huán)境是共享的,負載壓力性能測試不能和其他活動同時發(fā)生選擇一個性能測試工具10/27/202243上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在開3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在驗收階段多個等級范圍內(nèi)測試并調(diào)優(yōu)驗證系統(tǒng)和設(shè)計目標(biāo)的符合性測試系統(tǒng)的可升級性確定性能瓶頸……10/27/202244上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在驗3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在運行階段監(jiān)控負載壓力性能:監(jiān)控負載壓力性能識別系統(tǒng)性能傾向確定何種條件下負載壓力性能超過可接受范圍10/27/202245上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在運3.3制定測試目標(biāo)了解系統(tǒng)狀態(tài):給出在正常的情況下某個業(yè)務(wù)的響應(yīng)時間。系統(tǒng)容量:在用戶可接收的范圍內(nèi),每秒可以完成多少個業(yè)務(wù)。系統(tǒng)調(diào)優(yōu):通過系統(tǒng)優(yōu)化以后,業(yè)務(wù)的響應(yīng)時間較調(diào)優(yōu)前是否有比較大的提升。10/27/202246上海市計算機軟件評測重點實驗室3.3制定測試目標(biāo)了解系統(tǒng)狀態(tài):10/22/202246上3.3制定測試目標(biāo)硬件升級比較硬件升級前后的系統(tǒng)性能變化。疲勞測試:檢查系統(tǒng)長時間運行狀態(tài)是否和設(shè)計相符10/27/202247上海市計算機軟件評測重點實驗室3.3制定測試目標(biāo)硬件升級10/22/202247上海市計3.4系統(tǒng)架構(gòu)分析系統(tǒng)構(gòu)成: 硬件設(shè)置 操作系統(tǒng)設(shè)置系統(tǒng)架構(gòu)網(wǎng)絡(luò)需求10/27/202248上海市計算機軟件評測重點實驗室3.4系統(tǒng)架構(gòu)分析系統(tǒng)構(gòu)成:10/22/202248上海3.4系統(tǒng)架構(gòu)分析C/S:client/Server客戶端/服務(wù)器架構(gòu)基于客戶端/服務(wù)器的三層架構(gòu)基于客戶端/服務(wù)器的分布式架構(gòu)B/S:基于瀏覽器/Web服務(wù)器的三層架構(gòu)基于中間件應(yīng)用服務(wù)器的三層架構(gòu)基于Web服務(wù)器和中間件的多層架構(gòu)10/27/202249上海市計算機軟件評測重點實驗室3.4系統(tǒng)架構(gòu)分析C/S:10/22/202249上海市計3.4系統(tǒng)架構(gòu)分析系統(tǒng)類別:分清系統(tǒng)類別是我們掌握什么樣的技術(shù)的前提,掌握相應(yīng)技術(shù)做性能測試才可能成功。bs結(jié)構(gòu):需要掌握http協(xié)議、java、html等技術(shù)。cs結(jié)構(gòu):需要了解操作系統(tǒng)、TCP/IPwinsock、com、tuxedo等。10/27/202250上海市計算機軟件評測重點實驗室3.4系統(tǒng)架構(gòu)分析系統(tǒng)類別:分清系統(tǒng)類別是我們掌握什么樣的3.4系統(tǒng)架構(gòu)分析一個b/s多層結(jié)構(gòu)系統(tǒng)的例子10/27/202251上海市計算機軟件評測重點實驗室3.4系統(tǒng)架構(gòu)分析一個b/s多層結(jié)構(gòu)系統(tǒng)的例子10/22/3.5系統(tǒng)功能分析系統(tǒng)功能:系統(tǒng)功能指系統(tǒng)提供的不同子系統(tǒng)。例如:辦公管理系統(tǒng)中的公文子系統(tǒng),會議子系統(tǒng)等。實時部分和非實時向結(jié)合的系統(tǒng)。區(qū)分不同子系統(tǒng)對性能的不同要求。10/27/202252上海市計算機軟件評測重點實驗室3.5系統(tǒng)功能分析系統(tǒng)功能:10/22/202252上海市3.6負荷策略的制定依據(jù):用戶的需求和系統(tǒng)分析負載測試:估算測試強度。容量測試:確定用戶所不能接受的性能點(即事務(wù)響應(yīng)時間的最大值)。壓力測試:設(shè)定并發(fā)的虛擬用戶數(shù)的初始值,并發(fā)虛擬用戶數(shù)按照一定的規(guī)律增加,增加的步長為多少。10/27/202253上海市計算機軟件評測重點實驗室3.6負荷策略的制定依據(jù):用戶的需求和系統(tǒng)分析10/22/3.6負荷策略的制定負荷策略(負荷模式):固定負荷:(系統(tǒng)在某一負荷下的狀態(tài))。增量式負荷:(容量測試、壓力測試)全天模式(預(yù)定義好全天不通時刻的負載方式)動態(tài)負荷:(手工控制用戶數(shù))。10/27/202254上海市計算機軟件評測重點實驗室3.6負荷策略的制定負荷策略(負荷模式):10/22/203.6負荷策略的制定-固定負荷10/27/202255上海市計算機軟件評測重點實驗室3.6負荷策略的制定-固定負荷10/22/202255上海3.6負荷策略的制定-增量式負荷10/27/202256上海市計算機軟件評測重點實驗室3.6負荷策略的制定-增量式負荷10/22/2022563.6負荷策略的制定-全天模式10/27/202257上海市計算機軟件評測重點實驗室3.6負荷策略的制定-全天模式10/22/202257上海3.6負荷策略的制定-動態(tài)模式10/27/202258上海市計算機軟件評測重點實驗室3.6負荷策略的制定-動態(tài)模式10/22/202258上海3.7網(wǎng)絡(luò)測試策略目的:不是為了測試網(wǎng)絡(luò)而測試網(wǎng)絡(luò)針對具體的應(yīng)用(為了應(yīng)用而測試網(wǎng)絡(luò))包括:運行應(yīng)用時的被動監(jiān)測網(wǎng)絡(luò)主動網(wǎng)絡(luò)加壓時的應(yīng)用系統(tǒng)的測試情況。10/27/202259上海市計算機軟件評測重點實驗室3.7網(wǎng)絡(luò)測試策略目的:10/22/202259上海市計算3.7網(wǎng)絡(luò)測試策略網(wǎng)絡(luò)監(jiān)測的目的:分析關(guān)鍵應(yīng)用程序的性能,定位問題的根源是在客戶端、服務(wù)器、應(yīng)用程序還是網(wǎng)絡(luò)。用戶較關(guān)心的網(wǎng)絡(luò)問題還有:哪些應(yīng)用程序占用大量帶寬?哪些用戶產(chǎn)生了最大的網(wǎng)絡(luò)流量?10/27/202260上海市計算機軟件評測重點實驗室3.7網(wǎng)絡(luò)測試策略網(wǎng)絡(luò)監(jiān)測的目的:10/22/2022603.7網(wǎng)絡(luò)測試策略監(jiān)測內(nèi)容:網(wǎng)絡(luò)流量網(wǎng)絡(luò)延時通用協(xié)議分析專用應(yīng)用的協(xié)議分析(測試應(yīng)用的通訊邏輯是否正確)10/27/202261上海市計算機軟件評測重點實驗室3.7網(wǎng)絡(luò)測試策略監(jiān)測內(nèi)容:10/22/202261上海市3.7網(wǎng)絡(luò)測試策略網(wǎng)絡(luò)策略:測試系統(tǒng)對于網(wǎng)絡(luò)的需求:監(jiān)測在不同虛擬用戶下應(yīng)用產(chǎn)生的網(wǎng)絡(luò)流量,為應(yīng)用的部署的網(wǎng)絡(luò)環(huán)境提供參考。測試應(yīng)用在不同的網(wǎng)絡(luò)條件下運行情況:測試應(yīng)用在不同網(wǎng)絡(luò)帶寬的應(yīng)用狀態(tài):較少帶寬(1M,5M,1%?)預(yù)計帶寬的50%預(yù)計帶寬10/27/202262上海市計算機軟件評測重點實驗室3.7網(wǎng)絡(luò)測試策略網(wǎng)絡(luò)策略:10/22/202262上海市3.7網(wǎng)絡(luò)測試策略系統(tǒng)業(yè)務(wù)的模擬工具:Chariotsmartbits時機:在系統(tǒng)部署前的模擬缺點:一般只支持通用的協(xié)議:http,ftp,pop3,smtp,流媒體等。10/27/202263上海市計算機軟件評測重點實驗室3.7網(wǎng)絡(luò)測試策略系統(tǒng)業(yè)務(wù)的模擬10/22/202263上3.8測試的監(jiān)測策略監(jiān)測策略:客戶端交易處理性能指標(biāo)服務(wù)器資源監(jiān)控,例如:UNIX數(shù)據(jù)庫資源監(jiān)控,例如:OracleWeb服務(wù)器監(jiān)控,例如:Apache中間件監(jiān)控,例如:TUXEDO等等10/27/202264上海市計算機軟件評測重點實驗室3.8測試的監(jiān)測策略監(jiān)測策略:10/22/202264上海3.9業(yè)務(wù)模式的策略業(yè)務(wù)模式:單一業(yè)務(wù)點混合業(yè)務(wù)點10/27/202265上海市計算機軟件評測重點實驗室3.9業(yè)務(wù)模式的策略業(yè)務(wù)模式:10/22/202265上海3.9業(yè)務(wù)模式的策略業(yè)務(wù)測試模式:單一功能點的測試:優(yōu)點:能夠精確區(qū)分不同的功能點對于系統(tǒng)資源的需求。隔離不同功能點之間的影響。缺點:和系統(tǒng)的實際情況差距比較大10/27/202266上海市計算機軟件評測重點實驗室3.9業(yè)務(wù)模式的策略業(yè)務(wù)測試模式:10/22/2022663.9業(yè)務(wù)模式的策略混合功能測試:優(yōu)點:運行模式比較接近實際運行的情況,用戶易于理解和接受。容易暴露服務(wù)端一些處理的缺陷,如數(shù)據(jù)庫死鎖。缺點:出現(xiàn)問題時較難定位,無法區(qū)分不同的功能點對系統(tǒng)資源的需求。

10/27/202267上海市計算機軟件評測重點實驗室3.9業(yè)務(wù)模式的策略混合功能測試:10/22/2022673.9業(yè)務(wù)模式的策略關(guān)鍵業(yè)務(wù):關(guān)鍵業(yè)務(wù)是用戶最為關(guān)注的那部分業(yè)務(wù),需要保證其性能和質(zhì)量;吞吐量大:某些業(yè)務(wù)流程可能不是關(guān)鍵業(yè)務(wù),但有很高的吞吐量,例如網(wǎng)站首頁;動態(tài)數(shù)據(jù)處理的業(yè)務(wù)流程:這些流程通常涉及被測系統(tǒng)的不同組件,如web服務(wù)器、應(yīng)用服務(wù)器和數(shù)據(jù)庫,需要進行全面的測試,定位性能瓶頸。業(yè)務(wù)選擇的原則10/27/202268上海市計算機軟件評測重點實驗室3.9業(yè)務(wù)模式的策略關(guān)鍵業(yè)務(wù):關(guān)鍵業(yè)務(wù)是用戶最為關(guān)注的那部3.9業(yè)務(wù)模式的策略-強度估算河北省公安交通管理信息系統(tǒng)(來自網(wǎng)上):估算方法:

全年的業(yè)務(wù)量集中在8個月完成,每個月20個工作日,每個工作日8個小時;

采用80—20原理,每個工作日中80%的業(yè)務(wù)在20%的時間內(nèi)完成,即每天80%的業(yè)務(wù)在1.6小時內(nèi)完成;

10/27/202269上海市計算機軟件評測重點實驗室3.9業(yè)務(wù)模式的策略-強度估算河北省公安交通管理信息系統(tǒng)3.9業(yè)務(wù)模式的策略-強度估算測試壓力的估算結(jié)果:

去年全年處理業(yè)務(wù)約100萬筆,其中15%的業(yè)務(wù)處理每筆業(yè)務(wù)需對應(yīng)用服務(wù)器提交7次請求;70%的業(yè)務(wù)處理每筆業(yè)務(wù)需對應(yīng)用服務(wù)器提交5次請求;其余15%的業(yè)務(wù)每筆業(yè)務(wù)向應(yīng)用服務(wù)器提交3次請求。根據(jù)以往統(tǒng)計結(jié)果,每年的業(yè)務(wù)增量為15%,考慮到今后三年業(yè)務(wù)發(fā)展的需

要,測試需按現(xiàn)有業(yè)務(wù)量的2倍進行。

10/27/202270上海市計算機軟件評測重點實驗室3.9業(yè)務(wù)模式的策略-強度估算測試壓力的估算結(jié)果:

去3.9業(yè)務(wù)模式的策略-強度估算每年總的請求數(shù)量為:(100*15%*7+100*70%*5+100*15%*3)*2=300萬次/年。

每天的請求數(shù)量為:300/160=1.875萬次/天。

每秒的請求數(shù)量為:(18750*80%)/(8*20%*3600)=2.60次/秒。

正常情況下,應(yīng)用服務(wù)器處理請求的能力應(yīng)達到:3次/秒。10/27/202271上海市計算機軟件評測重點實驗室3.9業(yè)務(wù)模式的策略-強度估算每年總的請求數(shù)量為:(1003.10測試腳本的修正啟動事務(wù)和終止事務(wù)參數(shù)化正確性校驗集合點(同步機制)10/27/202272上海市計算機軟件評測重點實驗室3.10測試腳本的修正啟動事務(wù)和終止事務(wù)10/22/204性能測試計劃討論性能測試的一些特殊點:目的框架配置描述數(shù)據(jù)的準(zhǔn)備數(shù)據(jù)的記錄中止準(zhǔn)則10/27/202273上海市計算機軟件評測重點實驗室4性能測試計劃討論性能測試的一些特殊點:10/22/2024.1編制測試計劃的目的構(gòu)建測試方案。測試資源的分配。定義測試成功條件。10/27/202274上海市計算機軟件評測重點實驗室4.1編制測試計劃的目的構(gòu)建測試方案。10/22/204.2測試計劃的框架一份測試計劃至少需要包括測試目標(biāo)測試策略測試終止準(zhǔn)則測試環(huán)境與測試工具測試資源配置(人員與時間)。10/27/202275上海市計算機軟件評測重點實驗室4.2測試計劃的框架一份測試計劃至少需要包括10/22/24.3系統(tǒng)配置的描述連接到系統(tǒng)的用戶數(shù)應(yīng)用程序客戶端計算機的配置情況(硬件、內(nèi)存、操作系統(tǒng)、軟件、開發(fā)工具等)使用的數(shù)據(jù)庫和Web服務(wù)器的類型(硬件、數(shù)據(jù)庫類型、操作系統(tǒng)、文件服務(wù)器等)服務(wù)器與應(yīng)用程序客戶端之間的通信方式前端客戶端與后端服務(wù)器之間的中間件配置和應(yīng)用程序服務(wù)器可能影響響應(yīng)時間的其他網(wǎng)絡(luò)組件(調(diào)制解調(diào)器等)10/27/202276上海市計算機軟件評測重點實驗室4.3系統(tǒng)配置的描述連接到系統(tǒng)的用戶數(shù)10/22/20224.4測試數(shù)據(jù)的準(zhǔn)備本底數(shù)據(jù)的準(zhǔn)備(比較理想是生產(chǎn)的歷史數(shù)據(jù)):量的要求,質(zhì)的要求。測試數(shù)據(jù)的準(zhǔn)備:登錄的系統(tǒng)帳號和密碼業(yè)務(wù)信息數(shù)據(jù)之間的約束關(guān)系(是否能夠重復(fù)使用?)多IP地址的仿真問題(ipspool)

10/27/202277上海市計算機軟件評測重點實驗室4.4測試數(shù)據(jù)的準(zhǔn)備本底數(shù)據(jù)的準(zhǔn)備(比較理想是生產(chǎn)的歷史數(shù)4.5測試終止準(zhǔn)則確定測試終止的原則。測試準(zhǔn)則舉例:“所有測試用例至少執(zhí)行一次”“所有待驗證指標(biāo)都達到”10/27/202278上海市計算機軟件評測重點實驗室4.5測試終止準(zhǔn)則確定測試終止的原則。10/22/2024.6測試記錄測試記錄必須和測試策略相配套內(nèi)容多:測試結(jié)果文件服務(wù)器監(jiān)控文件客戶端監(jiān)控文件網(wǎng)絡(luò)監(jiān)控文件測試數(shù)據(jù)文件10/27/202279上海市計算機軟件評測重點實驗室4.6測試記錄測試記錄必須和測試策略相配套10/22/204.6測試記錄樣例功能描述腳本名稱數(shù)據(jù)文件時間用戶數(shù)結(jié)果文件資源監(jiān)控文件備注(簡要結(jié)果)記錄人記錄時間10/27/202280上海市計算機軟件評測重點實驗室4.6測試記錄樣例功能描述腳本名稱數(shù)據(jù)文件時間用戶5測試結(jié)果分析測試結(jié)果描述一般以事務(wù)為單位操作事務(wù)(交易)為了完成一個任務(wù),用戶對應(yīng)用程序執(zhí)行的一組操作,例如登陸一個Web站點、執(zhí)行一個查詢信息、在受理一套房子等等。詳細信息:breakdown10/27/202281上海市計算機軟件評測重點實驗室5測試結(jié)果分析測試結(jié)果描述一般以事務(wù)為單位10/22/205測試結(jié)果分析一般關(guān)心的指標(biāo):虛擬并發(fā)用戶數(shù)(TotalVirtualUsers)交易響應(yīng)時間(ResponseTime)每分鐘交易數(shù)(TransRate)最慢的頁面最耗時的事務(wù)等等。10/27/202282上海市計算機軟件評測重點實驗室5測試結(jié)果分析一般關(guān)心的指標(biāo):10/22/202282上海5.1測試結(jié)果10/27/202283上海市計算機軟件評測重點實驗室5.1測試結(jié)果10/22/202283上海市計算機軟件評5.1測試結(jié)果10/27/202284上海市計算機軟件評測重點實驗室5.1測試結(jié)果10/22/202284上海市計算機軟件評5.1測試結(jié)果10/27/202285上海市計算機軟件評測重點實驗室5.1測試結(jié)果10/22/202285上海市計算機軟件評5.2性能分析硬件問題服務(wù)器(內(nèi)存、CPU)網(wǎng)絡(luò)軟件問題應(yīng)用服務(wù)器和數(shù)據(jù)庫軟件代碼執(zhí)行效率SQL執(zhí)行效率內(nèi)存泄漏10/27/202286上海市計算機軟件評測重點實驗室5.2性能分析硬件問題10/22/202286上海市計算機5.2性能分析-工具VantageAnalyzerforJ2EEJ2EE服務(wù)器分析工具DevPartnerforJAVAEdition軟件系統(tǒng)分析工具10/27/202287上海市計算機軟件評測重點實驗室5.2性能分析-工具VantageAnalyzerfor5.2.1VantageAnalyzerVantageAnalyzer的作用:EnsureApplicationscalabilityIdentifyhighCPUUtilizationIdentifymemoryleaksLocatefunctionalissuesLocateslowresponsetimePerformcapacityplanning10/27/202288上海市計算機軟件評測重點實驗室5.2.1VantageAnalyzerVantage用VantageAnalyzer監(jiān)控J2EE組件10/27/202289上海市計算機軟件評測重點實驗室用VantageAnalyzer監(jiān)控J2EMethodHotSpotView作用:在應(yīng)用程序中CPU耗費最多的部分10/27/202290上海市計算機軟件評測重點實驗室MethodHotSpotView作SQLyzerHotSpotView作用:查找應(yīng)用程序中最大的sql時間消耗10/27/202291上海市計算機軟件評測重點實驗室SQLyzerHotSpotView作MemoryScopeView作用:顯示內(nèi)存信息,并定為內(nèi)存泄漏10/27/202292上海市計算機軟件評測重點實驗室MemoryScopeView作用:顯TransactionExplorerView作用:以樹形結(jié)構(gòu)顯示方法和sql執(zhí)行的時間10/27/202293上海市計算機軟件評測重點實驗室TransactionExplorer5.2.2DevPartner10/27/202294上海市計算機軟件評測重點實驗室5.2.2DevPartner10/22/202294上海支持分析的三種類型性能分析、內(nèi)存分析、覆蓋率分析性能分析的關(guān)鍵特征線程時間、調(diào)用圖、源碼定位10/27/202295上海市計算機軟件評測重點實驗室支持分析的三種類型10/22/202295上海市計算機軟件評性能監(jiān)控界面Devpartner性能分析10/27/202296上海市計算機軟件評測重點實驗室性能監(jiān)控界面Devpartner性能分析1測試結(jié)果摘要:平均響應(yīng)時間最慢的入口點(能夠被其他外部代碼所訪問的方法)Devpartner性能分析10/27/202297上海市計算機軟件評測重點實驗室測試結(jié)果摘要:平均響應(yīng)時間最慢的入口點(能夠被其他外部代碼所測試結(jié)果摘要:使用線程時間最長的方法Devpartner性能分析10/27/202298上海市計算機軟件評測重點實驗室測試結(jié)果摘要:使用線程時間最長的方法Devp性能測試結(jié)果摘要:等待時間最多的方法Devpartner性能分析10/27/202299上海市計算機軟件評測重點實驗室性能測試結(jié)果摘要:等待時間最多的方法Devp性能瓶頸分析和察看Devpartner性能分析10/27/2022100上海市計算機軟件評測重點實驗室性能瓶頸分析和察看Devpartner性能Devpartner性能瓶頸分析和察看-調(diào)用圖10/27/2022101上海市計算機軟件評測重點實驗室Devpartner性能瓶頸分析和察看-調(diào)Devpartner性能瓶頸分析和察看-源碼定位10/27/2022102上海市計算機軟件評測重點實驗室Devpartner性能瓶頸分析和察看-源Devpartner內(nèi)存分析分析類型:臨時對象(Temporaryobjects)內(nèi)存泄漏(Memoryleaks)內(nèi)存(RAMFootprint)10/27/2022103上海市計算機軟件評測重點實驗室Devpartner內(nèi)存分析分析類型:10/內(nèi)存監(jiān)控界面Devpartner內(nèi)存分析10/27/2022104上海市計算機軟件評測重點實驗室內(nèi)存監(jiān)控界面Devpartner內(nèi)存分析1內(nèi)存泄漏摘要–包含平均內(nèi)存泄漏最大的實例的類Devpartner內(nèi)存分析10/27/2022105上海市計算機軟件評測重點實驗室內(nèi)存泄漏摘要–包含平均內(nèi)存泄漏最大的實例的類5.2.2.內(nèi)存泄漏摘要-引用最多泄漏的對象Devpartner內(nèi)存分析10/27/2022106上海市計算機軟件評測重點實驗室內(nèi)存泄漏摘要-引用最多泄漏的對象Devpar內(nèi)存泄漏摘要-內(nèi)存泄漏最多的類Devpartner內(nèi)存分析10/27/2022107上海市計算機軟件評測重點實驗室內(nèi)存泄漏摘要-內(nèi)存泄漏最多的類Devpart內(nèi)存泄漏摘要-內(nèi)存泄漏最多的方法Devpartner內(nèi)存分析10/27/2022108上海市計算機軟件評測重點實驗室內(nèi)存泄漏摘要-內(nèi)存泄漏最多的方法Devpar內(nèi)存泄漏的詳細信息Devpartner內(nèi)存分析10/27/2022109上海市計算機軟件評測重點實驗室內(nèi)存泄漏的詳細信息Devpartner內(nèi)存Devpartner內(nèi)存泄漏的調(diào)用圖10/27/2022110上海市計算機軟件評測重點實驗室Devpartner內(nèi)存泄漏的調(diào)用圖10/Devpartner內(nèi)存泄漏的源碼10/27/2022111上海市計算機軟件評測重點實驗室Devpartner內(nèi)存泄漏的源碼10/2Devpartner覆蓋率測試10/27/2022112上海市計算機軟件評測重點實驗室Devpartner覆蓋率測試10/22/25.3測試結(jié)果和分析舉例項目背景:c/s模式的生產(chǎn)管理系統(tǒng)測試中修改的內(nèi)容:更改數(shù)據(jù)訪問引擎調(diào)整臨時數(shù)據(jù)的下載模式

10/27/2022113上海市計算機軟件評測重點實驗室5.3測試結(jié)果和分析舉例項目背景:10/22/2022116測試案例WebMail系統(tǒng)WebCRM系統(tǒng)WEBOA系統(tǒng)C/S電力系統(tǒng)10/27/2022114上海市計算機軟件評測重點實驗室6測試案例WebMail系統(tǒng)10/22/20221146.1WebMail系統(tǒng)整體架構(gòu):Cgi(c語言)+apache系統(tǒng)操作系統(tǒng):hpux11i數(shù)據(jù)庫:oracle身份認證:ldap服務(wù)器測試問題:在50個用戶的情況下,系統(tǒng)響應(yīng)時間非常長。但服務(wù)器的負荷非常底。懷疑:磁盤?身份認證服務(wù)器?原因Apache中的并發(fā)線程數(shù)設(shè)置的太少。10/27/2022115上海市計算機軟件評測重點實驗室6.1WebMail系統(tǒng)整體架構(gòu):Cgi(c語言)+6.2WebCRM系統(tǒng)系統(tǒng)架構(gòu):Tomcat+oracle操作系統(tǒng):windows2003enterpriseserver在20個用戶的情況下,系統(tǒng)響應(yīng)時間非常長。但服務(wù)器的負荷非常底。(和前面系統(tǒng)類似)。懷疑:數(shù)據(jù)庫連接問題?磁盤原因:頁面有個連接至其他站點,但連接該站點的網(wǎng)絡(luò)非常慢。10/27/2022116上海市計算機軟件評測重點實驗室6.2WebCRM系統(tǒng)系統(tǒng)架構(gòu):Tomcat+ora6.2WebCRM系統(tǒng)解決辦法:Qaload中:將AutomaticallyProcessSubRequests設(shè)為false,重新轉(zhuǎn)換(convert)腳本,再將到其他站點的連接屏蔽。Performer中:將Browseremulationlevel設(shè)為Browser-levelAPI,然后再將到其他站點的連接屏蔽。10/27/2022117上海市計算機軟件評測重點實驗室6.2WebCRM系統(tǒng)解決辦法:10/22/2022116.2WebCRM系統(tǒng)收獲:排除干擾信息,分析原因,確保你測試的結(jié)果是你想要測試的內(nèi)容。JVM性能測試舉例10/27/2022118上海市計算機軟件評測重點實驗室6.2WebCRM系統(tǒng)收獲:10/22/2022118上6.3WEBOA系統(tǒng)系統(tǒng)架構(gòu):websphere+oracle操作系統(tǒng)hpux11i

問題:每測試一段時間(半個小時),系統(tǒng)停止響應(yīng)。原因:日志空間耗盡,導(dǎo)致系統(tǒng)無法繼續(xù)運行。10/27/2022119上海市計算機軟件評測重點實驗室6.3WEBOA系統(tǒng)系統(tǒng)架構(gòu):websphere+6.4C/S生產(chǎn)系統(tǒng)(GIS)系統(tǒng)架構(gòu)10/27/2022120上海市計算機軟件評測重點實驗室6.4C/S生產(chǎn)系統(tǒng)(GIS)系統(tǒng)架構(gòu)10/22/2026.4C/S生產(chǎn)系統(tǒng)(GIS)10/27/2022121上海市計算機軟件評測重點實驗室6.4C/S生產(chǎn)系統(tǒng)(GIS)10/22/20221216.4C/S生產(chǎn)系統(tǒng)(GIS)三層架構(gòu),中間應(yīng)用層服務(wù)器的為用戶自行開發(fā)??蛻舳撕椭虚g應(yīng)用服務(wù)器采用TCP/IP連接,中間應(yīng)用服務(wù)器和數(shù)據(jù)庫服務(wù)器間的連接采用數(shù)據(jù)庫訪問引擎由DBE10/27/2022122上海市計算機軟件評測重點實驗室6.4C/S生產(chǎn)系統(tǒng)(GIS)三層架構(gòu),中間應(yīng)用層服務(wù)器6.4C/S生產(chǎn)系統(tǒng)(GIS)發(fā)現(xiàn)問題:監(jiān)控發(fā)現(xiàn)大量異常報告,內(nèi)存不可寫以及執(zhí)行sql無效等錯誤。解決辦法將數(shù)據(jù)庫訪問引擎更換為DBExpress,重新編寫數(shù)據(jù)訪問接口,訪問正常。10/27/2022123上海市計算機軟件評測重點實驗室6.4C/S生產(chǎn)系統(tǒng)(GIS)發(fā)現(xiàn)問題:10/22/206.4C/S生產(chǎn)系統(tǒng)(GIS)發(fā)現(xiàn)的問題:啟動時數(shù)據(jù)集中下載

建議的解決辦法:首次使用時下載,解決了網(wǎng)絡(luò)峰值問題10/27/2022124上海市計算機軟件評測重點實驗室6.4C/S生產(chǎn)系統(tǒng)(GIS)發(fā)現(xiàn)的問題:10/22/27Web測試經(jīng)驗交流在執(zhí)行客戶端并發(fā)性能測試的過程中,需要同時監(jiān)控數(shù)據(jù)庫服務(wù)器、Web服務(wù)器以及網(wǎng)絡(luò)資源等使用情況,以便對系統(tǒng)的性能做全面評估。錄制腳本和手工編寫腳本相結(jié)合利用全局和局部數(shù)據(jù)池。文檔上傳時,必須要求將再每一個機器上存在同樣的文件。10/27/2022125上海市計算機軟件評測重點實驗室7Web測試經(jīng)驗交流在執(zhí)行客戶端并發(fā)性能測試的過程中,需7Web測試經(jīng)驗交流超時(timeout)的設(shè)置模擬IP地址變量的技術(shù)(IPSPOOFING)模擬用戶數(shù)的遞增Sleep設(shè)置問題AutomaticallyProcessSubRequests的設(shè)置問題。10/27/2022126上海市計算機軟件評測重點實驗室7Web測試經(jīng)驗交流超時(timeout)的設(shè)置10/227Web測試經(jīng)驗交流采用復(fù)合交易測試方案盡量將執(zhí)行負載測試的機器合理分布設(shè)置并發(fā)點加壓機器也有必要監(jiān)控10/27/2022127上海市計算機軟件評測重點實驗室7Web測試經(jīng)驗交流采用復(fù)合交易測試方案10/22/2027Web測試經(jīng)驗交流和功能測試工具的配合使用性能測試的弱點:功能的的正確性校驗,無法記錄功能性的錯誤。解決的辦法:使用功能測試工具彌補。10/27/2022128上海市計算機軟件評測重點實驗室7Web測試經(jīng)驗交流和功能測試工具的配合使用10/22/28.Performer使用舉例應(yīng)用系統(tǒng):一個簡單的開源缺陷跟蹤系統(tǒng)架構(gòu):Apache+php+mysql動作:提交一個缺陷10/27/2022129上海市計算機軟件評測重點實驗室8.Performer使用舉例應(yīng)用系統(tǒng):一個簡單的開源缺謝謝!10/27/2022130上海市計算機軟件評測重點實驗室謝謝!10/22/2022130上海市計算機軟件評測重點實驗性能測試培訓(xùn)蔡立志上海市計算機軟件評測重點實驗室上海計算機軟件技術(shù)開發(fā)中心10/27/2022131上海市計算機軟件評測重點實驗室性能測試培訓(xùn)蔡立志10/22/20221上海市計算機軟件評內(nèi)容安排性能測試的目的性能測試的概念性能測試的策略性能測試的計劃性能測試的結(jié)果分析性能測試的案例WEB測試經(jīng)驗交流10/27/2022132上海市計算機軟件評測重點實驗室內(nèi)容安排性能測試的目的10/22/20222上海市計算1.性能測試目的性能疑慮:我的系統(tǒng)響應(yīng)時間太慢了,到底問題出哪里?要花多少時間做完一筆交易?什么樣的配置提供最好的性能?那些因素降低了交易響應(yīng)時間?系統(tǒng)在無錯的情況下承受多大的及多長的時間的負載。10/27/2022133上海市計算機軟件評測重點實驗室1.性能測試目的性能疑慮:10/22/20223上海市計算1.性能測試目的評估系統(tǒng)的能力:測試中得到的負荷和響應(yīng)時間數(shù)據(jù)可以被用于驗證所計劃的模型的能力,并幫助作出決策。識別體系中的弱點(瓶頸):受控的負荷可以被增加到一個極端的水平,并突破它,從而修復(fù)體系的瓶頸或薄弱的地方。系統(tǒng)調(diào)優(yōu):重復(fù)運行測試,驗證調(diào)整系統(tǒng)的活動得到了預(yù)期的結(jié)果,從而改進性能。10/27/2022134上海市計算機軟件評測重點實驗室1.性能測試目的評估系統(tǒng)的能力:10/22/20224上海1.性能測試目的檢測軟件中的問題:長時間的測試執(zhí)行可導(dǎo)致程序發(fā)生由于內(nèi)存泄露引起的失敗,揭示程序中的隱含的問題或沖突。驗證穩(wěn)定性(resilience)可靠性(reliability):在一個生產(chǎn)負荷下執(zhí)行測試一定的時間是評估系統(tǒng)穩(wěn)定性和可靠性是否滿足要求的唯一方法。10/27/2022135上海市計算機軟件評測重點實驗室1.性能測試目的檢測軟件中的問題:10/22/20225上1.性能測試目的-檢查可靠性舉例確定系統(tǒng)在連續(xù)的高工作負載下的穩(wěn)定性級別。強制系統(tǒng)在短時間內(nèi)處理大量任務(wù),以模擬系統(tǒng)在數(shù)周或數(shù)月的時間內(nèi)通常會遇到的活動類型。10/27/2022136上海市計算機軟件評測重點實驗室1.性能測試目的-檢查可靠性舉例確定系統(tǒng)在連續(xù)的高工作負載1.性能測試目的-確定瓶頸舉例您可以運行測試以確定系統(tǒng)的瓶頸,并確定哪些因素導(dǎo)致性能下降,例如,文件鎖定、資源爭用和網(wǎng)絡(luò)過載。10/27/2022137上海市計算機軟件評測重點實驗室1.性能測試目的-確定瓶頸舉例您可以運行測試以確定系統(tǒng)的1.性能測試目的-度量系統(tǒng)容量舉例查看現(xiàn)有系統(tǒng)中性能與負載間的關(guān)系,并確定出現(xiàn)響應(yīng)時間顯著延長的位置“拐點”??梢源_定是否需要增加資源以支持額外的用戶。10/27/2022138上海市計算機軟件評測重點實驗室1.性能測試目的-度量系統(tǒng)容量舉例查看現(xiàn)有系統(tǒng)中性能與負載2.性能測試的概念性能:系統(tǒng)的性能是一個很大的概念,覆蓋面非常廣泛,對一個軟件系統(tǒng)而言包括執(zhí)行效率、資源占用、穩(wěn)定性、安全性、兼容性、可擴展性、可靠性等等。

負載壓力是系統(tǒng)性能的一個重要方面。10/27/2022139上海市計算機軟件評測重點實驗室2.性能測試的概念性能:10/22/20229上海市計算機2.1性能測試的概念利用測試工具,模擬大量用戶操作,對系統(tǒng)增加負載,考察系統(tǒng)的輸出項,例如吞吐量、響應(yīng)時間、CPU負載、內(nèi)存使用等如何決定系統(tǒng)的性能,例如穩(wěn)定性和響應(yīng)等。模擬情況:正常負載峰值負載異常負載10/27/2022140上海市計算機軟件評測重點實驗室2.1性能測試的概念利用測試工具,模擬大量用戶操作,對系統(tǒng)2.2性能測試的時機時機1:完成系統(tǒng)集成完成功能測試系統(tǒng)試運行階段最好的時機:不用擔(dān)心產(chǎn)生測試的垃圾數(shù)據(jù)問題不用擔(dān)心影響系統(tǒng)運行問題10/27/2022141上海市計算機軟件評測重點實驗室2.2性能測試的時機時機1:10/22/202211上海市2.2性能測試的時機時機2:系統(tǒng)運行期間出現(xiàn)性能問題。目的:查找問題的原因。注意事項:必須備份運行的數(shù)據(jù)設(shè)定專用的策略查找原因必須采用采用出現(xiàn)問題的數(shù)據(jù)10/27/2022142上海市計算機軟件評測重點實驗室2.2性能測試的時機時機2:10/22/202212上海市2.2性能測試的時機時機3硬件升級:目的:提高用戶的投資效益在舊系統(tǒng)上查找性能的瓶頸在系統(tǒng)升級以后進行系統(tǒng)前后的比較。升級前后的系統(tǒng)均應(yīng)該做性能測試10/27/2022143上海市計算機軟件評測重點實驗室2.2性能測試的時機時機310/22/202213上海市計2.3性能測試的分類性能測試類型包括:負載測試:確定在各種工作負載下系統(tǒng)的性能,目標(biāo)是測試當(dāng)負載逐漸增加時,系統(tǒng)各項性能指標(biāo)的變化情況。強度測試:強度測試是一種性能測試,他在系統(tǒng)資源特別低的情況下軟件系統(tǒng)運行情況。容量測試:確定系統(tǒng)可處理同時在線的最大用戶數(shù)(在用戶可接收的范圍內(nèi))。壓力測試:通過確定一個系統(tǒng)的瓶頸或者最大使用極限的測試。10/27/2022144上海市計算機軟件評測重點實驗室2.3性能測試的分類性能測試類型包括:10/22/20222.3性能測試的分類疲勞強度測試:系統(tǒng)穩(wěn)定運行情況下能夠支持的最大并發(fā)用戶數(shù)或者日常運行用戶數(shù),持續(xù)執(zhí)行一段時間業(yè)務(wù),通過綜合分析交易執(zhí)行指標(biāo)和資源監(jiān)控指標(biāo)來確定系統(tǒng)處理最大工作量強度性能的過程。10/27/2022145上海市計算機軟件評測重點實驗室2.3性能測試的分類疲勞強度測試:10/22/2022152.3性能測試的分類大數(shù)據(jù)量測試獨立的數(shù)據(jù)量測試

針對某些系統(tǒng)存儲、傳輸、統(tǒng)計、查詢等業(yè)務(wù)進行大數(shù)據(jù)量測試綜合數(shù)據(jù)量測試和壓力性能測試、負載性能測試、疲勞性能測試相結(jié)合的綜合測試方案10/27/2022146上海市計算機軟件評測重點實驗室2.3性能測試的分類大數(shù)據(jù)量測試10/22/202216上2.4性能測試的工具手工測試:多臺電腦和同樣數(shù)目的操作人員,在同意時刻擦作,幾下響應(yīng)時間。缺點:需要的人力和機器設(shè)備無法解決測試人員的同步問題無法捕捉程序內(nèi)部的變化情況10/27/2022147上海市計算機軟件評測重點實驗室2.4性能測試的工具手工測試:10/22/202217上海市2.4性能測試的工具自動化性能測試工具商業(yè)性能測試工具:開源性能測試工具自主開發(fā)工具測試10/27/2022148上海市計算機軟件評測重點實驗室2.4性能測試的工具自動化性能測試工具10/22/202212.4性能測試的工具自動化測試工具的弱點:缺乏功能點的校驗對有些控件支持得不好不能達到真實模擬負載腳本的支持不夠靈活報錯定位不夠詳細10/27/2022149上海市計算機軟件評測重點實驗室2.4性能測試的工具自動化測試工具的弱點:10/22/202.4性能測試的工具自動負載測試工具盲點:在負載測試中,不進行功能校驗,就是當(dāng)功能錯誤發(fā)生時,測試工具不能夠記錄產(chǎn)生的功能性錯誤,這就忽略了負載壓力情況下的功能不穩(wěn)定問題。在負載壓力測試過程中記錄所有虛擬用戶的操作及服務(wù)器的響應(yīng)是當(dāng)前負載壓力測試技術(shù)發(fā)展的最大挑戰(zhàn)。但測試過程中的附加記錄會導(dǎo)致資源消耗、操作行為增加以及產(chǎn)生大量日志等問題。10/27/2022150上海市計算機軟件評測重點實驗室2.4性能測試的工具自動負載測試工具盲點:10/22/202.4.1商業(yè)測試工具商業(yè)測試工具:MercuryInteractive的LoadRunnerCompuware(康博)的QaloadSegue(賽格瑞)公司的SilkperformerSpirentavalanche10/27/2022151上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具商業(yè)測試工具:10/22/202222.4.1商業(yè)測試工具工具選擇依據(jù):模擬您的客戶機運行多個模擬的客戶機腳本化執(zhí)行并能編輯腳本支持會話協(xié)議可配置的用戶數(shù)量報告成功、錯誤和失敗10/27/2022152上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具工具選擇依據(jù):10/22/202222.4.1商業(yè)測試工具LoadRunner特點:支持的協(xié)議多且個別協(xié)議支持的版本高;負載測試方案設(shè)置靈活;豐富的資源監(jiān)控,資源監(jiān)控計數(shù)器報告可導(dǎo)出Word,Excel以及HTML格式10/27/2022153上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具LoadRunner特點:10/2.4.1商業(yè)測試工具LoadRunner缺點:可擴展性差,對不支持的協(xié)議無能為力;資源監(jiān)控指標(biāo)需進一步細化;功能校驗應(yīng)該加入10/27/2022154上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具LoadRunner缺點:10/22.4.1商業(yè)測試工具Qaload特點:腳本直接采用c語言從控制中心管理全局負載測試快速創(chuàng)建仿真的負載測試性價比較高10/27/2022155上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具Qaload特點:10/22/202.4.1商業(yè)測試工具Qaload缺點:穩(wěn)定性較差;需要測試工程師有較強的編程經(jīng)驗;協(xié)議升級不及時腳本調(diào)試部方便10/27/2022156上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具Qaload缺點:10/22/202.4.1商業(yè)測試工具Silkperformer優(yōu)點:在工具中融合了功能測試的方法腳本采用類Pascal語言,資源消耗較小支持動態(tài)的dll外部函數(shù)錯誤可精確定位提供了數(shù)據(jù)池模板,并可定制用戶可以通過拖拉的方式最為直觀地定制測試報告10/27/2022157上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具Silkperformer優(yōu)點2.4.1商業(yè)測試工具Silkperformer缺點報告對中文的支持較差報告導(dǎo)出以后html鏈接會丟失10/27/2022158上海市計算機軟件評測重點實驗室2.4.1商業(yè)測試工具Silkperformer缺點12.4.2開源測試工具OpenSTAURL:特點:基于windows平臺,Corba分布式軟件測試體系。具有腳本控制語言(SCL),用戶創(chuàng)建腳本,并將輸入數(shù)據(jù)參數(shù)化測試基于Web的應(yīng)用軟件10/27/2022159上海市計算機軟件評測重點實驗室2.4.2開源測試工具OpenSTA10/22/202222.4.2開源測試工具TestMakerURL:特點:基于java架構(gòu),支持Windows、linux、unix平臺。腳本語言采用Jython.(Python的java實現(xiàn))提供Python的面向?qū)ο蟓h(huán)境支持HTTP/HTTPS、TCP/IP、SOAP以及XML10/27/2022160上海市計算機軟件評測重點實驗室2.4.2開源測試工具TestMaker10/22/20222.4.2開源測試工具ApacheJMeterURL:/jmeter特點:純JAVA,不受平臺的約束同時支持功能和性能負載壓力測試測試JAVA對象、JDBC、數(shù)據(jù)庫、Perl腳本、Web服務(wù)器和應(yīng)用服務(wù)器等可記錄瀏覽器和Web服務(wù)器之間的通信。10/27/2022161上海市計算機軟件評測重點實驗室2.4.2開源測試工具ApacheJMeter10/22/2.5性能測試的原理測試拓撲示意圖10/27/2022162上海市計算機軟件評測重點實驗室2.5性能測試的原理測試拓撲示意圖10/22/2022322.5性能測試的原理其中: Conductor為測試控制機; Player為測試代理機(測試代理機數(shù)目根據(jù)實際而定)。被測服務(wù)器指WEB服務(wù)器或者數(shù)據(jù)庫服務(wù)器、應(yīng)用服務(wù)器等等。10/27/2022163上海市計算機軟件評測重點實驗室2.5性能測試的原理其中:10/22/202233上海市計算2.5性能測試的原理基本原理錄制/回放方式來模擬用戶的實際操作的錄制:測試工具啟動一個代理監(jiān)視并獲取在不同通信協(xié)議下客戶端和服務(wù)器端的通信信息,生成測試腳本框架?;胤牛簻y試工具通過控制臺將測試腳本分發(fā)到各個負載測試生成器(測試代理)上,控制負載測試生成器模擬多個用戶對服務(wù)器并發(fā)訪問。

10/27/2022164上海市計算機軟件評測重點實驗室2.5性能測試的原理基本原理10/22/202234上海市計2.5性能測試的原理測試腳本的錄制和分配原則:腳本越小越好(一個功能一個腳本)。選擇負載壓力最高的業(yè)務(wù)功能進行測試。選擇所需要的操作進行錄制,如果部隊服務(wù)器產(chǎn)生壓力的操作可以不錄制。10/27/2022165上海市計算機軟件評測重點實驗室2.5性能測試的原理測試腳本的錄制和分配原則:10/22/22.5性能測試的原理回放模式:

進程回放模式:線程回放模式:10/27/2022166上海市計算機軟件評測重點實驗室2.5性能測試的原理回放模式:

進程回放模式:10/22/22.5性能測試的原理測試的一般步驟:選擇協(xié)議創(chuàng)建腳本:錄制或者手工編寫參數(shù)華測試數(shù)據(jù)創(chuàng)建虛擬用戶,設(shè)定負載方案執(zhí)行測試結(jié)果分析10/27/2022167上海市計算機軟件評測重點實驗室2.5性能測試的原理測試的一般步驟:10/22/2022373.性能測試的策略內(nèi)容包括:負荷策略網(wǎng)絡(luò)策略業(yè)務(wù)策略監(jiān)測策略10/27/2022168上海市計算機軟件評測重點實驗室3.性能測試的策略內(nèi)容包括:10/22/202238上海市3.1性能測試的一般步驟1.

分析需求2.制定測試策略3.

制定測試計劃4.

設(shè)計測試用例5.

運行測試用例6.

分析測試結(jié)果10/27/2022169上海市計算機軟件評測重點實驗室3.1性能測試的一般步驟1.

分析需求10/22/2023.2分析測試需求確定客戶需求和期望穩(wěn)定性?大數(shù)據(jù)量?性能?壓力?調(diào)優(yōu)?實際業(yè)務(wù)需求必須達到什么的響應(yīng)時間?穩(wěn)定性怎么樣?(實時系統(tǒng)、報警系統(tǒng))系統(tǒng)分析使用的是什么系統(tǒng)?(決定了我們可以采用什么樣的策略)10/27/2022170上海市計算機軟件評測重點實驗室3.2分析測試需求確定客戶需求和期望10/22/202243.2分析測試需求-在軟件生命周期中性能測試計劃和需求在需求分析中充分關(guān)注負載壓力性能:負載壓力需求占10%的需求分析時間系統(tǒng)性能目標(biāo)的設(shè)計和分析方法具備并確定性能測試需求相關(guān)的系統(tǒng)結(jié)果資料性能需求分析應(yīng)該和體系結(jié)構(gòu)分析結(jié)合進行10/27/2022171上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在需3.2分析測試需求-在軟件生命周期中性能測試計劃和需求從設(shè)計中得到負載壓力性能指標(biāo)清楚不同的設(shè)計對負載壓力的影響,給出負載壓力性能的預(yù)期的性能指標(biāo)。設(shè)計使用了第三方的產(chǎn)品,要求提供商能夠?qū)ζ洚a(chǎn)品進行性能驗證和設(shè)計,識別和其產(chǎn)品有關(guān)負載壓力性能問題在資金預(yù)算方面考慮性能測試(10%的資金預(yù)算是個安全的選擇)設(shè)計中考慮應(yīng)用規(guī)模和數(shù)據(jù)量的可升級性10/27/2022172上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求從設(shè)3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在開發(fā)階段創(chuàng)建一個負載壓力性能測試環(huán)境確保合理精確的測試環(huán)境,并且此環(huán)境可重用為測試環(huán)境制定負載壓力性能測試時間表,如果測試環(huán)境是共享的,負載壓力性能測試不能和其他活動同時發(fā)生選擇一個性能測試工具10/27/2022173上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在開3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在驗收階段多個等級范圍內(nèi)測試并調(diào)優(yōu)驗證系統(tǒng)和設(shè)計目標(biāo)的符合性測試系統(tǒng)的可升級性確定性能瓶頸……10/27/2022174上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在驗3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在運行階段監(jiān)控負載壓力性能:監(jiān)控負載壓力性能識別系統(tǒng)性能傾向確定何種條件下負載壓力性能超過可接受范圍10/27/2022175上海市計算機軟件評測重點實驗室3.2分析測試需求-在軟件生命周期中性能測試計劃和需求在運3.3制定測試目標(biāo)了解系統(tǒng)狀態(tài):給出在正常的情況下某個業(yè)務(wù)的響應(yīng)時間。系統(tǒng)容量:在用戶可接收的范圍內(nèi),每秒可以完成多少個業(yè)務(wù)。系統(tǒng)調(diào)優(yōu):通過系統(tǒng)優(yōu)化以后,業(yè)務(wù)的響應(yīng)時間較調(diào)優(yōu)前是否有比較大的提升。10/27/2022176上海市計算機軟件評測重點實驗室3.3制定測試目標(biāo)了解系統(tǒng)狀態(tài):10/22/202246上3.3制定測試目標(biāo)硬件升級比較硬件升級前后的系統(tǒng)性能變化。疲勞測試:檢查系統(tǒng)長時間運行狀態(tài)是否和設(shè)計相符10/27/2022177上海市計算機軟件評測重點實驗室3.3制定測試目標(biāo)硬件升級10/22/202247上海市計3.4系統(tǒng)架構(gòu)分析系統(tǒng)構(gòu)成: 硬件設(shè)置 操作系統(tǒng)設(shè)置系統(tǒng)架構(gòu)網(wǎng)絡(luò)需求10/27/2022178上海市計算機軟件評測重點實驗室3.4系統(tǒng)架構(gòu)分析系統(tǒng)構(gòu)成:10/22/202248上海3.4系統(tǒng)架構(gòu)分析C/S:client/Server客戶端/服務(wù)器架構(gòu)基于客戶端/服務(wù)器的三層架構(gòu)基于客戶端/服務(wù)器的分布式架構(gòu)B/S:基于瀏覽器/Web服務(wù)器的三層架構(gòu)基于中間件應(yīng)用服務(wù)器的三層架構(gòu)基于Web服務(wù)器和中間件的多層架構(gòu)10/27/2022179上海市計算機軟件評測重點實驗室3.4系統(tǒng)架構(gòu)分析C/S:10/22/202249上海市計3.4系統(tǒng)架構(gòu)分析系統(tǒng)類別:分清系統(tǒng)類別是我們掌握什么樣的技術(shù)的前提,掌握相應(yīng)技術(shù)做性能測試才可能成功。bs結(jié)構(gòu):需要掌握http協(xié)議、java、html等技術(shù)。cs結(jié)構(gòu):需要了解操作系統(tǒng)、TCP/IPwinsock、com、tuxedo等。10/27/2022180上海市計算機軟件評測重點實驗室3.4系統(tǒng)架構(gòu)分析系統(tǒng)類別:分清系統(tǒng)類別是我們掌握什么樣的3.4系統(tǒng)架構(gòu)分析一個b/s多層結(jié)構(gòu)系統(tǒng)的例子10/27/2022181上海市計算機軟件評測重點實驗室3.4系統(tǒng)架構(gòu)分析一個b/s多層結(jié)構(gòu)系統(tǒng)的例子10/22/3.5系統(tǒng)功能分析系統(tǒng)功能:系統(tǒng)功能指系統(tǒng)提供的不同子系統(tǒng)。例如:辦公管理系統(tǒng)中的公文子系統(tǒng),會議子系統(tǒng)等。實時部分和非實時向結(jié)合的系統(tǒng)。區(qū)分不同子系統(tǒng)對性能的不同要求。10/27/2022182上海市計算機軟件評測重點實驗室3.5系統(tǒng)功能分析系統(tǒng)功能:10/22/202252上海市3.6負荷策略的制定依

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論