• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    軟件測試基礎知識雜記

    發布: 2009-6-19 09:00 | 作者: 網絡轉載 | 來源: 領測軟件測試網 | 查看: 93次 | 進入軟件測試論壇討論

    領測軟件測試網

    軟件測試基本概念
    軟件質量與軟件測試:軟件測試是軟件質量保證工作的一個重要環節。軟件測試和軟件質量保證是軟件質量工程的兩個不同層面的工作。軟件測試只是軟件質量保證工作中的一個重要環節。質量保證(QA)的工作是通過預防、檢查與改進來保證軟件的質量,它所關注的是軟件質量的檢查和測量。軟件測試所關心的不是過程的活動,而是對過程的產物以及開發出的軟件進行剖析。
    軟件測試定義:軟件測試就是在軟件投入運行前對軟件需求分析、軟件設計規格說明和軟件編碼進行的查錯(包括代碼執行活動與人工活動)。軟件測試是為了發現錯誤而執行程序的過程。軟件測試是根據軟件開發各階段的規格說明和程序的內部結構而精心設計一批測試用例(即輸入數據及其預期的輸出結果),并利用這些測試用例去運行程序,以發現程序的錯誤。是在軟件投入運行前,對軟件需求分析、軟件設計規格說明和軟件編碼的最終復審,是軟件質量保證的關鍵步驟。
    軟件測試目的:(1)測試是一個為了尋找錯誤而運行程序的過程;(2)一個好的測試用例是指很可能找到迄今為止未發現的錯誤的用例;(3)一個成功的測試是指揭示了迄今為止尚未發現的錯誤的測試。
    軟件測試的目標是能夠以耗費最少時間與最小工作量找出軟件系統中潛在的各種錯誤與缺陷。
    測試只能證明程序中錯誤的存在,但不能證明程序中沒有錯誤。
    軟件測試原則:(1)盡早地并不斷地進行軟件測試;(2)程序員或程序設計機構應避免測試自己設計的程序;(3)測試前應當設定合理的測試用例;(4)測試用例的設計不僅要有合法的輸入數據,還要有非法的輸入數據;(5)在對程序修改之后要進行回歸測試;(6)充分注意測試中的群集現象;(7)妥善保留測試計劃、全部測試用例、出錯統計和最終分析報告,并把它們作為軟件的組成部分之一,為軟件的維護提供方便;(8)應當對每一個測試結果做全面檢查;(9)嚴格執行測試計劃,排除測試的隨意性。
    軟件測試對象:軟件的測試不僅僅是程序的測試,軟件的測試應貫穿于整個軟件生命同期中。在軟件定義階段產生的可行性報告、項目實施計劃、軟件需求說明書或系統功能說明書,在軟件開發階段產生的概要測試說明書、詳細設計說明書,以及源程序等都是軟件測試的對象。
    軟件測試過程模型:V模型、W模型、H模型。
    軟件測試模型的使用:在實際軟件測試的實施過程中,應靈活地運用各種模型的優點,通?梢栽赪模型的框架下,運用H模型的思想進行獨立的測試。當有變更發生時,按X模型和前置模型的思想進行處理。同時,將測試和開發緊密結合,尋找恰當的就緒點開始測試,并反復進行迭代測試,以達到按期完成預定的目標。
    軟件問題分類:軟件錯誤、軟件缺陷、軟件故障、軟件失效。
    軟件測試類型:
    按開發階段分:單元測試、集成測試、系統測試,確認測試、驗收測試
    按測試實施組織分:開發方測試(驗證測試或alpha測試)、用戶測試(beta)、第三方測試(獨立測試)
    按測試方式分:動態測試、靜態測試
    按測試技術分:白盒測試、黑盒測試、灰盒測試
    軟件測試過程:用黑盒法設計基本的測試方案,再利用白盒法補充一些必要的測試方案?梢杂靡韵虏呗越Y合各種方法:
    (1)在任何情況下都應該使用邊界值分析的方法;
    (2)必要時用等價劃分法補充測試方案;
    (3)必要時用錯誤推測法補充測試方案;
    (4)如果在程序的功能說明中含有輸入條件的組合,最好在一開始就用因果圖法,然后再按以上(1)、(2)、(3)步進行。
    (5)對照程序邏輯,檢查已設計出的設計方案?梢愿鶕䦟Τ绦可靠性的要求采用不同的邏輯覆蓋標準,如果現有測試方案的邏輯覆蓋程度沒有達到要求的覆蓋標準,則應再補充一些測試方案。
    單元測試主要是對模塊的5個基本特性進行測試和評價:(1)模塊接口;(2)局部數據結構;(3)重要的執行路徑;(4)錯誤處理;(5)邊界測試。
    在集成測試時,要考慮的問題有:數據經過接口是否會丟失;一個模塊對另一模塊是否造成不應有的影響;幾個子功能組合起來能否實現主功能;誤差不斷積累是否達到不可接受的程度;全局數據結構是否有問題。
    確認測試又稱為有效性測試、合格測試或驗收測試。確認測試主要由使用用戶參加測試,檢驗軟件規格說明的技術標準的符合程度,是保證軟件質量的最后關鍵環節。
    系統測試是將通過確認測試的軟件,作為整個基于計算機系統的一個元素,與計算機硬件、外設、某些支持軟件、數據和人員等其他系統元素結合在一起,在實際運行(使用)環境下,對計算機系統進行一系列的組裝測試和確認測試。系統測試實質上是由一系列不同測試組成的,其主要目的是充分運行系統,驗證系統各個部件是否都能正常工作并完成所分配的功能。
    系統測試包括:恢復測試、安全性測試、強度測試、性能測試等。
    驗收測試是以用戶為主,軟件開發人員和質量保證人員也應參加的測試。由用戶參加設計測試用例。使用用戶界面輸入測試數據,并分析測試的輸出結果。驗收測試往往知系統測試完成后,項目最終交付前進行。
    測試用例設計方法
    白盒測試基本技術:控制流圖、代碼覆蓋率分析(Code Coverage Analysis)。
    白盒測試方法:從總體上可劃分為靜態測試和動態測試;按測試操作的實施方式劃分為手工測試和借助于工具的自動化測試等。
    白盒測試的靜態測試方法:代碼檢查法、靜態結構分析法、代碼質量度量法等。
    白盒測試的動態測試方法:功能確認與接口測試、邏輯覆蓋分析法、基本路徑測試法、性能分析、內存分析等。
    動態測試通常在靜態測試之后進行。
    其他白盒測試方法:域測試(Domain Testing)、程序變異測試、符號測試、數據流測試、Z路徑測試。
    常用的黑盒測試用例設計方法有:等價類劃分法、邊值分析法、錯誤猜測法、因果圖方法等,其他的一些測試方法還有判定表驅動法、正交試驗法、功能圖法,以及場景法等。
    面向對象測試關注于設計合適的操作序列以測試類的狀態。
    測試用例設計方法的主要原則包括:
    (1)對每個測試用例應當給予特殊的標識,并且還應當與測試的類有明確的聯系。
    (2)測試目的應當明確。
    應當為每個測試用例開發一個測試步驟列表。這個列表應包括以下一些內容:
    (1)列出所要測試的對象的專門說明;
    (2)列出將要作為測試結果運行的消息和操作;
    (3)列出測試對象可能發生的例外情況;
    (4)列出外部條件;
    (5)列出為了幫助理解和實現測試所需要的附加信息。
    軟件自動化測試
    自動化測試可以幫助測試人員做到:(1)提高測試執行的速度;(2)提高運行效率;(3)保證測試結果的準確性;(4)連續運行測試腳本;(5)模擬現實環境下受約束的情況。
    自動化測試不能做到的是:(1)所有測試活動都可以自動完成;(2)減少人力成本;(3)毫無成本的得到;(4)降低測試的工作量。
    面向對象軟件的測試
    面向對象技術主要包括6個核心概念:對象、消息、接口、類、繼承、多態。
    面向對象的開發模型實質是將軟件測試過程分成3個階段,即面向對象分析(OOA)、面向對象設計(OOD)和面向對象編程(OOP)。
    面向對象測試的類型分為:面向對象分析的測試(OOA Test)、面向對象設計的測試(OOD Test)、面向對象編程的測試(OOP Test)、面向對象單元測試(OO Unit Test)、面向對象集成測試(OO Integration Test)、面向對象系統測試(OO System Test)。
    面向對象測試類型的另一種劃分:模型測試、類測試(用于代替單元測試)、交互測試(用于代替集成測試)、系統(包括子系統)測試、接收測試、部署測試。
    傳統測試模式與面向對象的測試模式的最主要的區別在于,面向對象的測試更關注對象而不是完成輸入/輸出的單一功能,這樣的話測試可以在分析與設計階段就先行介入,便得測試更好的配合軟件生產過程并為之服務。與傳統測試模式相比,面向對象測試的優點在于:更早地定義出測試用例;早期介入可以降低成本;盡早的編寫系統測試用例以便于開發人員與測試人員對系統需求的理解保持一致;面向對象的測試模式更注重于軟件的實質。
    面向對象測試的過程:(1)指定范圍;(2)指定深度;(3)指定已創建的被測試模塊的基本要求(上一個階段需要提供的接口);(4)以基本模型的內容為輸入來設計測試用例作為評估標準;(5)生成測試覆蓋度量標準;(6)試用測試清單執行靜態分析,確保被測模塊與基本模型的一致性;(7)執行測試用例;(8)如果覆蓋不足以檢測所有的活動,就需要分解測試工作,并且使用傳統測試用例的方式來警醒,或者中斷測試,重新測試傳統測試用例。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: 基礎 軟件測試 知識 雜記

    21/212>

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>