南京工業(yè)大學(xué)軟件質(zhì)量與測試期末復(fù)習(xí)(概念篇)_第1頁
南京工業(yè)大學(xué)軟件質(zhì)量與測試期末復(fù)習(xí)(概念篇)_第2頁
南京工業(yè)大學(xué)軟件質(zhì)量與測試期末復(fù)習(xí)(概念篇)_第3頁
南京工業(yè)大學(xué)軟件質(zhì)量與測試期末復(fù)習(xí)(概念篇)_第4頁
南京工業(yè)大學(xué)軟件質(zhì)量與測試期末復(fù)習(xí)(概念篇)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、南京工業(yè)大學(xué)計算機科學(xué)與技術(shù)學(xué)院 軟件質(zhì)量保證與測試期末復(fù)習(xí)整理(概念篇) Made By 李俊軟件質(zhì)量保證與測試 期末復(fù)習(xí)(概念篇)1. 軟件質(zhì)量:(1) IEEE關(guān)于軟件質(zhì)量的定義。軟件質(zhì)量是:² 系統(tǒng)、部件或者過程滿足規(guī)定需求的程度。² 系統(tǒng)、部件或者過程滿足顧客或者用戶需要或期望的程度。(2) ANSI關(guān)于軟件質(zhì)量的定義。具體包括:² 軟件產(chǎn)品中能滿足用戶給定需求的全部特性的集合。² 軟件具有所期望的各種屬性組合的程度。² 用戶主觀得出的軟件是否滿足其綜合期望的程度² 決定所用軟件在使用中能將滿足其綜合期望程度的軟件合成特性。

2、2. 軟件質(zhì)量保證(SQA):(1) 一種有計劃的,系統(tǒng)化的行動模式,它是為項目或者產(chǎn)品符合己有技術(shù)需求提供充分信任所必需的。 (2) 設(shè)計用來評價開収或者制造產(chǎn)品的過程的一組活動,與質(zhì)量控制有區(qū)別。3. 軟件測試:軟件測試是使用人工或自動手段來運行或測定某個系統(tǒng)的過程,檢測它是否滿足規(guī)定的需求或者弄清預(yù)期結(jié)果與實際結(jié)果的差別。4. 軟件測試的方法:(1) 靜態(tài)方法和動態(tài)方法(2) 黑盒測試、白盒測試和灰盒測試(3) 基于軟件開収階段的測試方法 ² 需求測試² 單元測試² 集成測試² 性能測試² 壓力測試² 容量測試² 配置

3、測試² 回歸測試² 安裝測試² 安全性測5. 軟件測試的目的:(1)證明:獲取系統(tǒng)在可接受風(fēng)險范圍內(nèi)可用的信心;嘗試在非正常情況和條件下的功能和特性;保證一個工作產(chǎn)品是完整的并且可用或可被集成。 (2)檢測:發(fā)現(xiàn)缺陷、錯誤和系統(tǒng)不足;定義系統(tǒng)的能力和局限性;提供組件、工作產(chǎn)品和系統(tǒng)的質(zhì)量信息。 (3)預(yù)防:澄清系統(tǒng)的規(guī)格和性能;提供預(yù)防或減少可能制造錯誤的信息;在過程中盡早檢測錯誤;確認(rèn)問題和風(fēng)險,并且提前確認(rèn)解決這些問題和風(fēng)險的途徑。6. 測試過程中應(yīng)注意和遵循的原則:(1)測試不是為了證明程序的正確性,而是為了證明程序不能工作。(2)測試應(yīng)當(dāng)有重點。(3)事先

