軟件開發(fā)的性能測試與研究論文
隨著現(xiàn)代社會(huì)信息技術(shù)的發(fā)展,網(wǎng)絡(luò)技術(shù)已普遍融合到更多領(lǐng)域。軟件開發(fā)作為帶動(dòng)信息技術(shù)發(fā)展的主要?jiǎng)恿涫苋藗冴P(guān)注。隨之在開發(fā)過程中由于應(yīng)用系統(tǒng)存在一定的復(fù)雜性,在軟件開發(fā)系統(tǒng)性能的正常運(yùn)用也有一定難度。本文結(jié)合web軟件,結(jié)合性能測試,對(duì)軟件開發(fā)的性能進(jìn)行了測試和相對(duì)研究,以便在今后各領(lǐng)域中提高系統(tǒng)測試效率。
隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的普遍化,軟件性能的重要性也越來越明顯,軟件性能掌控著硬件配置的提升和改變。系統(tǒng)結(jié)構(gòu)由網(wǎng)絡(luò)、數(shù)據(jù)庫和服務(wù)器等多部分組成的,整個(gè)系統(tǒng)中的每個(gè)成員都有著不可替代的作用,其中任何一個(gè)環(huán)節(jié)出現(xiàn)問題都影響著整個(gè)系統(tǒng)的正常操作。因此,軟件開發(fā)的性能測試被列為重要問題。
1 軟件性能的理論認(rèn)識(shí)
軟件性能指的是軟件系統(tǒng)或部分應(yīng)用是否達(dá)到一定的要求,在實(shí)現(xiàn)的過程中是否具有良好的及時(shí)性。軟件的性能不僅包括系統(tǒng)的響應(yīng)時(shí)間還包括一些內(nèi)部因素和外部因素,內(nèi)部因素有軟件架構(gòu)、代碼、數(shù)據(jù)庫結(jié)構(gòu)等,而外部條件則包括用戶或其他一些工作人員操作內(nèi)容等。目前為止軟件性能是否達(dá)標(biāo)主要表現(xiàn)在操作的響應(yīng)時(shí)間,如果用戶通過按鈕發(fā)出相對(duì)應(yīng)的程序指令,從開始的按鈕操作到最后反應(yīng)出相對(duì)結(jié)果,中間反應(yīng)的過程就是用戶對(duì)軟件性能是否得到肯定的直觀現(xiàn)象。當(dāng)然軟件性能的體現(xiàn)還通過對(duì)CPU和內(nèi)存的利用率、數(shù)據(jù)的狀況、系統(tǒng)的可擴(kuò)展性等,有了這些對(duì)軟件性能的認(rèn)識(shí),我們就能更好的提高系統(tǒng)性能。
2 軟件性能測試方法
在軟件性能測試過程中,如果掌握的方法不恰當(dāng)就會(huì)變成很隨意的測試行為,沒有實(shí)際的作用,更達(dá)不到預(yù)期想要的效果,因此在測試過程中必須注意一定的方式方法。測試過程主要包括洞悉測試目的、確定性能指標(biāo),規(guī)劃測試策略等環(huán)節(jié),測試的充分準(zhǔn)備和結(jié)果的有效性直接影響著性能測試需求分析的好壞。因此軟件性能測試目的主要驗(yàn)證軟件性能在軟件開發(fā)合同、預(yù)定的設(shè)計(jì)目標(biāo)、用戶現(xiàn)在或未來的應(yīng)用需求等方面是否達(dá)到明確性的指標(biāo);在無明確性能標(biāo)準(zhǔn)的情況下,通過對(duì)軟件支持的最大用戶數(shù)量,各種差異環(huán)境下的變化和最低正常運(yùn)行需要的支持情況,最佳條件下能做到的用戶最大數(shù)據(jù)量等,也可以說是是否符合軟件性能的驗(yàn)證。這種方法主要就是在性能測試中通過分析性能缺陷問題找出軟件性能缺陷的原因,方便工作人員能提高軟件的性能優(yōu)化,這將使得測試工作的步伐更邁出了一大步。
2.1 檢查式測試與度量式測試的不同及對(duì)比
目前條件下,固定的軟件項(xiàng)目本身具有不同的系統(tǒng)特征和特性,測試人員為顧及多方位的考慮,選擇測試方法也多種多樣,例如:黑白盒測試、單元測試、功能測試、壓力、安全及兼容性等方面的測試。在逼真、獨(dú)立、無毒軟件、硬件和網(wǎng)絡(luò)環(huán)境下,所使用的最常見的測試方法是檢查式測試與度量式測試。檢查式測試一般包括跟蹤客戶需求、了解測試人員的測試目的、測試前的準(zhǔn)備工作和測試過程中所用到的數(shù)據(jù)等,測試用例的最終目的就是驗(yàn)證軟件系統(tǒng)的某一項(xiàng)功能是否順利實(shí)現(xiàn)和實(shí)施。這種測試用例無法預(yù)知最終結(jié)果,也無法確定能否順利實(shí)施下去,直接由最終的測試結(jié)果來發(fā)言,通過或者淘汰。這種先檢驗(yàn)性的測試統(tǒng)稱為檢查式測驗(yàn),概括的范圍也較廣,如單元測試和功能測試都包括在檢查式測驗(yàn)中。度量式測驗(yàn)與檢查式測驗(yàn)不同,是通過針對(duì)軟件的一項(xiàng)特定功能基于周邊多項(xiàng)指標(biāo)數(shù)據(jù)量化而產(chǎn)生,在系統(tǒng)測試和使用階段的數(shù)據(jù)參考,度量式測試需要在原有數(shù)據(jù)參考的情況下結(jié)合實(shí)際情況進(jìn)行下一步的分析和決策,而不是檢測式的那種Yes OR No的情況,這種集相關(guān)數(shù)據(jù)的方式比檢查式測試更具有穩(wěn)定性,對(duì)最后得出結(jié)論的總體質(zhì)量和細(xì)節(jié)有更高的研究價(jià)值,這種度量式測試多發(fā)生在功能測試和兼容性測試中。
平常的測試活動(dòng)中,檢查式測試的優(yōu)點(diǎn)是:通過測試得到相應(yīng)結(jié)果顯而易見,相對(duì)其它測試方法而言,測試效果更加可靠、高效,而且簡單方便易于管理;其缺點(diǎn)是隨機(jī)性較強(qiáng),測試比較單薄,也有陷入慣性思維的可能性。度量式測試以固定的參考數(shù)據(jù)為根據(jù),接觸觀點(diǎn)較多,善于靈活變通,在相對(duì)基礎(chǔ)上也比較穩(wěn)定、可靠,缺點(diǎn)是需要將多種參考數(shù)據(jù)的觀點(diǎn)都考慮進(jìn)去,從多方位思考問題,需要的資源較多,測試過程肯定會(huì)比較復(fù)雜化,在對(duì)軟件質(zhì)量提高過程中并不是直接關(guān)系。
2.2 軟件開發(fā)性能測試的重要性
很多軟件性能測試中用檢查式的測試方式雖然有部分階段相對(duì)穩(wěn)定,但也有大部分的缺陷問題存在,因此根據(jù)度量式測試方法的穩(wěn)定、可靠、豐富靈活的特點(diǎn),需要在度量式測試上加大力度,人們往往一直追尋用多種方法嘗試,但其中所投入的人力、物力、精力也有一定的壓迫感,雖然檢查式測試具有直接、高效的優(yōu)點(diǎn),而且也受到一部分專業(yè)人士的青睞,占用一定的主體地位,但是度量式測試也只是在后期運(yùn)用了幾次。從目前的現(xiàn)狀來看,確實(shí)檢查式測試比度量式測試突出重要功能。但從長遠(yuǎn)過程來看就會(huì)出現(xiàn)很多問題,遇到緊急重大任務(wù)時(shí),我們首先用的解決方案應(yīng)該首選度量式測試,所以重新正視度量式的重要性很有必要。
2.3 確定測試的戰(zhàn)略性措施
了解測試目的和性能指標(biāo)后,應(yīng)對(duì)相應(yīng)用戶的需求給于相對(duì)應(yīng)的解決對(duì)策,也就是用什么樣的方式方法幫助用戶實(shí)現(xiàn)最終測試目的。相對(duì)軟件系統(tǒng)而言,當(dāng)測試要素中出現(xiàn)變化,其本身性能也會(huì)隨之發(fā)生改變,根據(jù)測試要素的變化進(jìn)行結(jié)合,可以實(shí)現(xiàn)不同的測試目標(biāo),通過在一種條件變化,其余不變的情況下來驗(yàn)證所能支持用戶性能的最大數(shù)量。負(fù)載測試、壓力測試和疲勞強(qiáng)度測試等證明確定測試措施,需要先確定測試要素。測試需求與測試要素也緊密相關(guān),有些測試需求中有確切的測試要素,有些則沒有,需要通過相關(guān)情況調(diào)查來獲取測試要素。其中包括:并發(fā)用戶數(shù)、數(shù)據(jù)量、用戶分布與被測功能。在沒確定測試要素的情況下,通過分析軟件特點(diǎn)來找出答案。
3 軟件開發(fā)性能的測試研究
軟件性能是一種指標(biāo),是指軟件系統(tǒng)對(duì)于及時(shí)性合理要求的符合程度。是由響應(yīng)時(shí)間和吞吐量來衡量的,響應(yīng)時(shí)間是指用戶提出部分請求而系統(tǒng)給出響應(yīng)需要的時(shí)間,對(duì)于軟件系統(tǒng)而言,不同的用戶對(duì)同一層面的關(guān)注也有較大差別,軟件用戶受關(guān)注的是回應(yīng)效率,即響應(yīng)速度。簡單而言就是用戶點(diǎn)擊其中一個(gè)按鈕或發(fā)送軟件相關(guān)請求指令時(shí)等待回復(fù)響應(yīng)結(jié)果的等待時(shí)間。軟件性能如果從管理員的角度來看,在包括響應(yīng)時(shí)間的同時(shí)還有系統(tǒng)動(dòng)態(tài)信息,如:內(nèi)存大小的可利用率、數(shù)據(jù)庫的狀況以及CPU的利用率、系統(tǒng)擴(kuò)展性的范圍、支持用戶的最大數(shù)量,業(yè)務(wù)處理的最大量等等這些問題,最終直接關(guān)系到提高系統(tǒng)性能的問題上。從軟件開發(fā)的方位看軟件性能,包括用戶、系統(tǒng)管理員關(guān)注的'相關(guān)內(nèi)容,也包括數(shù)據(jù)庫結(jié)構(gòu)、軟件架構(gòu)、代碼等對(duì)軟件性能所產(chǎn)生的影響問題,通過這些因素改善軟件性能。不同層面的用戶對(duì)軟件性能測試也有不同層面的理解。用戶層面、系統(tǒng)仔理層面,還有開發(fā)人員角度等方面都會(huì)有不同的見解,因此還需進(jìn)一步分析引起軟件開發(fā)性能問題的根源,從而實(shí)現(xiàn)軟件性能開發(fā)的迅速提高。
度量式測試可以發(fā)現(xiàn)隱患問題,而檢查式測試卻只能找到表面問題。檢查式測試本身標(biāo)準(zhǔn)明確,正確或錯(cuò)誤明確標(biāo)識(shí),顯而易見,且一般一個(gè)功能只檢測一次。度量式測試客觀的記錄軟件狀況,比如:軟件“死機(jī)”是個(gè)必然存在的情況,大多數(shù)情況下都會(huì)有所影響,且有一定后續(xù)不良反應(yīng)。有種數(shù)據(jù)就是針對(duì)死機(jī)問題專門收集的各種類似情況,其中包括軟件外部偏離受損、非自愿操作、死鎖、功能受損的顯現(xiàn),根據(jù)死機(jī)原因提供相應(yīng)參考資料,找出死機(jī)問題的原因,制定對(duì)應(yīng)的解決方案,這類的可靠性運(yùn)用在軟件中較少,但是在其他工業(yè)運(yùn)用中比較常見。另外一種度量式測試專門解決非一般性的問題,多出現(xiàn)在 測試階段,找出問題的同時(shí)針對(duì)軟件本身重新調(diào)整開發(fā)設(shè)計(jì);ヂ(lián)網(wǎng)的一些軟件操作習(xí)慣和方式多數(shù)都是互動(dòng)操作,對(duì)之前的設(shè)計(jì)加以改進(jìn),并研究出新的軟件開發(fā)性能需求。度量式測試的前期需要的數(shù)據(jù)不用太靈活的判斷分析,可調(diào)整相關(guān)資源,使之得到最大化的利用,所以合適的度量式測試會(huì)使軟件項(xiàng)目的測試效果更高、更好,使軟件開發(fā)的性能能上升到一個(gè)新的高度。
4 結(jié)語
總體來講,檢查式和度量式具有本身的優(yōu)點(diǎn),同時(shí)也存在缺點(diǎn)。項(xiàng)目中不同的測試需求、不同的資源開發(fā)和不同的測試人員都可以選擇相應(yīng)的測試方法進(jìn)行測試,善于合理運(yùn)用檢查式測試和度量式測試這兩種方法,利益結(jié)合,避免隱患缺陷,將迅速提高軟件測試的高效率。正確利用軟件性能測試,必須知道性能測試的內(nèi)涵,站在不同的角度方位去想問題,了解社會(huì)發(fā)展趨勢,熟悉目前流行的軟件性能測試方法,合理掌握過程,注意將檢查式測量和度量式測量結(jié)合運(yùn)用,收集相關(guān)數(shù)據(jù)種類和方式,以提高軟件的性能測試效率成為未來研究的重點(diǎn)思路。
作者簡介
許國梁(1980-)男,貴州省貴陽市人。現(xiàn)為貴州交通職業(yè)技術(shù)學(xué)院講師。研究方向?yàn)檐浖O(shè)計(jì)、軟件開發(fā)。
【軟件開發(fā)的性能測試與研究論文】相關(guān)文章:
論文:高性能虛擬技術(shù)的研究07-10
再生混凝土性能研究與評(píng)述論文10-21
青島地區(qū)農(nóng)村住宅抗震性能研究論文10-22
專業(yè)學(xué)生軟件開發(fā)能力培養(yǎng)研究論文11-20