Muhammad Dhiauddin Mohamed Suffian正在馬來西亞科技大學(xué)攻讀(計算機科學(xué)的)軟件測試博士,并在馬來西亞的開放大學(xué)擔(dān)任講師。他是馬來西亞一家上市IT公司的解決方案測試經(jīng)理,且在此之前,他還曾是馬來西亞一家研發(fā)機構(gòu)測試部的高級工程師和測試團(tuán)隊隊長。他在軟件/系統(tǒng)開發(fā)和軟件測試/質(zhì)量保證領(lǐng)域有近7年的經(jīng)驗。有著在IT、汽車、銀行和研發(fā)公司的工作經(jīng)驗,他從各種項目中獲得了技術(shù)和管理技能。作為一名馬來西亞科技大學(xué)高級軟件工程中心(CASE )的實時軟件工程理學(xué)碩士研究生,他擁有各種專業(yè)證書,分別有六西格瑪綠帶認(rèn)證(Certified Six Sigma Green Belt),初級測試員( CTFL )認(rèn)證和高級測試員認(rèn)證–測試經(jīng)理( CTAL -TM )。他還很了解CMMI,測試過程和方法及軟件開發(fā)壽命周期( SDLC )。 他曾參與管理不同項目的不同測試策略、包括功能、性能、安全性、可用性和兼容性測試,系統(tǒng)測試和系統(tǒng)集成測試水平都有。他對軟件工程和軟件測試領(lǐng)域感興趣,特別是性能測試和測試管理。 |
Fairul Rizal Fahrurazi是MIMOS Berhad公司一名產(chǎn)品質(zhì)量與可靠性工程的測試工程經(jīng)理,馬來西亞的合作伙伴通過經(jīng)濟(jì)增長的專利技術(shù)在開拓新ICT市場創(chuàng)造上的一位。 Fairul持有紅帽認(rèn)證系統(tǒng)管理員(RHCSA)證書,六西格瑪綠帶認(rèn)證(Certified Six Sigma Green Belt)和流程經(jīng)理資格認(rèn)證。 Fairul監(jiān)督MIMOS中所有項目的性能和測試自動化,還努力通過管理應(yīng)用程序生命周期管理(ALM)工具來減少周期時間。Fairul熱衷于通過設(shè)計和構(gòu)建一個智能的軟件工程系統(tǒng)以便能更好,更快地交付高質(zhì)量產(chǎn)品。 |
介紹
任何特定軟件即將發(fā)布并投入生產(chǎn)期間,其性能一直備受關(guān)注。盡管一軟件已被用戶證明如預(yù)期的正常運作(通過功能測試后),故障仍可能會發(fā)生,尤其當(dāng)它無法承擔(dān)用戶生成的大量loads, volumes, transactions等時。評估軟件的質(zhì)量和適用性時,很少認(rèn)真考慮這種非功能需求。因此,謹(jǐn)慎和周密的策劃分析和性能測試用例設(shè)計是防止軟件性能故障的關(guān)鍵。有了正確的性能場景,可以系統(tǒng)地進(jìn)行測試執(zhí)行和軟件性能評估,從而可以對性能改進(jìn)做出詳細(xì)的分析和建議。
本文通過展示一個實際的案例研究(關(guān)于如何為一個基于云的系統(tǒng)規(guī)劃和設(shè)計性能測試用例)解決了這個問題。性能測試結(jié)果對性能測試執(zhí)行的分析,被證為測試用例設(shè)計的有效性的證據(jù)。
關(guān)于被測的基于云的系統(tǒng)的概述
開發(fā)被測系統(tǒng)的目的是:通過(初是上網(wǎng)本上的)移動設(shè)備上的統(tǒng)一智能平臺為大眾提供各種在線服務(wù)。
該系統(tǒng)主要包括幾個子系統(tǒng):安裝在上網(wǎng)本上的客戶端系統(tǒng),智能服務(wù)門戶,位置感知服務(wù),內(nèi)容整合服務(wù),以及承載所有在線服務(wù)系統(tǒng)的云或虛擬平臺。
圖1.被測系統(tǒng)的邏輯結(jié)構(gòu)
客戶端系統(tǒng)是使用Java語言開發(fā),Java網(wǎng)絡(luò)啟動協(xié)議( JNLP )執(zhí)行的。為了獲取所需在線服務(wù),客戶端系統(tǒng)到智能服務(wù)門戶網(wǎng)提出服務(wù)請求。存儲所有服務(wù)的門戶網(wǎng)還結(jié)合了內(nèi)容整合服務(wù)和位置感知服務(wù)。所有這些使得合適的內(nèi)容根據(jù)所請求的服務(wù)被推送到客戶端系統(tǒng)的終用戶那兒。除此之外,門戶網(wǎng)站還能夠簡介并結(jié)合適合服務(wù)的相關(guān)內(nèi)容。另一方面,多個虛擬機上的云平臺承載了所有子系統(tǒng)(智能服務(wù)門戶網(wǎng)站,內(nèi)容整合,以及位置感知),可以運行虛擬機實例并提供虛擬機負(fù)載的可擴(kuò)展性。
該系統(tǒng)的邏輯結(jié)構(gòu)如圖1所示。從部署的角度去看,圖2展示了整個系統(tǒng)的操作環(huán)境。
根據(jù)這兩個圖,很明顯本系統(tǒng)的性能測試需要覆蓋終端用戶場景及服務(wù)器場景。
這是因為一個成功的服務(wù)器性能測試并不能保證在客戶端運用該系統(tǒng)時,終用戶也會同樣成功。
性能測試
這只是常用來衡量任何被測系統(tǒng)性能的一個概括。通常,我們設(shè)計并執(zhí)行一次性能測試以弄清系統(tǒng)是如何響應(yīng)特定load的,無論load有沒有被定義為許多并發(fā)用戶,volumes或 transactions。
如下表1描述了性能測試各個領(lǐng)域的重點。
表1.性能測試重點
上述重點保證了被測系統(tǒng)應(yīng)對用戶不斷增長的loads時是可延展的,且一旦它被發(fā)布并投入生產(chǎn)沒有任何意想不到的問題,長遠(yuǎn)來看還有助于提高終用戶的滿意度。這也將會使該系統(tǒng)比市場上的其它相似系統(tǒng)更具競爭優(yōu)勢。