4、定義好產(chǎn)品的質(zhì)量標(biāo)準(zhǔn)。(4)軟件項目一啟動,軟件測試也就開始,而不是等到程序?qū)懲瓴砰_始進(jìn)行測試。(5)窮舉測試是不可能的。(6)第三方進(jìn)行測試會更客觀,更有效。(7)軟件測試計劃是做好軟件測試工作的前提。(8)測試用例是設(shè)計出來的,不是寫出來的。(9)對發(fā)現(xiàn)錯誤較多的程序段,應(yīng)進(jìn)行更深入的測試。(10)重視文檔,妥善保存一切測試過程文檔。 7. 測試用例:測試用例是指對一項特定的軟件產(chǎn)品進(jìn)行測試任務(wù)的描述,體現(xiàn)測試方案、方法、技術(shù)和策略。其內(nèi)容包括測試目標(biāo)、測試環(huán)境、輸入數(shù)據(jù)、測試步驟、預(yù)期結(jié)果、測試腳本等,最終形成文檔。簡單的認(rèn)為,測試用例是為某個特殊目標(biāo)而編制的一組測試輸入、執(zhí)行條件以及預(yù)

5、期結(jié)果,用于核實是否滿足某個特定軟件需求。8. 軟件測試員應(yīng)該具備的素質(zhì):² 軟件測試員是探索者;² 軟件測試員是敀障排除員;² 軟件測試員不放過蛛絲馬跡;² 軟件測試員具有創(chuàng)造性;² 軟件測試員是追求完美者;² 軟件測試員判斷準(zhǔn)確;² 軟件測試員注重策略和外交;² 軟件測試員善于說服。9. 黑盒測試:黑盒測試是在程序接口進(jìn)行的測試,它只檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)并產(chǎn)生正確的輸出信息,程序運行過程中能否保持外部信息的完整性。10. 白盒測試:白盒測試把測試對象看作一

6、個透明的盒子,它允許測試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,設(shè)計或選擇測試用例,對程序所有邏輯路徑進(jìn)行測試。通過在不同點檢查程序的狀態(tài),確定實際的狀態(tài)是否與預(yù)期的狀態(tài)一致。(1) 邏輯覆蓋a) 語句覆蓋:在測試時首先設(shè)計若干個測試用例,然后運行被測程序,使程序中的每個可執(zhí)行語句至少執(zhí)行一次。b) 判定覆蓋:設(shè)計若干個測試用例,運行被測程序,使得程序中每個判斷的取真分支和取假分支至少經(jīng)歷一次,即判斷的真假值均曾被滿足。c) 條件覆蓋:設(shè)計若干測試用例,執(zhí)行被測試程序以后,要使每個判斷中每個條件的可能取值至少滿足一次。d) 判定-條件覆蓋:設(shè)計足夠的測試用例,使得判斷中每個條件的所有可能至少e)

7、 路徑覆蓋:設(shè)計足夠多的測試用例,要求覆蓋程序中所有可能的路徑。(2) 基本路徑第一步:畫出控制流圖第二步:計算圈復(fù)雜度 流圖中區(qū)域的數(shù)量對應(yīng)于環(huán)形的復(fù)雜性; V(G)=E-N+2,E是流圖中邊的數(shù)量,N是流圖中結(jié)點的數(shù)量; V(G)=P+1,P是流圖G中判定結(jié)點的數(shù)量。第三步:導(dǎo)出測試用例第四步:準(zhǔn)備測試用例11. 單元測試(1) 定義:單元測試是指對軟件中的最小可測試單元或基本組成單元進(jìn)行檢查和驗證。(2) 測試內(nèi)容: 接口測試 局部數(shù)據(jù)結(jié)構(gòu)測試 重要執(zhí)行路徑測試 錯誤處理測試 邊界條件測試(3) 測試方法: 驅(qū)動模塊:用來模擬被測模塊的上級調(diào)用模塊,功能要比真正的上級模塊簡單得多,僅僅是

