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