性能測(cè)試筆記_第1頁
性能測(cè)試筆記_第2頁
性能測(cè)試筆記_第3頁
性能測(cè)試筆記_第4頁
性能測(cè)試筆記_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、2749555640123456789性能測(cè)試筆記1. 什么是性能測(cè)試軟件的功能:對(duì)一個(gè)軟件基本功能能夠?qū)崿F(xiàn),比如:銀行卡能夠正常轉(zhuǎn)賬成功(用戶數(shù)=1)軟件的性能:要求軟件性能更好,一般關(guān)注多用戶的使用情況,軟件的響應(yīng)時(shí)間。響應(yīng)時(shí)間例子:登錄一個(gè)軟件,點(diǎn)擊“登錄”按鈕時(shí),多久能夠顯示成功登錄的頁面。性能問題:1 每秒平均瀏覽量:2200次/秒瀏覽量(PV, Page View):即頁面訪問量或點(diǎn)擊量,用戶每次刷新即被計(jì)算一次購票申請(qǐng):20萬張/秒以上自身設(shè)計(jì)瀏覽量100萬次/小時(shí) à瀏覽量280次/秒2. 響應(yīng)時(shí)間的358原則:3秒之內(nèi),客戶比較滿意5秒之內(nèi),客戶可以接受8秒之內(nèi),客

2、戶可以忍受大于8秒,無法忍受3. 一般進(jìn)行性能測(cè)試之前,要對(duì)系統(tǒng)尤其是數(shù)據(jù)庫進(jìn)行備份負(fù)載測(cè)試是一種 正常 的測(cè)試(在正常測(cè)試的指標(biāo)下測(cè)出最大的負(fù)載量)指標(biāo)或者某種資源達(dá)到某種指標(biāo),比如響應(yīng)時(shí)間達(dá)到多少,比如CPU負(fù)載100%等壓力測(cè)試和負(fù)載測(cè)試二者的區(qū)別:負(fù)載測(cè)試強(qiáng)調(diào)系統(tǒng)在正常工作情況下的性能指標(biāo)壓力測(cè)試的目的是發(fā)現(xiàn)在什么條件下系統(tǒng)的性能變得不可接受,發(fā)現(xiàn)應(yīng)用程序性能下降的拐點(diǎn)影響系統(tǒng)性能的主要因素(1) 硬件: CPU,內(nèi)存,硬盤,網(wǎng)卡及其他網(wǎng)絡(luò)設(shè)備【最好解決】(2) 操作系統(tǒng)(3) 網(wǎng)絡(luò)(4) 中間件(又叫應(yīng)用服務(wù)器),web服務(wù)器(5) 數(shù)據(jù)庫服務(wù)器(6) 客戶端(7) 變成語言,程序?qū)?/p>

3、現(xiàn)方式,算法【最難解決】客戶端=è服務(wù)端(Web服務(wù)器)=è應(yīng)用服務(wù)器=è數(shù)據(jù)庫服務(wù)器性能測(cè)試主要關(guān)心兩個(gè)部分:web服務(wù)器和應(yīng)用服務(wù)器??蛻舳讼蚍?wù)器發(fā)送請(qǐng)求服務(wù)器端向客戶端返回應(yīng)答(響應(yīng)response)性能測(cè)試的常用術(shù)語:并發(fā)(Concurrency):所有用戶在同一時(shí)刻(一個(gè)時(shí)間點(diǎn),可以精確到毫秒級(jí))做同一件事情或操作,一般針對(duì)同一類型的業(yè)務(wù)例如:在信用卡審批業(yè)務(wù)中,一定數(shù)目的用戶在同一時(shí)刻對(duì)已經(jīng)完成的審批業(yè)務(wù)進(jìn)行提交做并發(fā)的測(cè)試就稱為“并發(fā)測(cè)試”?!景l(fā)測(cè)試不包含睡眠時(shí)間】在線(OnLine):多用戶在一段時(shí)間內(nèi)對(duì)系統(tǒng)執(zhí)行操作【包含睡眠時(shí)間】并發(fā)測(cè)試與在線

