軟件測試在軟件開發(fā)過程中的應(yīng)用的技術(shù)分析_第1頁
軟件測試在軟件開發(fā)過程中的應(yīng)用的技術(shù)分析_第2頁
軟件測試在軟件開發(fā)過程中的應(yīng)用的技術(shù)分析_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、軟件測試在軟件開發(fā)過程中的應(yīng)用的技術(shù)分析軟件測試是軟件開發(fā)工作的重要組成部分,因為軟件測試能及時發(fā)現(xiàn)軟件存在的問題,軟件開發(fā)工程師在次基礎(chǔ)上進行軟件調(diào)試,解決軟件運行時出現(xiàn)的問題,能顯著提高軟件開發(fā)效率,因此,軟件測試成為軟件開發(fā)工作不可或缺的重要步驟,深受軟件開發(fā)工程師的重視。1 軟件測試的分類及方法1.1 軟件測試的分類從整體上來看軟件測試由靜態(tài)測試與動態(tài)測試之分,其中動態(tài)測試包括單元測試、集成測試、確認測試以及系統(tǒng)測試等。各種測試均能不同程度的發(fā)現(xiàn)軟件開發(fā)過程中存在的問題,下面對不同測試方法逐一進行介紹。1)靜態(tài)測試。所謂靜態(tài)測試指不實際運行軟件,而是對軟件代碼、測試用例、設(shè)計審查以及需

2、求分析等進行分析、檢查。其中認證、驗證以及確認是利用靜態(tài)方法測試軟件質(zhì)量利用率較高的方法。通過靜態(tài)測試可找出30%70%的軟件編碼以及邏輯錯誤,為后期軟件測試鋪平道路。2)動態(tài)測試。動態(tài)測試指通過設(shè)計測試用例模擬軟件使用者的行為,對比軟件實際運行效果與預(yù)期效果之間的差異,尋找軟件存在的問題,其和靜態(tài)測試的區(qū)別在于軟件是否運行。動態(tài)測試較靜態(tài)測試工作量大,包括系統(tǒng)、確認、集成、單元測試等,其中單元測試指檢驗與檢查軟件的最小單元模塊,目前主要使用白盒測試技術(shù)進行測試且可同時對多個模塊進行測試;集成測試指按照集成測試計劃,檢查軟件單位之間的接口是否正確;確認測試的目的在于檢查軟件是否滿足用戶需求,因

3、此,測試過程中需有用戶參與,當(dāng)前常使用黑盒測試方法;系統(tǒng)測試是軟件測試的重要內(nèi)容,是交付使用的最后一個環(huán)節(jié),需要對軟件運行的軟硬件環(huán)境、性能及功能進行測試。軟件開發(fā)過程中由黑盒測試工程師負責(zé)軟件系統(tǒng)的測試。1.2 軟件測試的方法軟件測試的方法包括白盒測試、黑盒測試以及綜合策略,其中白盒測試通過認真檢查軟件的過程性細節(jié),以發(fā)現(xiàn)軟件存在的問題。白盒測試的方法很多,其中邏輯覆蓋方法較為常見。利用該種方法測試時測試人員需比較熟悉軟件的內(nèi)部結(jié)構(gòu),以設(shè)計出合理的測試用例,實現(xiàn)分支、條件、執(zhí)行語句、條件組合、分支-條件代碼的覆蓋。黑盒測試的重點在于檢測軟件的功能,因此,不涉及軟件代碼的檢測。利用該方法能檢測

