下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1.軟件測試的概念軟件測試被定義為:“使用人工或者自動手段來運行或測試某個系統(tǒng)的過程,其目的在于檢驗它是否滿足規(guī)定的需求或弄清楚預期結(jié)果與實際結(jié)果之間的差別?!?.軟件測試目的軟件測試的目的是為了保證軟件產(chǎn)品的最終質(zhì)量,在軟件開發(fā)的過程中,對軟件產(chǎn)品進行質(zhì)量控制。測試可以達到很多目的,但最重要的是可以衡量正在開發(fā)的軟件的質(zhì)量。3.軟件測試的原則(寫4到5個即可)軟件測試應(yīng)力求遵循以下幾條原則:1所有的測試都應(yīng)追溯到用戶需求2應(yīng)盡早地和不斷地進行軟件測試3在有限的時間和資源下進行完全測試找出軟件所有的錯誤和缺陷是不可能的,軟件測試不能無限進行下去,應(yīng)適時終止4測試只能證明軟件存在錯誤而不能證明軟件沒有錯誤,測試無法顯示潛在的錯誤和缺陷,繼續(xù)進一步測試可能還會找到其他錯誤和缺陷。5充分關(guān)注測試中的集群現(xiàn)象。6程序員應(yīng)避免檢查自己的程序7盡量避免測試的隨意性8設(shè)計測試用例時應(yīng)該考慮到合法的輸入和不合法的輸入以及各種邊界條件,特殊情況下要制造極端狀態(tài)和意外狀態(tài),比如網(wǎng)絡(luò)異常中斷、電源斷電等情況9對測試錯誤結(jié)果一定要有一個確認的過程,一般由A測試出來的錯誤,一定要有一個B來確認,嚴重的錯誤可以召開評審會進行討論和分析10回歸測試的關(guān)聯(lián)性一定要引起充分的注意,修改一個錯誤而引起更多的錯誤出現(xiàn)的現(xiàn)象并不少見11妥善保存一切測試過程文檔,意義是不言而喻的,測試的重現(xiàn)性往往要靠測試文檔12為了發(fā)現(xiàn)更多的錯誤讓系統(tǒng)更完善,設(shè)計測試用例時不但要選擇合理的輸入數(shù)據(jù)作為測試用例,而且要選擇不合理的輸入數(shù)據(jù)作為測試用例,使得系統(tǒng)能應(yīng)付各種情況13測試過程不但要求軟件開發(fā)人員參與,而且一般要求有專門的測試人員進行測試,并且還要求用戶參與,特別是驗收測試階段,用戶是主要的參與者4.軟件測試的基本步驟軟件測試是一個極為復雜的過程。一個規(guī)范化的軟件測試過程通常包括以下基本的測試過程:擬訂軟件測試計劃,編制軟件測試大綱,確定軟件測試環(huán)境,設(shè)計和生成測試用例,實施測試,生成軟件測試報告5.軟件測試與調(diào)試的區(qū)別簡單地說測試是為了發(fā)現(xiàn)問題,調(diào)試是解決問題。具體來看,有如下區(qū)別:(1.測試的目的是找出存在的錯誤,盡可能地發(fā)現(xiàn)軟件中隱藏的bug;而調(diào)試的目的是定位錯誤,找到軟件的bug的確切位置,找出錯誤的原因并修改程序以修正錯誤。測試活動中發(fā)現(xiàn)的缺陷需要通過調(diào)試來進行定位,兩者在目標、方法和思路上有所不同。(2.調(diào)試是編碼階段和缺陷修復階段的活動,測試活動則可以貫穿整個軟件的生命周期。(3.測試是從已知的條件開始,使用預先定義的過程和步驟,有預知的結(jié)果,軟件測試能確切地知道軟件要去往何方;調(diào)試從未知的條件開始,結(jié)束時間無法預計,不知道軟件是否真正地被修復。(4.測試過程可以事先設(shè)計,可以預先制訂測試用例和過程,工作進度可以度量。調(diào)試過程無法描述過程和持續(xù)時間(5.測試過程是可重復的,調(diào)試的過程是隨機的、不可重復的。(6.測試的對象可以是文檔和代碼,而調(diào)試的對象只能是代碼。(7.調(diào)試是隨機性的,由程序員自己完成,為了程序可運行;測試是有目的性的,由測試人員(非設(shè)計人員)完成,為了程序可完成指定功能。6.黑盒測試的概念黑盒測試(Black-boxTesting)又稱為功能測試或數(shù)據(jù)驅(qū)動測試,是把測試對象看做一個黑盒子。利用黑盒測試法進行動態(tài)測試時,需要測試軟件產(chǎn)品的功能,不需測試軟件產(chǎn)品的內(nèi)部結(jié)構(gòu)和處理過程。7.黑盒測試的設(shè)計方法(1).等價類劃分法,等價類劃分是把所有可能的輸入數(shù)據(jù),即程序的輸入域劃分成若干部分(子集),然后從每一個子集中選取少數(shù)具有代表性的數(shù)據(jù)作為測試用例。(2).邊界值分析法(3).錯誤推測法(4).因果圖方法(5)判定表驅(qū)動分析方法(6)正交實驗設(shè)計方法(7)功能圖分析方法和綜合策略等。8.黑盒測試的優(yōu)缺點(1)黑盒測試的優(yōu)點1對比較大的代碼單元來說,黑盒測試比白盒測試效率要高2測試人員不需要了解實現(xiàn)的細節(jié),包括特定的編程語言3測試人員和編碼人員是彼此獨立的4從用戶的視角進行測試,很容易被理解和接受5有助于暴露任何規(guī)格不一致或者有歧義的問題6測試用力可以在規(guī)格完成之后馬上執(zhí)行。(2)黑盒測試的缺點1結(jié)果取決于測試用例的設(shè)計,測試用例的設(shè)計部分來源于經(jīng)驗2沒有狀態(tài)轉(zhuǎn)換的概念,目前一些成功的例子還做不到針對被測試程序的狀態(tài)轉(zhuǎn)換3就沒有狀態(tài)概念的測試來說,尋找和確定造成程序停止的測試用例是很麻煩的事情,必須把周圍可能的測試用例單獨確認一遍。而就有狀態(tài)的測試來說,就更麻煩了,尤其不是一個單獨的測試用例造成的問題4只有一小部分可能的輸入被測試到,要測試每個可能的輸入流幾乎是不可能的5沒有清晰的和簡明的規(guī)格,測試用例是很難設(shè)計的6如果測試人員不被告知開發(fā)人員已經(jīng)執(zhí)行過的用例,在測試數(shù)據(jù)上會存在不必要的重復7會有很多程序路徑?jīng)]有被測試到8不能直接針對特定程序段測試,該程序段可能隱藏更多錯誤。9.白盒測試的概念白盒測試把測試對象看做一個透明的盒子,它允許測試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,設(shè)計或選擇測試用例,對程序所有邏輯路徑進行測試。通過在不同點檢查程序的狀態(tài),確定實際的狀態(tài)是否與預期的狀態(tài)一致。因此白盒測試又稱為結(jié)構(gòu)測試或邏輯驅(qū)動測試。10.白盒測試的設(shè)計方法白盒測試的覆蓋標準有邏輯覆蓋、循環(huán)覆蓋和基本路徑測試。其中邏輯覆蓋包括語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋和路徑覆蓋。11.白盒測試的優(yōu)缺點(1).優(yōu)點迫使測試人員去仔細思考軟件的實現(xiàn);可以檢測代碼中的每條分支和路徑;揭示隱藏在代碼中的錯誤;對代碼的測試比較徹底;讓軟件最優(yōu)化;可構(gòu)成測試數(shù)據(jù)使特定程序部分得到測試;有一定的充分性度量手段;可獲得較多工具支持。(2).缺點昂貴;無法檢測代碼中遺漏的路徑和數(shù)據(jù)敏感性錯誤;不驗證規(guī)格的正確性;不易生成測試數(shù)據(jù)(通常;無法對未實現(xiàn)規(guī)格說明的部分進行測試;工作量大,通常只用于單元測試,有應(yīng)用局限。12.灰盒測試的概念灰盒測試,是介于白盒測試與黑盒測試之間的,可以這樣理解,灰盒測試關(guān)注輸出對于輸入的正確性,同時也關(guān)注內(nèi)部表現(xiàn),結(jié)合了白盒測試和黑盒測試的要素,它考慮了用戶端、特定的系統(tǒng)知識和操作環(huán)境。它在系統(tǒng)組件的協(xié)同性環(huán)境中評價應(yīng)用軟件的設(shè)計。14.什么時候進行單元測試單元測試越早越好。XP開發(fā)理論講究測試驅(qū)動開發(fā)(即TDD,先編寫測試代碼,再進行開發(fā)。從經(jīng)驗來看,先編寫產(chǎn)品函數(shù)的框架,然后編寫測試函數(shù),針對產(chǎn)品函數(shù)的功能編寫測試用例,然后編寫產(chǎn)品函數(shù)的代碼,每寫一個功能點都運行測試,隨時補充測試用例。15.單元測試的優(yōu)點(1)它是一種驗證行為。程序中的每一項功能都是測試來驗證它的正確性。它為以后的開發(fā)提供支緩。就算是開發(fā)后期,我們也可以輕松的增加功能或更改程序結(jié)構(gòu),而不用擔心這個過程中會破壞重要的東西。而且它為代碼的重構(gòu)提供了保障。這樣,我們就可以更自由地對程序進行改進。(2)它是一種設(shè)計行為。編寫單元測試將使我們從調(diào)用者角度來觀察、思考。特別是先寫測試,迫使我們把程序設(shè)計成易于調(diào)用和可測試的,即迫使我們解除軟件中的耦合。(3)它是一種編寫文檔的行為。單元測試是一種無價的文檔,它是展示函數(shù)或類如何使用的最佳文檔。這份文檔是可編譯、可運行的,并且它保持最新,永遠與代碼同步。(4)它具有回歸性。自動化的單元測試避免了代碼出現(xiàn)回歸的可能,編寫完成之后,可以隨時隨地快速運行測試。17.集成測試常用方案選型集成測試的實施方案有很多種,如自底向上集成測試、自頂向下集成測試、核心集成測試、分層集成測試、基于使用的集成測試等(1自底向上集成測試自底向上的集成(Bottom-UpIntegration)方式是最常使用的方法自底向上集成測試的步驟大致如下:步驟一:按照概要設(shè)計規(guī)格說明,明確有哪些被測模塊。步驟二:在步驟一的基礎(chǔ)上,按時間線序關(guān)系,將軟件單元集成為模塊,并測試在集成過程中出現(xiàn)的問題。這里,可能需要測試人員開發(fā)一些驅(qū)動模塊來驅(qū)動集成活動中形成的被測模塊。對于比較大的模塊,可以先將其中的某幾個軟件單元集成為子模塊,然后再集成為一個較大的模塊。步驟三:將各軟件模塊集成為子系統(tǒng)(或分系統(tǒng))。檢測各自子系統(tǒng)是否能正常工作。同樣,可能需要測試人員開發(fā)少量的驅(qū)動模塊來驅(qū)動被測子系統(tǒng)。步驟四:將各子系統(tǒng)集成為最終用戶系統(tǒng),測試各分系統(tǒng)能否在最終用戶系統(tǒng)中正常工作。(2核心系統(tǒng)先行集成測試核心系統(tǒng)先行集成測試法的思想是先對核心軟件部件進行集成測試,在測試通過的基礎(chǔ)上再按各外圍軟件部件的重要程度逐個集成到核心系統(tǒng)中。其步驟如下:步驟一:對核心系統(tǒng)中的每個模塊進行單獨地、充分地測試,必要時使用驅(qū)動模塊和樁模塊。步驟二:對于核心系統(tǒng)中的所有模塊一次性集合到被測系統(tǒng)中,解決集成中出現(xiàn)的各類問題。在核心系統(tǒng)規(guī)模相對較大的情況下,也可以按照自底向上的步驟,集成核心系統(tǒng)的各組成模塊。步驟三:按照各外圍軟件部件的重要程度以及模塊間的相互制約關(guān)系,擬定外圍軟件部件集成到核心系統(tǒng)中的順序方案。方案經(jīng)評審以后,即可進行外圍軟件部件的集成。步驟四:在外圍軟件部件添加到核心系統(tǒng)以前,外圍軟件部件應(yīng)先完成內(nèi)部的模塊級集成測試。步驟五:按順序不斷加入外圍軟件部件,排除外圍軟件部件集成中出現(xiàn)的問題,形成最終的用戶系統(tǒng)。21.測試用例的重要性(1)有效性:測試用例是測試人員測試過程中的重要參考依據(jù)。不同的測試人員根據(jù)相同的測試用例所得到的輸出應(yīng)該是一致的,對于準確的測試用例的計劃、執(zhí)行和跟蹤是測試的有效性的有力證明。(2)可復用性:良好的測試用例具有重復使用的功能,使得測試過程事半功倍,在前面的章節(jié)中,我們提到測試是不可能進行窮舉測試的,因此,設(shè)計良好的測試用例將大大節(jié)約時間,提高測試效率。(3)易組織性:即使是很小的項目,也可能會有幾千甚至更多的測試用例,測試用例可能在數(shù)月甚至幾年的測試過程中被創(chuàng)建和使用,正確的測試計劃會很好地組織這些測試用例并提供給測試人員或者其他項目的人參考和有效地使用。(4)可評估性:從測試的項目管理角度來說,測試用例的通過率是檢驗代碼質(zhì)量的保證。經(jīng)常說代碼的質(zhì)量不高或者代碼的質(zhì)量很好,量化的標準應(yīng)該是測試用例的通過率和軟件錯誤(bug)的數(shù)目。(5)可管理性:測試用例也可以作為檢驗測試人員進度、工作量以及跟蹤/管理測試人員的工作效率的因素,尤其是比較適用于對于新的測試人員的檢驗,從而更加合理作出測試安排和計劃。因此,測試用例將會使得測試的成本降低,并具有可重復使用功能,也是作為檢測測試效果的重要因素,設(shè)計良好的測試用例將事半功倍。21.測試用例的基本原則22.軟件測試自動化的意義由于手工測試的局限性,軟件測試借助測試工具極為必要,并向軟件測試全面自動化方向發(fā)展,將測試工具和軟件測試自動化結(jié)合起來,可以解決上述局限性,并且會帶來一些好處:縮短軟件開發(fā)測試周期。測試效率高,充分利用硬件資源節(jié)省人力資源,降低測試成本增強測試的穩(wěn)定性和可靠性。提高軟件測試的準確度和精確度。軟件測試工具使測試工作相對比較容易,但能產(chǎn)生更高質(zhì)量的測試結(jié)果。手工不能做的事情,軟件測試自動化能做,如負載、性能測試。23.測試自動化的原理和方法軟件測試自動化實現(xiàn)的原理和方法主要有:直接對代碼進行靜態(tài)和動態(tài)分析、測試過程的捕獲和回放、測試腳本技術(shù)、虛擬用戶技術(shù)和測試管理技術(shù)。4.軟件測試級別是什么?這些測試之間的區(qū)別是什么?測試的級別可以分為單元測試、集成測試、系統(tǒng)測試,有時要增加用戶的接收測試,而每次測試過程中可能伴隨著回歸測試。5.軟件測試有幾種方法?每種方法的特點是什么?黑盒測試,白盒測試,灰盒測試黑盒測試注重于測試軟件的功能性需求,不需要測試軟件產(chǎn)品的內(nèi)部結(jié)構(gòu)和處理過程。白盒測試全面了解程序內(nèi)部邏輯結(jié)構(gòu)、對所有邏輯路徑進行測試,又稱為結(jié)構(gòu)測試或邏輯驅(qū)動測試?;液袦y試關(guān)注輸出對于輸入的正確性,同時也關(guān)注內(nèi)部表現(xiàn)。結(jié)合了白盒測試和黑盒測試的要素,它考慮了用戶端、特定的系統(tǒng)知識和操作環(huán)境。6.單個組件經(jīng)過代碼審查和測試,請解釋為什么仍然需要進行集成測試。軟件單元只有經(jīng)過集成才能形成一個有機的整體,只要有集成,總會出現(xiàn)一些常見問題,一些模塊雖然能夠單獨地工作,但并不能保證連接起來也能正常工作。程序在某些局部反映不出來的問題,有可能在全局上會暴露出來,影響功能的實現(xiàn)。因此仍然需要進行集成測試。13.什么是單元測試單元測試也稱為模塊測試,是開發(fā)者編寫的一小段代碼,用于檢驗被測代碼的一個很小的、很明確的功能是否正確。通常而言,一個單元測試是用于判斷某個特定條件或者場景下某個特定函數(shù)的行為。16.何為集成測試集成測試也叫組裝測試、聯(lián)合測試,是單元測試的邏輯擴展。它的最簡單的形式是:兩個已經(jīng)測試過的單元組合成一個組件,并且測試它們之間的接口。18.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職(風力發(fā)電工程技術(shù))風電場運維管理綜合測試題及答案
- 2026年審計代理教學(審計代理應(yīng)用)試題及答案
- 2025年大學書法教育(書法教學方法)試題及答案
- 2025年高職移動應(yīng)用技術(shù)與服務(wù)(程序優(yōu)化)試題及答案
- 2025年大學大一(機器人學基礎(chǔ))機器人運動學原理應(yīng)用綜合測試題及答案
- 2025年高職包裝工藝(包裝制作)試題及答案
- 2025年大學大三(鐵道工程)鐵路隧道工程技術(shù)實務(wù)試題及答案
- 2025年大學信息資源管理(信息管理技巧)試題及答案
- 2025年大學護理學(護理倫理學基礎(chǔ))試題及答案
- 2025年大學藝術(shù)批評(批評研究)試題及答案
- 2023年安徽省公務(wù)員錄用考試《專業(yè)科目-財會類》真題及答案
- 四川省成都市2023-2024學年高二上學期期末考試英語試題 含解析
- T-CCUA 006-2024 信息系統(tǒng)審計機構(gòu)服務(wù)能力評價
- 魯科版高中化學選擇性必修第一冊第2章章末復習建構(gòu)課課件
- DL∕T 5210.6-2019 電力建設(shè)施工質(zhì)量驗收規(guī)程 第6部分:調(diào)整試驗
- 2024年安徽省高考地理試卷(真題+答案)
- 裝修民事糾紛調(diào)解協(xié)議書
- 2023年P(guān)CB工程師年度總結(jié)及來年計劃
- 森林防火工作先進個人事跡材料
- MH5006-2015民用機場飛行區(qū)水泥混凝土道面面層施工技術(shù)規(guī)范
- 施工交通疏導方案
評論
0/150
提交評論