4、測(cè)試對(duì)系統(tǒng)的壓力不同,一般來講并發(fā)測(cè)試的壓力和在線測(cè)試的壓力的比值是10:1 。例如:200用戶并發(fā)測(cè)試相當(dāng)于2000用戶在線測(cè)試。并發(fā)測(cè)試一定是多用戶。請(qǐng)求響應(yīng)時(shí)間指從客戶端發(fā)送一個(gè)請(qǐng)求開始計(jì)時(shí),到客戶端接到從服務(wù)器端返回的響應(yīng)結(jié)果計(jì)時(shí)結(jié)束。在一些工具中,請(qǐng)求響應(yīng)時(shí)間通常被稱為TTLB 即“Time to Last Byte”,意思是從開始發(fā)送第一個(gè)請(qǐng)求開始,到客戶端收到最后一個(gè)字節(jié)的響應(yīng)為止所耗費(fèi)的時(shí)間。請(qǐng)求響應(yīng)時(shí)間的單位一般為“秒”或者“毫秒”再復(fù)雜的響應(yīng)時(shí)間都可以分為3段:請(qǐng)求的響應(yīng)時(shí)間=客戶端的響應(yīng)時(shí)間+網(wǎng)絡(luò)的響應(yīng)時(shí)間+服務(wù)器的響應(yīng)時(shí)間一般測(cè)試放在內(nèi)網(wǎng)里,帶寬,網(wǎng)絡(luò)不會(huì)成為瓶頸。只用

5、分析客戶端的響應(yīng)問題和服務(wù)器的響應(yīng)問題。一般客戶端的響應(yīng)很少有問題,一般只分析服務(wù)器響應(yīng)問題即可。事務(wù)響應(yīng)時(shí)間:用戶完成某個(gè)具體事務(wù)(如跨行取款事務(wù))所需要的時(shí)間。事務(wù)可能包含多個(gè)請(qǐng)求。比如點(diǎn)擊“登錄”按鈕,到登錄進(jìn)頁面。事務(wù)的響應(yīng)時(shí)間和請(qǐng)求響應(yīng)時(shí)間的區(qū)別?一個(gè)事務(wù)包含一個(gè)或多個(gè)請(qǐng)求(一般,一個(gè)請(qǐng)求指的是一個(gè)http請(qǐng)求)。點(diǎn)擊率:每秒鐘用戶向web服務(wù)器提交的http請(qǐng)求數(shù)。-點(diǎn)擊率越大,對(duì)服務(wù)器的壓力也越大-注意:點(diǎn)擊不是指鼠標(biāo)的一次“單擊”操作。因?yàn)樵谝淮巍皢螕簟辈僮髦?,客戶端可能向服?wù)器發(fā)出多個(gè)HTTP請(qǐng)求(比如跳轉(zhuǎn)頁面需要更新展示圖片等)。點(diǎn)擊量的計(jì)算:假如單擊“登錄”按鈕,請(qǐng)求一個(gè)

6、頁面登錄后的歡迎頁面中包含3個(gè)圖片,則每個(gè)圖片都需要重新發(fā)送一個(gè)http請(qǐng)求,所以,單擊鼠標(biāo)一次產(chǎn)生的http請(qǐng)求總數(shù)為4=1(登錄請(qǐng)求)+3(圖片請(qǐng)求)點(diǎn)擊率=點(diǎn)擊量/時(shí)間吞吐量:用戶在任意給定一秒從服務(wù)器端獲得的全部數(shù)據(jù)量,單位是字節(jié)吞吐量/傳輸時(shí)間=吞吐率吞吐率很重要,反應(yīng)了服務(wù)器的處理速度和性能,也是衡量網(wǎng)絡(luò)性能的重要指標(biāo)。TPS(事務(wù)數(shù)/秒)在性能測(cè)試過程中,要監(jiān)控服務(wù)器系統(tǒng)的各項(xiàng)資源情況,比如:CPU,內(nèi)存,磁盤及網(wǎng)絡(luò)等情況。吞吐率和點(diǎn)擊率的區(qū)別:吞吐率:指服務(wù)器每秒處理的數(shù)據(jù)量。反應(yīng)了服務(wù)器的處理能力,吞吐率越大,服務(wù)器處理能力越強(qiáng)。點(diǎn)擊率:客戶端每秒向服務(wù)器發(fā)送請(qǐng)求的數(shù)量。反應(yīng)

