<pre id="ff7yo"></pre>

      <form id="ff7yo"><legend id="ff7yo"></legend></form>
        <nav id="ff7yo"><listing id="ff7yo"></listing></nav><nav id="ff7yo"></nav>

        <nav id="ff7yo"><listing id="ff7yo"></listing></nav>
        <small id="ff7yo"></small><nav id="ff7yo"><dd id="ff7yo"></dd></nav>
      1. <nav id="ff7yo"></nav>
          <form id="ff7yo"></form><nav id="ff7yo"></nav>
          <nav id="ff7yo"></nav>
          <sub id="ff7yo"></sub>
          更多課程 選擇中心

          軟件測試培訓
          達內IT學院

          400-111-8989

          你知道軟件測試基礎理論有哪些嗎?

          • 發布:軟件測試培訓
          • 來源:行業投放廣告技巧與策略
          • 時間:2019-05-09 13:47

          軟件測試基礎知識

          1、軟件測試的含義(概念)——什么是軟件測試

          2、軟件測試的目的(意義)——為什么要做軟件測試

          3、軟件測試的對象(測什么)——軟件測試是測什么

          4、軟件測試的分類——有哪些類型的軟件測試

          5、軟件測試的原則——軟件測試要遵循什么原則

          6、軟件測試的步驟——如何一步一步做軟件測試

          7、軟件測試的質量——從哪幾個方面評估軟件的質量

          8、軟件測試的風險——可預見的、不可預見的

          9、軟件測試結束的標準——哪些指標達標

          一、軟件測試的含義

          1、軟件測試的經典定義:在規定的條件下對程序(文檔、數據、程序)進行操作,以發現錯誤,對軟件質量進行評估。

          2、軟件測試范圍是對軟件形成中的文檔、數據以及程序進行的測試,而不僅僅是對程序進行的測試。

          3、軟件測試的重要性:60%以上的軟件錯誤并不是程序錯誤,而是分析和設計錯誤,因此做好軟件需求和設計階段的測試工作就顯得非常重要。

          二、軟件測試的目的

          測試的目的不僅僅是為了發現軟件缺陷與錯誤,而且也是對軟件質量進行度量和評估,以提高軟件的質量。

          測試是程序的執行過程,目的在于發現錯誤;

          一個好的測試用例在于能發現至今未發現的錯誤;

          一個成功的測試是發現了至今未發現的錯誤的測試。

          三、軟件測試的對象

          1、根據軟件的定義,軟件包括程序、數據、文檔,所以軟件測試并不僅僅是程序測試。軟件測試貫穿于整個軟件生命周期中。

          2、由于在整個軟件生命周期中,各階段有不同的測試對象,形成了不同開發階段的不同類型的測試。需求分析、概要設計、詳細設計以及程序編碼等各階段產生的文檔,包括需求規格說明、概要設計規格說明、詳細設計規格說明以及源程序,都應作為“軟件測試”的對象。

          四、軟件測試的分類——從不同的角度進行分類

          1、根據開發階段劃分為:單元測試、集成測試、系統測試、確認測試、驗收測試

          ——什么是單元測試

          單元測試(unit testing),是指對軟件中的最小可測試單元進行檢查和驗證。

          對于單元測試中單元的含義,一般來說,要根據實際情況去判定其具體含義,如C語言中單元指一個函數,Java里單元指一個類,圖形化的軟件中可以指一個窗口或一個菜單等。

          總的來說,單元就是人為規定的最小的被測功能模塊。單元測試是在軟件開發過程中要進行的最低級別的測試活動,軟件的獨立單元將在與程序的其他部分相隔離的情況下進行測試。

          單元測試包含內容:--入口和出口函數、--輸入和輸出信息、--錯誤處理信息、--部分邊界數值測試

          ——什么是集成測試

          集成測試,也叫組裝測試或聯合測試。

          在單元測試的基礎上,將所有模塊按照設計要求(如根據結構圖〕組裝成為子系統或系統,進行集成測試。

          實踐表明,一些模塊雖然能夠單獨地工作,但并不能保證連接起來也能正常的工作。程序在某些局部反映不出來的問題,在全局上很可能暴露出來,影響功能的實現。

          集成測試包括兩種方法:--非增量式集成 --增量式集成:自頂向下增量式測試、自底向上增量式測試

          ——什么是確認測試

          確認測試的目的是向未來的用戶表明系統能夠像預定要求那樣工作。

          經集成測試后,已經按照設計把所有的模塊組裝成一個完整的軟件系統,接口錯誤也已經基本排除了,接著就應該進一步驗證軟件的有效性,這就是確認測試的任務,即軟件的功能和性能如同用戶所合理期待的那樣。

          確認測試范圍:--文檔、--源碼、--版本、--模塊、--人員、--環境、--工具

          ——什么是系統測試(System Testing)

          將已經確認的軟件、計算機硬件、外設、網絡等其他元素結合在一起,進行信息系統的各種組裝測試和確認測試.

          系統測試是針對整個產品系統進行的測試

          目的:驗證系統是否滿足了需求規格的定義,找出與需求規格不符或與之矛盾的地方,從而提出更加完善的方案

          系統測試發現問題之后要經過調試找出錯誤原因和位置,然后進行改正。是基于系統整體需求說明書的黑盒類測試,應覆蓋系統所有聯合的部件。

          系統測試對象不僅僅包括需測試的軟件,還要包含軟件所依賴的硬件、外設甚至包括某些數據、某些支持軟件及其接口等。

          系統測試范圍:--功能、--界面、--性能、--安全性、--安裝、--卸載、--易用性、--兼容性等

          ——什么是驗收測試

          它是一項確定產品是否能夠滿足合同或用戶所規定需求的測試。這是管理性和防御性控制

          主要確認軟件是否按合同要求進行工作,既是否滿足軟件需求規格說明書中的要求。

          驗收測試分類:

          非正式的驗收測試

          --А(alpha)測試:軟件開發公司組織內部人員模擬各類用戶行為對即將上市的產品進行測試。

          --?(beta)測試:軟件開發公司組織各方面的的典型客戶在日常工作中實際使用,并要求用戶報告異常情況、提出改進意見,然后公司再進行完善。

          正式的驗收測試

          有正規的測試過程,需要制定測試計劃、定義測試方案、選擇測試用例,進行測試,結果提交。著重考慮軟件是否滿足合同規定的所有功能和性能,文檔資料是否完整、準確,人機界面和其他方面。

          2、根據是否運行程序劃分:靜態測試、動態測試

          ——什么是靜態測試

          不運行被測試的軟件,而只是靜態的檢查代碼、界面或者文檔

          方式名稱執行人員檢查內容檢查過程

          桌面檢查程序員對源程序代碼進行分析、檢驗,并補充相關的文檔,發現程序中的錯誤

          代碼審查程序員和測試員組成的審查小組通過閱讀、討論和爭議,以程序進行靜態分析的過程第一步:小組成員提前閱讀設計規格書、程序文本等相關文檔

          第二步:召開程序審查會,開發人員讀程序,審查小組討論、發現、解決問題

          ——什么是動態測試

          實際運行被測試的軟件,輸入相應的測試數據,檢查實際的輸出結果是否和預期結果相一致的過程。

          3、根據是否查看代碼劃分:白盒測試、灰盒測試、黑盒測試

          ——什么是白盒測試

          又稱為結構測試。著重于程序內部結構和算法,不關心功能和性能指標

          ——什么是灰盒測試

          介于白盒和黑盒測試之間,基于程序運行時刻的外部表現同時又結合程序內部邏輯結構來設計用例,執行程序并采集程序路徑執行信息和外部用戶接口結果的測試技術。

          ——什么是黑盒測試

          把軟件看成一個黑盒子,不管內部邏輯和內部特性,只依據規格說明書檢查程序的功能是否符合功能說明

          備注:

          灰盒測試有啥缺點?

          ◇不適用于簡單的系統——所謂的簡單系統,就是簡單到總共只有一個模塊。由于灰盒測試關注于系統內部模塊之間的交互。如果某個系統簡單到只有一個模塊,那就沒必要進行灰盒測試了。

          ◇對測試人員的要求比黑盒測試高——從上面的介紹來看,灰盒測試要求測試人員清楚系統內部由哪些模塊構成,模塊之間如何協作。因此,對測試的要求就提高了。因此,會帶來一定的培訓成本。不過捏,依照俺的經驗,培訓難度不大。稍微有點基礎的測試人員,都可以在短期培訓之后勝任。

          ◇不如白盒測試深入——顯然,灰盒不如白盒那么深入。不過捏,考慮到灰盒測試相比白盒測試有顯著的成本優勢,該缺點不是太明顯。

          4、其他分類:回歸測試、冒煙測試、隨機測試、敏捷測試

          ——什么是回歸測試

          對軟件的新版本測試時,重復執行上一個版本測試時使用的測試用例。防止出現“以前應用沒有的問題現在出問題了” 。

          1、回歸測試是指重復以前的全部或部分的測試用例。

          2、新加入測試的模組,可能對其他模組產生副作用,故須進行某些程度的回歸測試。

          3、回歸測試的重心,以關鍵性模組為核心。

          ——什么是冒煙測試(BVT測試(Build Verification Test ))

          冒煙測試的對象是每一個新編譯需要正式測試的版本,目的是確認軟件基本功能正常,可以進行后續的正式測試工作。

          ——什么是隨機測試(又名猴子測試)

          測試數據是隨機產生的,在測試用例之外。只能作為一個測試的補充。

          ——什么是敏捷測試(敏捷開發引發)

          首先敏捷測試(Agile testing)是測試的一種,原有測試定義中通過執行被測系統發現問題,通過測試這種活動能夠提供對被測系統提供度量等概念還是適用的。

          敏捷測試是遵循敏捷**的一種測試實踐:

          1、強調從客戶的角度,即是從使用系統的用戶的角度,來測試系統。

          2、重點關注持續迭代地測試新開發的功能,而不再強調傳統測試過程中嚴格的測試階段。

          3、建議盡早開始測試,一旦系統某個層面可測,比如提供了模塊功能,就要開始模塊層面的單元測試,同時隨著測試深入,持續進行回歸測試保證之前測試過內容的正確性。

          敏捷測試的特點:高度迭代,有周期性,并且能夠及時、持續地響應客戶的頻繁反饋。

          五、軟件測試的原則

          基于測試是為了尋找軟件的錯誤與缺陷,評估與提高軟件質量,因此我們提出了這樣的一組測試原則,如下所示。

          1、所有的軟件測試都應追溯到用戶需求——軟件測試是基于需求做的,一定要符合需求

          2、應當把“盡早地和不斷地進行軟件測試”作為軟件測試者的座右銘——越早發現問題越好

          3、完全測試是不可能的,測試需要終止。

          4、測試無法顯示軟件潛在的缺陷。

          5、充分注意測試中的群集現象。

          6、程序員應避免檢查自己的程序。

          7、盡量避免測試的隨意性

          六、軟件測試的流程(步驟)——理論流程,具體根據實際情況而定,總體一致

          1、需求分析——閱讀需求文檔,看到底要開發什么樣的軟件、功能,形成自己的思路

          2、需求評審——針對需求文檔的說明評估需求合不合理,可不可以優化,有沒有歧義等

          3、測試計劃——測試計劃包括如下:

          測試項目簡介、 需要測試的特征、 不需要測試的特征、 測試的方法(測試人員、測試工具、測試流程、測試類型)、 測試環境(軟件、硬件、網絡)、 測試開始條件和結束條件、 測試者的任務、培訓

          測試進度與跟蹤、 測試風險與解決、 本測試計劃的審批與變更方式

          4、測試用例

          ——編寫黑盒測試用例的方法:等價類、邊界值、錯誤推測方法、判定表、場景法、因果圖(了解)

          ——用例的要素:用例ID、名稱、用例等級、預置條件、操作步驟、預期結果、實際結果

          ——缺陷的要素(Bug單、問題單):缺陷的ID、名稱、嚴重級別、優先級 狀態、簡要描述、重現步驟、預期結果、實際結果

          5、用例評審——用例的評審標準:準確全面覆蓋需求、簡潔明了,沒有冗余,可操作性強

          6、搭建測試環境

          ——有開發環境、測試環境(測試人員搭建)、用戶環境

          --硬件環境:PC客戶端、Server服務器端

          --軟件環境:服務器操作系統(linux、Unix等)、數據庫(Mysql、Oracle)、中間件(也叫應用服務器,Tomcat、Apache、IIS、WAS等)、編程語言(Java、C、C++、PHP、Python等)、瀏覽器(谷歌、IE、火狐等)

          7、測試執行——照著用例一步一步的執行

          8、回歸測試——開發修改完問題單(Bug)后走回給測試進行回歸測試驗證是否修改成功

          9、測試報告

          ——數據的統計:人力設備時間的統計,用例覆蓋率的統計、用例執行率統計,缺陷的統計(數量,嚴重級別,來源、類型),遺留缺陷及存在的風險和規避措施,對測試對象的評估

          測試結論。

          七、軟件測試的質量

          軟件質量就是“軟件與明確的和隱含的定義的需求相一致的程度”;

          明確的需求指:軟件符合明確敘述的功能和性能需求、文檔中明確描述的開發標準;

          隱含的需求指:所有專業開發的軟件都應具有的隱含特征的程度,比如:符合行業標準。

          八、軟件測試的風險

          1、軟件測試中的軟件風險分析是根據預測軟件將出現的風險,制定軟件測試計劃并排列優先等級,風險分析是對軟件中潛在的問題進行識別、估計和評價的過程。

          2、風險也包括進度風險、質量風險、人員風險、變更風險、成本風險等

          九、軟件測試的結束標準

          1、需求覆蓋率100%

          2、用例執行率100%

          3、陷遺留率不超過2%

          4、其他的相關質量標準達到預期標準

          預約申請免費試聽課

          填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

          上一篇:軟件測試需要學什么?
          下一篇:軟件測試與軟件調試有什么區別?

          參加軟件測試培訓靠譜不?

          軟件測試培訓都學寫什么?

          軟件測試工程師需要我們掌握什么技術?

          學習軟件測試的優勢是什么

          • 掃碼領取資料

            回復關鍵字:視頻資料

            免費領取 達內課程視頻學習資料

          • 視頻學習QQ群

            添加QQ群:1143617948

            免費領取達內課程視頻學習資料

          Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

          選擇城市和中心
          黑龍江省

          吉林省

          河北省

          陜西省

          湖南省

          貴州省

          云南省

          廣西省

          海南省

          神马影院-战旗影院-首播影院-新视觉影院-在线观看中文字幕dvd播放 百度 好搜 搜狗
          <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>