4、出白盒測試無法發(fā)現(xiàn)的問題,是白盒測試方法的互補。利用黑盒測試可及時發(fā)現(xiàn)軟件與數(shù)據(jù)庫連接、初始化或終止、軟件界面、性能等是否出現(xiàn)錯誤等。黑盒測試方法又分為錯誤推測法、等價類劃分法以及邊界值分析法,其中錯誤測試法適用于經(jīng)驗豐富的開發(fā)人員,即根據(jù)軟件開發(fā)過程中錯誤頻率較高的位置進行針對性的測試;對于窮盡的黑盒測試來講,測試程序時需要輸入所有無效與有效數(shù)據(jù),工作量非常大,并不可取。實際測試時通常輸入代表性較強的數(shù)據(jù),以減少測試勞動量,最大限度的發(fā)現(xiàn)軟件存在的問題。即將需要輸入的數(shù)據(jù)分成多個等價類,每個等價類中選擇代表性的數(shù)據(jù)進行測試;軟件開發(fā)過程中循環(huán)、數(shù)據(jù)結(jié)構(gòu)以及下標等容易出現(xiàn)問題,此時就需運用邊界

5、值分析法進行測試,通過采用針對性的測試用例完成測試;綜合策略指聯(lián)合多種測試方法進行測試,能彌補單一方法測試的缺陷,提高軟件測試效率。1.3 軟件測試過程由上文可知軟件測試過程由系統(tǒng)測試、確認測試、集成測試以及單元測試之分。經(jīng)過測試主要為了發(fā)現(xiàn)軟件開發(fā)過程出現(xiàn)的系統(tǒng)及功能錯誤,具體包含以下內(nèi)容:軟件開發(fā)前期未進行充分的調(diào)研或未完全理解相關(guān)要求,導(dǎo)致開發(fā)的軟件出現(xiàn)一些功能性錯誤;未將外部環(huán)境因素考慮在內(nèi),引發(fā)系統(tǒng)錯誤。例如,調(diào)用子程序出現(xiàn)錯誤、操作系統(tǒng)及數(shù)據(jù)庫接口出現(xiàn)錯誤等;靜態(tài)與動態(tài)數(shù)據(jù)定義混淆,數(shù)據(jù)結(jié)構(gòu)、算術(shù)運算以及程序定義出現(xiàn)偏差;編寫代碼時全局與局部變量未做明確區(qū)分,一些變量名和系統(tǒng)保留關(guān)

6、鍵字名相同,或粗心大意導(dǎo)致編寫的語法錯誤等。2 軟件測試在軟件開發(fā)中的應(yīng)用軟件測試貫穿軟件開發(fā)的整個過程,為保證軟件后期的正常運行奠定堅實的基礎(chǔ),因此,加強軟件測試應(yīng)用方面的研究,進而縮短軟件開發(fā)周期,提高軟件開發(fā)效率。1)應(yīng)用在軟件需求分析環(huán)節(jié)。對軟件進行需求分析,軟件測試人員需對工作量、軟件測試風(fēng)險認真的評估,仔細考慮軟件測試的可行性等,以確保軟件的開發(fā)周期、花費費用以及軟件功能滿足用戶需求。軟件測試人員通過分析需求的不同內(nèi)容,就出現(xiàn)的問題與用戶進行協(xié)商,為后期的軟件測試工作創(chuàng)造良好條件。2)應(yīng)用在軟件設(shè)計環(huán)節(jié)。軟件設(shè)計環(huán)節(jié)是軟件開發(fā)工作得以順利進行的重要保障,如軟件系統(tǒng)設(shè)計缺乏合理性,容

7、易引起軟件開發(fā)時邊界問題的出現(xiàn),導(dǎo)致軟件擴展性較弱,甚至軟件開發(fā)工作的失敗。軟件系統(tǒng)設(shè)計時測試人員不僅要掌握設(shè)計模型,對設(shè)計模型的風(fēng)險進行評估,而且還要進行測試計劃的編寫。另外,為保證測試設(shè)計的合理性與穩(wěn)定性,避免后期出現(xiàn)不必要的變更,測試人員工作時應(yīng)保證系統(tǒng)結(jié)構(gòu)質(zhì)量。針對具有特殊要求的業(yè)務(wù)可通過創(chuàng)建技術(shù)邊界實現(xiàn),以提高軟件系統(tǒng)的不可替代性及可持續(xù)性。除此之外,測試人員還應(yīng)熟悉和掌握軟件產(chǎn)品的運行環(huán)境,積極參與到軟件不同模塊、數(shù)據(jù)庫結(jié)構(gòu)等討論中,對軟件設(shè)計過程中存在的問題進行評估,重點把握測試環(huán)節(jié)存在的重點、難點環(huán)節(jié)。同時,還需掌握軟件產(chǎn)品設(shè)計的性能以及軟件不同模塊接口問題,為后期的測試工作奠