7、了服務(wù)器的壓力,點(diǎn)擊率越大,服務(wù)器的壓力越大吞吐率受點(diǎn)擊率影響,也受服務(wù)器性能的限制。完美的吞吐率是:在帶寬充足的情況下,吞吐率隨著點(diǎn)擊率的增加而增加。資源利用率指對(duì)不同的資源系統(tǒng)的使用程度,包括web服務(wù)器,操作系統(tǒng),數(shù)據(jù)庫服務(wù)器,網(wǎng)絡(luò),硬件,是測(cè)試和分析瓶頸的主要參數(shù)-如:服務(wù)器cpu利用率,磁盤利用率等它是分析系統(tǒng)性能指標(biāo)進(jìn)而改善性能的主要依據(jù),因此是web性能測(cè)試工作的重點(diǎn)。性能測(cè)試的策略(即方法):重點(diǎn)測(cè)試方法:基準(zhǔn)測(cè)試,并發(fā)測(cè)試,綜合場(chǎng)景測(cè)試,疲勞強(qiáng)度測(cè)試,極限測(cè)試,遞增測(cè)試基準(zhǔn)測(cè)試:一般做的是單用戶測(cè)試(Benchmark Testing)-指測(cè)試環(huán)境確定以后,對(duì)業(yè)務(wù)模型中涉及的

8、重要業(yè)務(wù)做單獨(dú)的測(cè)試。-目的是獲取單用戶執(zhí)行時(shí)的各項(xiàng)性能指標(biāo),為多用戶并發(fā)和綜合場(chǎng)景等性能測(cè)試分析提供參考依據(jù)。并發(fā)測(cè)試:就是多用戶的并發(fā)測(cè)試某個(gè)測(cè)試點(diǎn)。并發(fā)測(cè)試對(duì)系統(tǒng)要求比較嚴(yán)格,因?yàn)橐M一個(gè)瞬間壓力。并且要忽略系統(tǒng)的睡眠時(shí)間(思考時(shí)間)。遞增測(cè)試:A)指每隔一定時(shí)間段(如5秒,10秒)加載不同數(shù)目的虛擬用戶執(zhí)行測(cè)試點(diǎn)操作,對(duì)測(cè)試點(diǎn)進(jìn)行遞增用戶壓力加載測(cè)試。原因:所有用戶(5000)共同登陸可能會(huì)導(dǎo)致系統(tǒng)壓力過大,進(jìn)而影響到后面關(guān)心的測(cè)試點(diǎn)(buy)的性能,導(dǎo)致關(guān)心的測(cè)試點(diǎn)結(jié)果不準(zhǔn)確,所以采取遞增,分散一下前面的壓力,使系統(tǒng)關(guān)心的測(cè)試點(diǎn)能夠正常的測(cè)試。(這里是遞增著登陸)B)測(cè)試一個(gè)測(cè)試點(diǎn)