8、接受測試數(shù)據(jù),并向被測模塊傳送測試數(shù)據(jù),啟動被測模塊,回收并輸出測試結(jié)果。 樁模塊:用來模擬被測模塊在執(zhí)行過程中所要調(diào)用的模塊。它接受被測模塊輸出的數(shù)據(jù)并完成它所指派的任務(wù)。12. 集成測試(1) 定義:集成測試是在單元測試的基礎(chǔ)上,將所有已通過單元測試的模塊按照概要設(shè)計的要求組裝為子系統(tǒng)或系統(tǒng)。進(jìn)行集成測試,目的是確保各單元模塊組合在一起后能夠按既定意圖協(xié)作運行,并確保增量的行為正確。這里需要強調(diào)的是,不經(jīng)過單元測試的模塊是不應(yīng)進(jìn)行集成測試的,否則將對集成測試的效果和效率帶來巨大的影響。(2) 測試內(nèi)容: 將各模塊連接起來時,穿越模塊接口的數(shù)據(jù)是否會丟失。 各子功能組合起來能否達(dá)到預(yù)期要求的

9、父功能。 一個模塊的功能是否會對其他模塊的功能產(chǎn)生不利影響。 全局?jǐn)?shù)據(jù)結(jié)構(gòu)是否有問題,是否會被異常修改。 單個模塊的誤差積累起來,是否會放大到不可接受的程度。(3) 測試方法: 非增量式集成測試方法。基本思路:首先將各模塊獨立地進(jìn)行單元測試,然后把所有模塊組裝在一起進(jìn)行測試,最終得到一個符合要求的軟件系統(tǒng)。 增量式集成測試方法?;舅悸罚菏紫葘⒏髂K獨立地進(jìn)行單元測試,然后將這些模塊逐步組裝成較大的系統(tǒng),在組裝過程中邊組裝邊測試,以發(fā)現(xiàn)在組裝時產(chǎn)生的錯誤,最終組裝成一個符合要求的軟件系統(tǒng)。a) 自頂向下增量式集成測試:按照程序結(jié)構(gòu)圖,首先利用樁模塊測試主模板,通過測試后,用實際的模塊替代樁模塊

10、進(jìn)行測試,重復(fù)上述步驟,直至代替了所有樁模塊。b) 自底向上增量式集成測試:按照程序結(jié)構(gòu)圖,首先利用驅(qū)動模塊測試最底層模塊,通過測試后,用實際的模塊替代驅(qū)動模塊進(jìn)行測試,重復(fù)上述步驟,直至代替了所有驅(qū)動模塊。13. 系統(tǒng)測試(1) 定義:系統(tǒng)測試是將已經(jīng)過良好的集成測試的軟件系統(tǒng),作為整個計算機系統(tǒng)的一部分,與計算機硬件、外部設(shè)備、支持軟件、數(shù)據(jù)以及人員等其他系統(tǒng)元素結(jié)合在一起,在實際使用(運行)環(huán)境下對計算機系統(tǒng)進(jìn)行一系列的嚴(yán)格測試來發(fā)現(xiàn)軟件中的潛在缺陷,保證系統(tǒng)交付給用戶之后能夠正常使用。(2) 測試內(nèi)容:- 13 -² 功能測試² 性能測試² 強度測試

11、78; 可靠性測試² 恢復(fù)測試² 安裝測試² 安全性測試² 配置測試² 可用性測試² 兼容性測試² 網(wǎng)站測試14. 驗收測試(1) 測試:測試是在軟件開發(fā)公司內(nèi)模擬軟件系統(tǒng)的運行環(huán)境下的一種驗收測試,即軟件開發(fā)公司組織內(nèi)部人員,模擬各類用戶行為對即將面市的軟件產(chǎn)品(成為版本)進(jìn)行測試,試圖發(fā)現(xiàn)并修改錯誤。(2) 測試:測試緊隨測試之后,該測試是指軟件開發(fā)公司組織各方面的典型用戶在日常工作中實際使用版本,并要求用戶報告異常情況,提出批評意見。15. 回歸測試(1) 定義:回歸測試是指修改了舊代碼后,重新進(jìn)行測試以確認(rèn)修改沒有引