8、定堅實的基礎(chǔ)。3)應(yīng)用在軟件編寫環(huán)節(jié)。編寫軟件代碼時測試人員需參與到凍結(jié)報告、編寫測試用例以及單元測試工作之中,尤其應(yīng)將測試用例的編寫當(dāng)作重要工作來抓。一般情況下,對軟件單元功能的測試軟件開發(fā)人員可以完成,但自動化測試腳本、測試用例等仍需要測試人員提供支持,因此,測試人員應(yīng)按照軟件開發(fā)要求,切實做好軟件編寫環(huán)節(jié)上的測試工作。4)應(yīng)用在軟件測試環(huán)節(jié)。對軟件進行測試時,測試人員主要負責(zé)軟件質(zhì)量報告的發(fā)布、軟件缺陷的發(fā)現(xiàn)及檢查、測試用例的更新等工作,該環(huán)節(jié)是軟件測試應(yīng)用在軟件開發(fā)工作積極重要的環(huán)節(jié),涉及系統(tǒng)測試、確認測試以及集成測試等測試內(nèi)容,因此,測試時應(yīng)嚴格依據(jù)測試用例實施。通過上述測試后軟件能

9、實現(xiàn)基本的功能,不過針對一些特殊用例,還需根據(jù)實際情況進行自由測試,最大限度的發(fā)現(xiàn)軟件存在的缺陷。另外,為保證軟件正常運行,如沒有測試用例覆蓋新發(fā)現(xiàn)的缺陷時需及時更新測試用例。除此之外,還需跟蹤軟件缺陷,尤其對于開展的新項目而言,應(yīng)按照新報、確認、重現(xiàn)、修復(fù)、驗證、關(guān)閉缺陷等流程實施。5)應(yīng)用在軟件運行維護環(huán)節(jié)。軟件運行時測試人員主要負責(zé)測試用例的重新組合、解決客戶提出的問題、幫助客戶進行測試的驗收等工作,尤其幫助客戶驗收測試是重要工作,而解決客戶提出的問題為關(guān)鍵,因此測試人員對客戶提出的問題應(yīng)認真對待,即從客戶的角度出發(fā),了解其真正關(guān)心的問題。同時,認真分析前期測試未能檢查出軟件問題的原因。

10、另外,軟件運行維護階段,應(yīng)根據(jù)需要及時的更新、組織一些新的測試用例,以彌補未設(shè)計測試用例的出現(xiàn)的問題。綜上所述,軟件測試是軟件開發(fā)不可或缺的關(guān)鍵環(huán)節(jié),軟件測試人員應(yīng)根據(jù)軟件開發(fā)實際需要,切實做好不同環(huán)節(jié)的測試工作。例如,利用動態(tài)方法測試的同時,配合使用靜態(tài)測試方法,盡量通過測試找出軟件開發(fā)過程中存在的各種問題,在滿足軟件功能要求的基礎(chǔ)上,保證軟件工作的穩(wěn)定性。3 總結(jié)軟件測試能及時發(fā)現(xiàn)軟件自身存在的問題,對保證后期軟件穩(wěn)定的運行具有重要意義。為此,測試人員應(yīng)根據(jù)軟件的功能需求,不斷總結(jié)軟件測試經(jīng)驗,進而制定合理的軟件測試計劃,并采用高效的測試方法,提高軟件測試效率,在滿足客戶需求的前提下,確保軟件的最終質(zhì)量。參考文獻【1】王長利.軟件測試過程模

溫馨提示

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

評論

0/150

提交評論