9、(如:購票),先測(cè)試單用戶,再測(cè)試20用戶,40用戶等情況,有利于分析,也稱為遞增測(cè)試。(這里是遞增著全套測(cè)試)綜合場(chǎng)景測(cè)試【重難點(diǎn)】:通過對(duì)系統(tǒng)結(jié)構(gòu)和功能的分析,對(duì)用戶的分布和使用頻率的分析,來構(gòu)造系統(tǒng)綜合場(chǎng)景的測(cè)試模型,模擬不同用戶執(zhí)行不同操作。如10%的用戶執(zhí)行瀏覽首頁,50%的用戶執(zhí)行查詢訂單,40%的用戶執(zhí)行訂購機(jī)票,最大限度地模擬系統(tǒng)的真實(shí)場(chǎng)景,使用戶預(yù)知系統(tǒng)投入使用后的性能水平。沒特別指明的話,一般都是指在線的。Login不適合放在綜合場(chǎng)景中運(yùn)行。綜合場(chǎng)景:號(hào)稱能最真實(shí)的模擬實(shí)際的生產(chǎn)環(huán)境。如測(cè)試時(shí)間為50分鐘,則綜合場(chǎng)景中的每個(gè)腳本都是在循環(huán)執(zhí)行。所以綜合場(chǎng)景中不宜加入logi

10、n測(cè)試點(diǎn),因?yàn)椴荒苷鎸?shí)模擬實(shí)際的生產(chǎn)環(huán)境。疲勞強(qiáng)度測(cè)試:是一種特殊的強(qiáng)度測(cè)試(壓力測(cè)試)。指在一定的壓力下(如:相同的用戶數(shù))長時(shí)間(疲勞)對(duì)系統(tǒng)進(jìn)行測(cè)試,并監(jiān)控服務(wù)器的各項(xiàng)資源情況。如:7x24小時(shí),24小時(shí)(如移動(dòng)電信銀行的服務(wù)器)。測(cè)試其服務(wù)器的穩(wěn)定性:指長時(shí)間的運(yùn)行過程中,系統(tǒng)的各項(xiàng)資源及時(shí)間等指標(biāo)表現(xiàn)是否正常。內(nèi)存泄露:系統(tǒng)的服務(wù)器內(nèi)存都被占用,而沒有釋放。導(dǎo)致系統(tǒng)沒有可用內(nèi)存。內(nèi)存泄露測(cè)試:通過LR監(jiān)控時(shí)查看具體的幾項(xiàng)指標(biāo),或者通過其它的專門內(nèi)存泄露檢測(cè)工具測(cè)試。數(shù)據(jù)容量測(cè)試:查看系統(tǒng)服務(wù)器能否實(shí)現(xiàn)大數(shù)量下使用情況,系統(tǒng)的各項(xiàng)資源表現(xiàn)情況。如:200G,或者3個(gè)T。極限測(cè)試:也叫“

