性能效率,作為衡量軟件質(zhì)量的關(guān)鍵指標(biāo),涉及時(shí)間特性、資源利用性、容量等多個(gè)方面。
性能效率,也就是我們常說的性能測試
性能效率測試結(jié)果示例:
測試需求項(xiàng) | 測試需求項(xiàng) | 用例編號(hào) | 性能指標(biāo)要求 |
性能效率 | 時(shí)間特性 | P-001 | 系統(tǒng)在單用戶登錄響應(yīng)時(shí)間在1/3/5秒以內(nèi)。(一般來說,用戶對(duì)響應(yīng)時(shí)間的要求是越快越好。根據(jù)一些普遍的標(biāo)準(zhǔn),如果系統(tǒng)能在1秒以內(nèi)對(duì)用戶請(qǐng)求作出響應(yīng),用戶會(huì)感覺系統(tǒng)的響應(yīng)很快,體驗(yàn)非常好;如果響應(yīng)時(shí)間在1-3秒之間,用戶可以接受;如果響應(yīng)時(shí)間在3-5秒之間,用戶可能會(huì)感覺系統(tǒng)響應(yīng)速度有些慢,但仍然可以接受;而如果響應(yīng)時(shí)間超過5秒,用戶可能會(huì)認(rèn)為這是一個(gè)失敗的體驗(yàn),選擇離開或重新發(fā)起請(qǐng)求。) |
P-002 | 系統(tǒng)在單用戶下執(zhí)行XXX業(yè)務(wù)響應(yīng)時(shí)間在1/3/5秒以內(nèi)。(根據(jù)需要測試的業(yè)務(wù)或者招標(biāo)文件填寫) | ||
P-003 | 系統(tǒng)在多少用戶下執(zhí)行XXX業(yè)務(wù)響應(yīng)時(shí)間在1/3/5秒以內(nèi)。(根據(jù)招標(biāo)文件判定具體用戶數(shù)用戶,100/200/300,) | ||
P-004 | 系統(tǒng)在多少用戶下執(zhí)行XXX業(yè)務(wù),TPS(吞吐率)達(dá)到多少。(根據(jù)招標(biāo)文件判定具體用戶數(shù)用戶,部分需求只談及TPS到達(dá)多少,不涉及多少用戶數(shù)。) | ||
容量特性 | P-005 | 系統(tǒng)支持XXX用戶數(shù)并發(fā)進(jìn)行XXX操作。(系統(tǒng)支持多少用戶數(shù)進(jìn)行什么操作,事務(wù)通過率大于99%判定為通過) | |
P-006 | 系統(tǒng)交易吞吐量(單位時(shí)間內(nèi)處理請(qǐng)求的數(shù)量)達(dá)到XXX。 | ||
P-007 | 數(shù)據(jù)容量。(系統(tǒng)內(nèi)存在多少用戶) | ||
P-008 | 系統(tǒng)QPS(每秒查詢率,即系統(tǒng)每秒響應(yīng)的查詢次數(shù),主要針對(duì)查詢服務(wù)性能指標(biāo))達(dá)到XXX。 | ||
資源特性 | P-009 | 系統(tǒng)在xxx用戶數(shù)并發(fā)時(shí),CPU、內(nèi)存使用率不超過75%。(具體值指根據(jù)招標(biāo)文件等) | |
P-0010 | 系統(tǒng)在xxx用戶數(shù)并發(fā)時(shí),磁盤讀寫達(dá)到多少KB/S。 | ||
穩(wěn)定性 | P-0011 | 系統(tǒng)持續(xù)運(yùn)行一段時(shí)間,測試系統(tǒng)在這種條件下是否能夠穩(wěn)定運(yùn)行的程度。(判斷是否穩(wěn)定,根據(jù)事務(wù)通過率是否大于99%為依據(jù)。) | |
依從性 | P-0012 | 產(chǎn)品或系統(tǒng)遵循與性能效率相關(guān)的標(biāo)準(zhǔn)、約定或法規(guī)以及類似規(guī)定的程度。 |
一、性能效率的子特性
1. 時(shí)間特性:時(shí)間特性主要關(guān)注軟件功能的響應(yīng)時(shí)間、處理時(shí)間和吞吐率。響應(yīng)時(shí)間是指用戶從發(fā)起請(qǐng)求到接收到處理結(jié)果所經(jīng)歷的時(shí)間,處理時(shí)間是服務(wù)器端處理請(qǐng)求的時(shí)間,而吞吐率則反映了單位時(shí)間內(nèi)系統(tǒng)處理的客戶請(qǐng)求數(shù)量。這些指標(biāo)共同構(gòu)成了時(shí)間特性的重要組成部分,對(duì)用戶體驗(yàn)和系統(tǒng)性能具有重要影響。
2. 資源利用性:資源利用性測試旨在評(píng)估軟件在執(zhí)行其功能時(shí),所使用資源數(shù)量和類型的滿足程度。在服務(wù)器端,資源利用率主要體現(xiàn)在CPU利用率、內(nèi)存占用率、磁盤I/O、帶寬等指標(biāo)上。過高的資源利用率可能導(dǎo)致系統(tǒng)性能瓶頸,而過低的資源利用率則可能造成資源浪費(fèi)。
3. 容量:容量測試用于評(píng)估軟件產(chǎn)品或系統(tǒng)參數(shù)的最大限量滿足需求的程度。這包括最大用戶并發(fā)數(shù)、系統(tǒng)能夠處理的最大文件長度、數(shù)據(jù)庫能夠處理的最大數(shù)據(jù)庫記錄數(shù)等。通過容量測試,我們可以確定軟件在給定時(shí)間內(nèi)能夠持續(xù)處理的最大負(fù)載或工作量。
性能效率的測試方法:
總體方向 | 性能測試是通過站在用戶體驗(yàn)的角度,使用專業(yè)的負(fù)載生成設(shè)備,在性能模型的基礎(chǔ)上驗(yàn)證系統(tǒng)是否能夠達(dá)到用戶提出的性能指針,是否符合用戶文文件中對(duì)系統(tǒng)設(shè)計(jì)時(shí)的性能關(guān)注點(diǎn)。在系統(tǒng)正常交互量及峰值交互量的情況下發(fā)現(xiàn)系統(tǒng)中存在的性能瓶頸,優(yōu)化軟件,最后達(dá)到優(yōu)化系統(tǒng)的目的。 |
測試關(guān)注 | ? 時(shí)間特性:產(chǎn)品或系統(tǒng)執(zhí)行其功能時(shí),其響應(yīng)時(shí)間 、處理時(shí)間及吞吐率滿足需求的程度 。 ? 資源利用性:產(chǎn)品或系統(tǒng)執(zhí)行其功能時(shí),所使用資源數(shù)量和類型滿足需求的程度。 ? 穩(wěn)定性:系統(tǒng)持續(xù)運(yùn)行一段時(shí)間,測試系統(tǒng)在這種條件下是否能夠穩(wěn)定運(yùn)行的程度。 ? 容量:產(chǎn)品或系統(tǒng)參數(shù)的最大限量滿足需求的程度。 ? 依從性:產(chǎn)品或系統(tǒng)遵循與性能效率相關(guān)的標(biāo)準(zhǔn)、約定或法規(guī)以及類似規(guī)定的程度。 |
測試方法 | 基準(zhǔn)檢驗(yàn)方法:應(yīng)用單一的虛擬用戶依次訪問單一的典型業(yè)務(wù)點(diǎn),保證測試過程中沒有其他操作影響,從而獲得“基準(zhǔn)”的響應(yīng)時(shí)間、資源利用率、吞吐量的參考值及性能周期性的表現(xiàn)趨勢。 負(fù)載測試方法:是指在一定的軟件、硬件級(jí)網(wǎng)絡(luò)環(huán)境下,運(yùn)行一種或多種業(yè)務(wù),在不同虛擬使用者數(shù)量的情況下,測試服務(wù)器的性能指針是否在用戶的要求范圍內(nèi)。 穩(wěn)定性測試方法:通過給系統(tǒng)加載一定的業(yè)務(wù)壓力的情況下(如:資源在70%-90%的使用率)的情況下,讓系統(tǒng)持續(xù)運(yùn)行一段時(shí)間,測試系統(tǒng)在這種條件下是否能夠穩(wěn)定運(yùn)行。 |
測試步驟 | 1. 明確用戶對(duì)系統(tǒng)性能表現(xiàn)的真實(shí)需求,掌握系統(tǒng)在對(duì)外提供服務(wù)時(shí)預(yù)計(jì)承受的訪問指標(biāo)(如:用戶平均訪問量、用戶峰值訪問量、要求提供的響應(yīng)時(shí)間、事務(wù)吞吐量等)。 2. 依據(jù)系統(tǒng)設(shè)計(jì)文件,及用戶需求溝通,了解系統(tǒng)整體架構(gòu)、系統(tǒng)業(yè)務(wù)流程、系統(tǒng)拓?fù)?、系統(tǒng)數(shù)據(jù)流向等技術(shù)信息,并對(duì)其進(jìn)行基礎(chǔ)分析,初步定為系統(tǒng)中性能瓶頸點(diǎn)。 3. 創(chuàng)建性能測試模型,性能測試需要針對(duì)一定的前提條件,某種性能表現(xiàn)與方方面面的前提條件息息相關(guān),性能測試模型即為通過分析測試需求及系統(tǒng)分析創(chuàng)建的有助于限定性能測試結(jié)果的約束性條件。 4. 依據(jù)測試方法開發(fā)性能測試用例,并開發(fā)性能測試場景及腳本,依次執(zhí)行基準(zhǔn)檢驗(yàn)、負(fù)載測試及穩(wěn)定性,記錄相關(guān)性能測試指針及資源利用情況。 |
二、性能效率的依存性
性能效率的依存性主要關(guān)注軟件產(chǎn)品或系統(tǒng)遵循與性能效率相關(guān)的標(biāo)準(zhǔn)、約定或法規(guī)以及類似規(guī)定的程度。在產(chǎn)品說明書中,通常會(huì)提及與性能效率相關(guān)的標(biāo)準(zhǔn)、約定或法規(guī)要求。測試人員需要驗(yàn)證軟件是否符合這些要求,以確保產(chǎn)品的合規(guī)性和穩(wěn)定性。
三、性能測試中常見的問題及改進(jìn)策略
在性能測試過程中,我們經(jīng)常會(huì)遇到一些問題導(dǎo)致測試效率低下。例如,在項(xiàng)目預(yù)期時(shí)間內(nèi)突然接手其他測試組的項(xiàng)目,導(dǎo)致測試延期;對(duì)于項(xiàng)目組而言相對(duì)成熟的功能,卻對(duì)測試人員來說是新的東西,評(píng)估時(shí)不考慮測試人員問題;針對(duì)已知的問題重復(fù)又重復(fù)的咨詢、確認(rèn)、溝通,導(dǎo)致消耗大量時(shí)間等。
為了改進(jìn)這些問題,我們可以采取以下策略:首先,建立完善的文檔管理系統(tǒng),確保測試人員能夠迅速了解項(xiàng)目背景和功能需求;其次,加強(qiáng)測試人員之間的溝通與協(xié)作,共同解決問題并提高效率;最后,定期進(jìn)行性能測試培訓(xùn),提升測試人員的專業(yè)素質(zhì)和技能水平。
-
駐場測試駐場測試指根據(jù)客戶企業(yè)用人需求,將專業(yè)人員派遣到客戶現(xiàn)場辦公的一種服務(wù)方式。人員具有很好的專業(yè)性和適應(yīng)力,更有豐富的項(xiàng)目經(jīng)驗(yàn),可以為公司提供最專業(yè)最合適的服務(wù),提升企業(yè)核心競爭力,降低企業(yè)用人成本支出,減少企業(yè)正式員工的雇傭風(fēng)險(xiǎn),應(yīng)企業(yè)的需求,可提供企業(yè)中不同類型、不同層次的用人需求,提供測試工程師人才外包服務(wù),實(shí)現(xiàn)資源共享、協(xié)同開發(fā)、人才整合,企業(yè)用人不養(yǎng)人。2024-03-12
-
確認(rèn)測試確認(rèn)測試(Validation Testing)是對(duì)已經(jīng)通過組合測試并存在于系統(tǒng)目標(biāo)設(shè)備介質(zhì)上的軟件進(jìn)行的測試。這種測試的主要目的是驗(yàn)證軟件是否滿足“軟件需求說明書”中規(guī)定的全部功能和性能要求,以及驗(yàn)證軟件的有效性。確認(rèn)測試通常是由一個(gè)獨(dú)立的組織按照“確認(rèn)測試計(jì)劃”進(jìn)行,測試工作需要從用戶的角度出發(fā)。2024-03-12
-
集成測試軟件集成測試是指在軟件開發(fā)過程中,將各個(gè)模塊、組件或系統(tǒng)組件集成在一起,通過測試來評(píng)估它們是否能夠協(xié)同工作,以滿足設(shè)計(jì)要求的過程。這一過程旨在發(fā)現(xiàn)集成過程中可能出現(xiàn)的問題,如接口錯(cuò)誤、數(shù)據(jù)傳遞錯(cuò)誤等,以確保整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。2024-03-12