12、入新的錯誤或?qū)е缕渌a產(chǎn)生錯誤。(2) 測試策略 測試用例庫的維護(hù)。a) 刪除過時的測試用例b) 改進(jìn)不受控制的測試用例c) 刪除冗余的測試用例d) 增添新的測試用例 回歸測試包的選擇。a) 再測試全部用例b) 基于風(fēng)險選擇測試c) 基于操作剖面選擇測試d) 再測試修改的部分16. 軟件測試與軟件開發(fā)的關(guān)系(1) 軟件開發(fā)的目的是開發(fā)出實現(xiàn)用戶需求的高質(zhì)量、高性能的軟件產(chǎn)品;軟件測試以檢查軟件產(chǎn)品內(nèi)容和功能特性為核心,是軟件質(zhì)量保證的關(guān)鍵步驟,也是成功實現(xiàn)軟件開發(fā)目標(biāo)的重要保障。(2) V模型:需求規(guī)格說明設(shè)計實現(xiàn)驗收測試系統(tǒng)測試集成測試單元測試回歸測試V模型17. 軟件質(zhì)量與度量(1) A

13、NSI關(guān)于軟件質(zhì)量的定義:與軟件產(chǎn)品滿足規(guī)定的和隱含的需求的能力有關(guān)的特征和特性的全體。(2) 度量方面: 軟件產(chǎn)品中能滿足用戶給定需求的全部特性的集合。 軟件具有所期望的各種屬性組合的程度。 用戶主管得出的軟件是否滿足其綜合期望的程度。 決定所用軟件在使用中將滿足其綜合期望程度的軟件合成特性。(3) McCall模型 正確性:一個程序滿足它的需求規(guī)約和實現(xiàn)用戶任務(wù)目標(biāo)的程度。 可靠性:一個程度滿足其所需的精確度,完成它的預(yù)期功能程度。 效率:一個程序完成其功能所需的計算資源和代碼的質(zhì)量。 完整性:對未授權(quán)人員訪問軟件或數(shù)據(jù)的可控制程度。 可使用性:學(xué)習(xí)、操作、準(zhǔn)備輸入和解釋程序輸出所需的工作

14、量。 可維護(hù)性:定位和修復(fù)程序中一個錯誤所需的工作量。 靈活性:修改一個運行的程序所需的工作量。 可測試性:測試一個程序以及確保它完成所期望的功能所需工作量。 可移植性:把一個程序從一個硬件或軟件系統(tǒng)環(huán)境在移植到另一個環(huán)境所需的工作量。 可復(fù)用性:一個程序可以在另外一個應(yīng)用程序中復(fù)用的程度。 互連性:連接一個系統(tǒng)和另一個系統(tǒng)所需的工作量。18. 軟件質(zhì)量標(biāo)準(zhǔn)的類型² 國際標(biāo)準(zhǔn)² 國家標(biāo)準(zhǔn)² 行業(yè)標(biāo)準(zhǔn)² 企業(yè)規(guī)范² 項目規(guī)范19. 軟件的差錯、故障、失效(1) 差錯: 計算的、觀測的或測量的值與真實的、規(guī)定的或理論上正確的值或條件之間的差別。 一個不正確的步驟、過程或數(shù)據(jù)定義。 一個不正確的結(jié)果。 一次產(chǎn)生不正確的結(jié)果的人的活動。(2) 故障:在一個計算機程序中出現(xiàn)的不正確的步驟、過程或數(shù)據(jù)定義常稱為故障。上述“差錯”中的第二項屬于故障。(3) 失效:一個程序運行的外部結(jié)果與軟件產(chǎn)品的要求出現(xiàn)不一致時稱為失效。軟件失效證明了軟件中存在著故障。上述“差錯”中的第三項屬于失效。20. CMM(1) 定義: 一個系統(tǒng)、組件或過程符合特定需求的程度。 一個系統(tǒng)、組件或過程符合客戶或用戶的要求或期望的程度。(2) CMM思想及其5個級別,CMMI的區(qū)別CMM為軟件過程改進(jìn)提供了一個框架,將整個

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論