11、摸高測(cè)試”,測(cè)試系統(tǒng)的極限,如系統(tǒng)最大能承受的用戶數(shù),吞吐量等。虛擬用戶:Virtual Users控制臺(tái):Controller分析工具:AnalysisLoadRunner的三大組件:虛擬用戶腳本生成器(Virtual User Generator)-Creat/Edit Scripts【Generator:生成器】壓力調(diào)度控制臺(tái)(Controller)-Run Load Tests壓力結(jié)果分析器(Analysis)-Analyze Test ResultsQTP(功能自動(dòng)化的工具)和LR(性能測(cè)試工具)的區(qū)別:QTP關(guān)心的是功能方面,LR關(guān)心的是性能方面。QTP關(guān)心界面的控件屬性(對(duì)象,對(duì)

12、象的屬性,屬性值等)等,LR關(guān)心的是客戶端和服務(wù)器之間往來的數(shù)據(jù)包。LR的工作原理:錄制時(shí),LR記錄客戶端和服務(wù)器二者之間的所有對(duì)話(數(shù)據(jù)包),形成腳本,回放時(shí),LR模擬真實(shí)的客戶端,向服務(wù)器發(fā)送請(qǐng)求。并驗(yàn)證服務(wù)器的響應(yīng)。LR是怎么記錄下數(shù)據(jù)包的:(1)基于局域網(wǎng)的廣播原理?!具@種用的很少】(2)基于一種嗅探原理sniffer?!灸壳霸谟玫姆绞健刻摂M用戶腳本生成器:是用來生成腳本的LR的常用術(shù)語:虛擬用戶(Virtual User 【簡稱VU】):在場(chǎng)景中,loadRUnner用VU代替實(shí)際用戶。Vuser模擬實(shí)際用戶執(zhí)行操作。一個(gè)場(chǎng)景可以包含幾十,幾百甚至幾千個(gè)Vuser。(每個(gè)虛擬用戶是一

13、個(gè)進(jìn)程或者線程,一般用的是線程)Vuser腳本(Virtual User Script):用于描述VU在場(chǎng)景中執(zhí)行的操作。(記錄的客戶端發(fā)送的請(qǐng)求。)事物(Transaction):為度量服務(wù)器的性能,需要定義事務(wù)。事務(wù)表示要度量的最終用戶業(yè)務(wù)流程或操作。為何要定義事務(wù):因?yàn)槟_本中將關(guān)心的操作(如購票)定義為一個(gè)事務(wù),則結(jié)果報(bào)告中(analysis)就會(huì)返回事務(wù)的響應(yīng)時(shí)間。不關(guān)心的操作就不需要定義成事務(wù)。場(chǎng)景(Scenario):場(chǎng)景是一種文件,用于根據(jù)性能要求定義在每一個(gè)測(cè)試回話運(yùn)行期間發(fā)生的事件。模擬真實(shí)環(huán)境中,用戶運(yùn)行的情況?!緦⒛_本放到控制臺(tái)去運(yùn)行(包括設(shè)置各種參數(shù))】綜合場(chǎng)景:將不同

14、的腳本,至少3個(gè)放到控制臺(tái)去共同運(yùn)行一段時(shí)間。具體定義見PPT。測(cè)試注意:-設(shè)置IE(清楚瀏覽器緩存):進(jìn)入工具èInternet選項(xiàng)è常規(guī)è設(shè)置è每次訪問此頁面時(shí)檢查-LR中修改參數(shù):進(jìn)入ControllerèRunèTime SettingèTnternet Protocol èProxy,選擇No Proxy。Jojo /bean LR基本測(cè)試流程:制定性能測(cè)試計(jì)劃(部分)è創(chuàng)建測(cè)試腳本è編譯,運(yùn)行測(cè)試腳本【VUG】è創(chuàng)建場(chǎng)景è運(yùn)行,監(jiān)控場(chǎng)景,收集數(shù)據(jù)【Con 控制臺(tái)】

15、è生成測(cè)試報(bào)告,分析測(cè)試結(jié)果【analysis】 最好用英文命名小技巧:彈出結(jié)果日志文件Transaction 事務(wù)將一個(gè)操作設(shè)置成事務(wù)的目的:獲取操作的響應(yīng)時(shí)間(在analysis報(bào)告里)在帶寬充足的情況下,完美的吞吐率應(yīng)該隨著點(diǎn)擊率的升高而升高。反過來,當(dāng)服務(wù)器壓力過大服務(wù)器處理能力不足時(shí),吞吐率會(huì)隨著點(diǎn)擊率的增高而保持恒定或者降低,那么點(diǎn)擊率也會(huì)受到相應(yīng)影響而變慢。即吞吐率和點(diǎn)擊率是相互影響的。腳本生成器可以模擬1個(gè)用戶,多用戶一定要用控制臺(tái)來實(shí)現(xiàn)。(控制臺(tái)就是來生成管理多用戶的。)基準(zhǔn)測(cè)試是單用戶測(cè)試,可用腳本生成器(生成的調(diào)試結(jié)果是沒有響應(yīng)時(shí)間的),但是也還是需要控制臺(tái)。因

