成大在线免费视频,亚洲精品免费一级视频,日韩亚洲欧美大陆,又黄又爽免费国产视频

<style id="t465f"></style>
<legend id="t465f"><u id="t465f"><thead id="t465f"></thead></u></legend>

<acronym id="t465f"></acronym>

<sub id="t465f"><ol id="t465f"><nobr id="t465f"></nobr></ol></sub>
<sub id="t465f"></sub>

軟件測試的目的

時間:2023-05-24 10:34:14 兆波 參考資料 投訴 投稿
  • 相關推薦

軟件測試的目的

  軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序或系統(tǒng)的過程。以下是小編為大家整理的軟件測試的目的相關內(nèi)容,僅供參考,希望能夠幫助大家。

  問題:

  軟件測試的目的

  答案:

  軟件測試的目的是盡可能發(fā)現(xiàn)并改正被測試軟件中的錯誤,提高軟件的可靠性。

  基于不一樣的立場,存在著兩種完全不一樣的測試目的。從用戶的角度出發(fā),普遍期望通過軟件測試暴露出軟件中陷藏的錯誤和缺陷,以思考是否能夠理解該產(chǎn)品。而從軟件開發(fā)者的角度出發(fā),則期望測試成為證明軟件產(chǎn)品中不存在錯誤的過程,驗證該軟件已正確地實現(xiàn)了用戶的要求,確立用戶對軟件質量的信心。

  因為在程序中往往存在著許多預料不到的問題,可能會被疏漏,許多隱藏的錯誤只有在特定的環(huán)境下才可能暴露出來。如果不把著眼點放在盡可能查找錯誤這樣一個基礎上,這些隱藏的錯誤和缺陷就查不出來,會遺留到運行階段中去。如果站在用戶的角度替他們設想,就應當把測試活動的目標對準揭露程序中存在的錯誤。在選取測試用例時,思考那些易于發(fā)現(xiàn)程序錯誤的數(shù)據(jù)。

  下面這些規(guī)則也能夠看作是測試的目的或定義:

  1、測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程;

  2、好的測試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯誤的測試方案;

  3、成功的測試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯誤的測試。

  從上述規(guī)則能夠看出,測試的正確定義是“為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程”。這和某些人通常想象的“測試是為了證明程序是正確的”,“成功的測試是沒有發(fā)現(xiàn)錯誤的測試”等等是完全相反的。正確認識測試的目標是十分重要的,測試目標決定了測試方案的設計。如果為了證明程序是正確的而進行測試,就會設計一些不易暴露錯誤的測試方案;相反,如果測試是為了發(fā)現(xiàn)程序中的錯誤,就會力求設計出最能暴露錯誤的測試方案。

  由于測試的目標是暴露程序中的錯誤,從心理學角度看,由程序的編寫者自己進行測試是不恰當?shù)。因此,在綜合測試階段通常由其他人員組成測試小組來完成測試工作。此外,就應認識到測試決不能證明程序是正確的。即使經(jīng)過了最嚴格的測試之后,仍然可能還有沒被發(fā)現(xiàn)的錯誤潛藏在程序中。測試只能查找出程序中的錯誤,不能證明程序中沒有錯誤。

  一、什么是軟件測試?

  1979年,myer:軟件測試就是為了發(fā)現(xiàn)錯誤而執(zhí)行程序或系統(tǒng)的過程。

  1983年,IEEE:軟件測試即使用人工或自動手段來運行或測試某個系統(tǒng)的過程,其目的在于檢驗它是否滿足規(guī)定的需求或弄清預期結果與實際結果之間的差別。

  二、現(xiàn)代軟件測試活動的內(nèi)容?

  制定測試計劃、設計測試用例、實施測試、提交缺陷報告、測試總結

  三、軟件測試的目的?

  GrenfordJ.Myers在《The Artof Software Testing》一書中的觀點:

  1、測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯誤

  2、一個成功的測試用例在于發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤

  3、一個成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯誤的測試

  簡單的說,測試的根本目的就是確保最終交給用戶的產(chǎn)品符合用戶的需求,在產(chǎn)品交給用戶之前盡可能多的發(fā)現(xiàn)并改正問題。

  四、測試一般要達到的目標?

  確保產(chǎn)品完成了它所承諾或公布的功能,并且用戶可以訪問到的功能都有明確的書面說明;

  確保產(chǎn)品滿足性能和效率的要求;確保產(chǎn)品是健壯的和適應用戶環(huán)境的。

  五、軟件測試分類?

  1、按測試策略分類:a靜態(tài)測試與動態(tài)測試

  靜態(tài)測試

  定義:不運行被測程序本身而尋找程序代碼中可能存在的錯誤或評估程序代碼的過程。Ps:通過分析或檢查源程序的文法、結構、過程、接口等來檢驗程序的正確性,找出缺陷和可疑之處,例如不匹配的參數(shù)、不適當?shù)姆种短缀脱h(huán)嵌套、未使用過的變量、空指針的引用等;可采用人工和軟件工具進行;靜態(tài)測試工具的代表:telelogic公司的logiscope軟件、PR公司的PRQA軟件等。

  靜態(tài)測試特點:

  不必動態(tài)地運行程序,也不必進行測試用例設計和結果判斷等工作;可由人工進行,充分發(fā)揮人得邏輯思維優(yōu)勢;不需要特別的條件,容易展開。

  靜態(tài)測試要點:

  代碼審查(code in spection或code review)、代碼走查(walk through)、桌面檢查、技術評審(軟件需求分析和設計評審)、靜態(tài)分析(使用軟件工具,包括控制流分析、數(shù)據(jù)流分析、接口分析和表達式分析)

  動態(tài)測試

  定義:實際運行被測程序,輸入相應的測試實例,檢查運行結果和預期結果的差異,判斷執(zhí)行結果是否符合要求,從而檢驗程序的正確性、可靠性和有效性,并分析系統(tǒng)運行效率和健壯性等性能。

  組成:構造測試實例、根據(jù)測試實例運行程序、分析程序的輸出結果。主要方法:黑盒測試和白盒測試。

  動態(tài)測試特點:

  實際運行被測試程序,取得程序運行的真實情況、動態(tài)情況,并進行分析;必須生成測試數(shù)據(jù)來運行程序,測試質量依賴于測試數(shù)據(jù);生成測試數(shù)據(jù)、分析測試結果工作量大,使開展測試工作費時、費力、費人;

  動態(tài)測試中涉及多方面工作,人員多、設備多、數(shù)據(jù)多,要求有較好的管理和工作規(guī)程。

  b黑盒測試和白盒測試

  黑盒測試(black-box testing)又稱功能測試、數(shù)據(jù)驅動測試、基于規(guī)格說明書的測試。定義:測試者把被測程序看成一個黑盒,不考慮程序的內(nèi)部結構和特性,只需知道該程序輸入和輸出之間的關系和程序功能,依靠能夠反映這一關系和程序功能的需求規(guī)格說明書,來確定測試用例和推斷測試結果的正確性。

  白盒測試(white-box testing)又稱結構測試、邏輯驅動測試、基于程序本身的測試。定義:從程序的內(nèi)部邏輯結構入手,按照一定的原則設計測試用例,對軟件的邏輯路徑進行測試,在程序的不同點檢查程序的狀態(tài),來判定其實際情況是否和預期的狀態(tài)一致。規(guī)劃方面適用范圍優(yōu)勢缺陷黑盒測試針對功能的測試進行確認測試和系統(tǒng)測試時使用能確保從用戶使用的角度出發(fā)進行測試無法測試程序內(nèi)部特定部位;如果需求說明有誤,則無法發(fā)現(xiàn)問題等價類劃分(將所有可能的輸入數(shù)據(jù)劃分為若干等價類,選擇有代表性的當做測試用例進行測試);邊界值分析法(對輸入或輸出的邊界值進行測試);因果圖法(利用圖解法分析輸入的各種組合的情況,從而設計測試用例的方法。“因”即輸入條件,“果”即輸出或程序狀態(tài)的改變);比較測試法白盒測試針對結構的測試進行單元測試時使用能夠對程序內(nèi)部的特定部位進行覆蓋測試無法檢驗程序的外部特性;無法對未實現(xiàn)規(guī)格說明的程序內(nèi)部欠缺部分進行測試語句覆蓋(程序中每條語句至少被執(zhí)行一次);判斷覆蓋(或分支覆蓋,程序中每個分支至少走查過一次);條件覆蓋(判定式中若含多個條件,則每個條件的取值均要得到檢驗);判斷/條件覆蓋(同時考慮條件的組合值及判定結果的檢驗);基本路徑的覆蓋(使程序沿所有可能的路徑執(zhí)行);循環(huán)覆蓋;模塊接口測試應用舉例

  C手工測試與自動測試

  手工測試定義:由測試人員來執(zhí)行測試用例,然后根據(jù)實際的結果去和預期的結果相比較并記錄測試結果。手工測試時現(xiàn)在多數(shù)公司使用的測試形式。

  自動測試

  定義:引入自動測試工具。

  通常以手工測試為主,自動測試為輔。d冒煙測試(smoketest):在版本投入正式測試前,對其重要的步伐先進行大概的測試,看系統(tǒng)重要的功能是否正確,再進行徹底的測試。e回歸測試(regressiontest):一段時間以后對以前修復過的缺陷重新進行測試,看該缺陷是否會重新出現(xiàn)。

  2、按測試階段分類

  單元測試又稱模塊測試定義:針對每一個程序模塊進行正確性檢驗,檢查各個程序模塊是否正確的實現(xiàn)了規(guī)定的功能。如一個窗口、函數(shù)、菜單、報表或一個存儲過程。

  依據(jù)是詳細設計,應對所有重要的控制路徑設計測試用例。集成測試又稱綜合測試。定義:在單元測試的基礎上,將已經(jīng)通過測試的單元模塊按照設計要求組裝成系統(tǒng)或子系統(tǒng),再進行的測試。

  系統(tǒng)測試定義:是將通過確認測試的軟件,作為整個基于計算機系統(tǒng)的一個元素,與計算機硬件、外設、某些支持軟件、數(shù)據(jù)和人員等其他系統(tǒng)元素結合在一起,在實際運行環(huán)境下,對計算機系統(tǒng)進行全面的功能覆蓋。

  單元測試集成測試確認測試(有效性測試、軟件配置審查)系統(tǒng)測試驗收測試(以用戶為主)測試類型單元測試對象模塊內(nèi)部的程序錯誤模塊間的集成和調用關系目的清除局部模塊的邏輯和功能上的錯誤和缺陷找出與軟件設計相關的程序結構,模塊調用關系,模塊間接口方面的問題測試依據(jù)測試方法模塊邏輯設計,大量采用白盒測模塊外部說明試方法程序結構設計白盒與黑盒相結合的測試方法,較多用黑盒方法構造測試用例集成測試系統(tǒng)測試整個系統(tǒng),包括系統(tǒng)中的軟、硬件對整個系統(tǒng)進行一系系統(tǒng)結構設計,黑盒測試列的整體、有效性測試目標說明書,需求說明書3、其他常見測試方法

  功能測試(functiong testing)又稱正確性測試,軟件的功能是否符合規(guī)格說明;

  性能測試(performance testing),系統(tǒng)是否滿足需求說明書中規(guī)定的性能,通常使用自動化測試工具;

  壓力測試(stress testing):檢查系統(tǒng)在瞬間峰值負荷下正確執(zhí)行的能力,通常用測試工具測試;

  負載測試(volume testing):用于檢查系統(tǒng)在使用大量數(shù)據(jù)時正確工作的能力;

  易用性測試(usability testing):合理性、方便性;

  安裝測試(installation testing):對軟件的全部、部分或升級安裝/卸載處理過程的測試;界面測試:包括窗口測試、下拉式菜單和鼠標操作、數(shù)據(jù)項測試;

  配置測試(configuration testing):主要檢查計算機系統(tǒng)內(nèi)各個設備或各種資源之間的相互連接和功能分配中的錯誤。包括驗證全部配置命令的可操作性,軟件配置,硬件配置,利用手動或自動方式驚喜配置狀態(tài)間的轉換;

  文檔測試(documentation testing):文檔的正確性、完備性、可理解性;

  兼容性測試(compatibility testing):產(chǎn)品在不同產(chǎn)品之間的兼容性;

  安全性測試(security testing):非法侵入的防范能力,已存在的安全性、保密性,有無漏洞;

  恢復測試(recovery testing):容錯能力,在指定的時間內(nèi)修正錯誤并恢復正常,又不傷害系統(tǒng)。

  六:軟件的開發(fā)周期(軟件生命周期)和模型?瀑布模型:

  計劃需求分析設計編碼測試運行、維護

  嚴格按照固定順序,每個階段結束,經(jīng)過項目小組審查,決定是否進入下一步。

  螺旋模型:確定目標、可選方案和現(xiàn)在條件指出并解決風險評估方案本階段開發(fā)和測試計劃下一階段確定進入下一階段的方法(該過程重復進行)螺旋模型是瀑布模型的發(fā)展,較常用。

  七、軟件測試生命周期?

  制定測試計劃測試設計和開發(fā)實施軟件測試評審版本發(fā)布

  八、什么是軟件的缺陷(bug)?

  定義:在軟件使用過程中所出現(xiàn)的任何問題,或者導致軟件不能符合設計要求或滿足消費者需求的問題。包括程序錯誤等等。

  九、書寫缺陷報告的準則?

  保證重現(xiàn)缺陷;分析故障,使用最少步驟重現(xiàn)缺陷;包含所有重現(xiàn)缺陷的必要步驟;方便閱讀(編號,分步驟);盡量簡單(一個缺陷一個報告);注意語氣。

  識別和判斷缺陷的輔助工具:軟件需求說明書、用戶手冊、聯(lián)機幫助。

  十、bug的生命周期?有效地記錄BUG;

  使用BUG模板;

  評價BUG優(yōu)先級和嚴重性;BUG的生命;

  維護BUG數(shù)據(jù)庫。

  十一、bug的類型?

  軟件沒有實現(xiàn)產(chǎn)品規(guī)格說明所要求的功能模塊;

  軟件中出現(xiàn)了產(chǎn)品規(guī)格說明指明不應該出現(xiàn)的錯誤;軟件實現(xiàn)了產(chǎn)品規(guī)格說明沒有提到的功能模塊;

  軟件沒有實現(xiàn)雖然產(chǎn)品規(guī)格說明沒有明確提及但應該實現(xiàn)的目標;

  軟件難以理解,不容易使用,運行緩慢,或從測試員的角度看,最終用戶會認為不好。功能缺陷:規(guī)格說明書、能功、測試

  系統(tǒng)缺陷:內(nèi)部接口、硬件、操作系統(tǒng)、軟件結構、控制與順序、資源加工缺陷:算術、初始化、控制與次序、靜態(tài)邏輯、其他數(shù)據(jù)缺陷:類型、結構、初始值、其他代碼缺陷:程序編寫、文檔、其他

  十二、bug中通常包含的內(nèi)容

  硬件平臺和操作系統(tǒng)版本

  Bug報告優(yōu)先級Bug狀態(tài)

  報告人reporter

  指定處理人assignedto概述summary

  郵件抄送列表CClist從屬關系(bug“ID”dependson,bug“ID”block)附加描述additionalcomments

  十三、bug中的優(yōu)先級的定義?

  優(yōu)先級表示修復缺陷的重要程度和應該何時修復:1應立即修復的問題

  2在產(chǎn)品發(fā)布之前必須修復的問題3如果時間允許應該修復的問題4可以在發(fā)布版本中存在的問題

  缺陷的二八定理:一般情況下,在分析、設計、實現(xiàn)階段的復查和測試工作能夠發(fā)現(xiàn)和避免80%的缺陷,而系統(tǒng)測試又能找到剩余缺陷的80%,最后的4%的缺陷可能只有在用戶大范圍、長時間使用后才會暴露出來。

  十四、什么是測試用例?

  定義:指為實施測試而向被測試系統(tǒng)提供的輸入數(shù)據(jù)、操作或各種環(huán)境設置以及期望結果的一個特定的集合。換句話說,測試用例就是記下要進行什么測試,進行測試的具體步驟,以及測試執(zhí)行是否正確的標準。

  測試用例控制軟件測試的執(zhí)行過程。

  十五、測試用例包含的內(nèi)容?

  項目名稱:指明本測試用例是用例測試什么軟件項目的功能模塊名:指明要測試的內(nèi)容

  測試目的:描述被測試功能的詳細的特性及要測試的目標預置條件:執(zhí)行測試用例之前所做的操作,如啟動程序等用例編號:唯一編號

  相關用例:列出必須先于本測試用例執(zhí)行的測試用例用例說明:描述實現(xiàn)用例的步驟

  輸入數(shù)據(jù):描述測試用例所需的輸入數(shù)據(jù)或條件預期結果:輸入后應該輸出的結果

  測試結果:此項在測試執(zhí)行時填寫,說明測試用例是否通過,如果不通過,就要生成缺陷報告,并注明缺陷的編號,這里的缺陷編號要與缺陷跟蹤系統(tǒng)中的編號一致。

  十六、設計測試用例的方法?

  1等價類劃分法

  定義:測試人員要對需求規(guī)格說明書中的各項需求,尤其是功能需求進行細致分析,然后把程序的輸入域劃分為若干個部分,從每個部分中選取少數(shù)代表性數(shù)據(jù)作為測試用例。經(jīng)過這種劃分后,每一類的代表性數(shù)據(jù)在測試中的作用都等價于這一類中的其他值。

  等價類劃分法是一種最典型的黑盒測試法。

  步驟:在進行等價類劃分之前,首先從程序的功能說明中找出各個輸入條件,然后為每個輸入條件劃分兩個或更多個等價類。確定了等價類劃分后,給出相應的等價類表,再根據(jù)等價類表給出測試用例。

  要同時考慮有效等價類和無效等價類。

  2邊界值方法

  定義:對輸入和輸出的邊界值進行測試的黑盒測試方法。

  確定邊界值:選取正好等于、剛剛大于、剛剛小于邊界的值作為測試數(shù)據(jù),即中的測試最后一個肯定合法的數(shù)據(jù)和剛剛超過邊界的非法數(shù)據(jù)。

  邊界值法是等價類劃分方法的補充。3因果圖定義:考慮輸入條件之間的聯(lián)系、相互組合。

  步驟:

  分析軟件需求說明的描述中的原因(即輸入條件或輸入條件的等價類)、結果(即輸出條件),并給每個原因和結果附一個標識符;

  分析因果關系,畫因果圖

  對于不可能出現(xiàn)的組合情況,做出記號表明約束或限制條件;因果圖轉化成判定表;

  把判定表的每一列作為依據(jù),設計測試用例。4其他方法

  通過測試和失敗測試錯誤猜測隨機測試

  十七、測試用例中優(yōu)先級的定義?

  1小版本確認測試(buildverificationtests,BVTs):也叫“冒煙測試”,開發(fā)人員在個人版本的軟件上執(zhí)行目前的冒煙測試項目,確定新的程序代碼不出故障。

  2高(highs):最常執(zhí)行以保障功能性是穩(wěn)定的,目標的行為和能力可以正常的工作,和重要的錯誤和邊界被測試的測試用例的集合。

  3中(mediums)是使給出的功能區(qū)域或功能變得更詳細,檢查功能的多數(shù)方面包括邊界,錯誤和配置測試的測試用例。

  4低(lows):通常最少被執(zhí)行的測試用例。在項目的生命期間里不是常常被運行,如GUI,錯誤信息,可用性,壓力和性能測試。

  十八、什么是測試計劃,測試計劃中通常包含什么內(nèi)容?

  定義:軟件測試計劃指在軟件測試工作正式實施之前明確測試的對象,并且通過對資源、時間、風險、測試范圍和預算等方面的綜合分析和規(guī)劃,保障有效地實施軟件測試。

  內(nèi)容:

  測試計劃的簡介測試項目說明

  需要測試的項目清單測試手段和策略

  項目通過或失敗的標準暫停和重新啟動測試的標準測試的可交付性測試任務環(huán)境的需求職責

【軟件測試的目的】相關文章:

軟件測試總結03-22

軟件測試實習總結04-13

軟件測試個人總結01-16

軟件測試學習總結11-23

軟件測試的實習報告05-16

軟件測試實習心得04-20

軟件測試總結(15篇)05-20

軟件測試總結15篇03-22

軟件測試述職報告01-30