16、為結(jié)果要寫到報(bào)告里。(結(jié)果生成器analysis得出單用戶測(cè)試的結(jié)果,比如響應(yīng)時(shí)間等等)疲勞測(cè)試和綜合場(chǎng)景測(cè)試的區(qū)別就是時(shí)間的長短,疲勞測(cè)試運(yùn)行的時(shí)間會(huì)長一些。只要業(yè)務(wù)邏輯不變(操作不變),則不需要重新調(diào)試腳本,回歸測(cè)試中可以直接利用原來腳本。調(diào)試腳本時(shí)請(qǐng)頻繁保存副本,因?yàn)長R回退鍵效果不是很好。腳本必須現(xiàn)在腳本生成器進(jìn)行運(yùn)行,執(zhí)行通過è將腳本放入控制臺(tái),在控制臺(tái)執(zhí)行完畢后è生成結(jié)果報(bào)告總的吞吐率 服務(wù)水平等級(jí)協(xié)議報(bào)告中事務(wù)響應(yīng)時(shí)間的標(biāo)準(zhǔn)方差值:越趨近于0,說明系統(tǒng)越穩(wěn)定(每一項(xiàng)事務(wù)的響應(yīng)時(shí)間非常相似)90percent:表示90%的事務(wù)都可以在該響應(yīng)時(shí)間內(nèi)完成。代表一個(gè)大

17、多數(shù)情況。HTTP狀態(tài)碼:200表示成功4XX表示客戶端的失敗5XX表示服務(wù)器的失敗當(dāng)場(chǎng)景設(shè)定的duration時(shí)間結(jié)束時(shí),所有的虛擬用戶需要運(yùn)行完當(dāng)前的transaction以及action再結(jié)束。基準(zhǔn)測(cè)試執(zhí)行方法單用戶執(zhí)行腳本操作1分鐘單用戶執(zhí)行腳本操作5次B/S腳本必須要有登陸,有退出(否則假退出其實(shí)鏈接還沒斷開,會(huì)影響測(cè)試結(jié)果)Replay log:腳本執(zhí)行日志Recording log:錄制時(shí)的日志Generation log:所有客戶端和服務(wù)器二者之間的對(duì)話快捷鍵:ctrl+G Go to Line 跳到某一行跳到對(duì)應(yīng)的日志基準(zhǔn)測(cè)試:單用戶測(cè)試。3.4 1.7 1.8 1.6為了規(guī)

18、避第一次測(cè)試的不準(zhǔn)確性,則有兩種測(cè)試方法:(1) 設(shè)置循環(huán)5次(N次)Run-time Setting循環(huán)5次,或者持續(xù)運(yùn)行1分鐘。(取平均值)Run logic:循環(huán)次數(shù)-設(shè)置為5Pacing:兩次循環(huán)之間的步長值(時(shí)間間隔)-隨機(jī)值2-4秒Think time:ignore(忽略思考時(shí)間),因?yàn)閷?duì)結(jié)果沒什么影響Pacing:步長值,為了更真實(shí)的模擬環(huán)境(斷開連接,釋放資源),一般選隨機(jī)值基準(zhǔn)測(cè)試單用戶對(duì)服務(wù)器壓力不大,一般可以ignore think time。監(jiān)控資源:監(jiān)控服務(wù)器的資源客戶端的資源:自己隨時(shí)把握一下,不要成為測(cè)試的瓶頸即可。(2)持續(xù)運(yùn)行1分鐘當(dāng)duration和run_time setting中循環(huán)(run logic)都有值的話,duration的優(yōu)先級(jí)比較高【二者循環(huán)的位置都為action】Run logic:循環(huán)次數(shù)-設(shè)置為1Pacing:步長值,為了更真實(shí)的模擬環(huán)境(斷開連接,釋放資源),一般選隨機(jī)值基準(zhǔn)測(cè)試單用戶對(duì)服務(wù)器壓力不大,一般可以ignore th

溫馨提示

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

評(píng)論

0/150

提交評(píng)論