亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

軟件測試基礎-概念篇

難度入門
時長 3小時 2分
學習人數
綜合評分9.57
111人評價 查看評價
9.8 內容實用
9.5 簡潔易懂
9.4 邏輯清晰
  • 按測試階段來分類:單元測試、集成測試、系統測試、驗收測試。

    單元測試:對軟件中的最小可測試單元進行檢查和驗證。(人為規定的、可測試的、最小模塊)

    單元測試原則:1、盡可能保證各個測試用例是互相獨立的。

    2、一般由代碼的開發人員來實施,用以檢驗所開發的代碼功能符合自己的設計要求。

    單元測試益處:1、能盡早發現缺陷。2、有利于重構。3、簡化集成。4、文檔。5、用于設計。

    單元測試的限制:1、不可覆蓋所有的執行路徑,所以不可能保證捕捉到所有路徑的錯誤。2、每一行代碼,一般需要3-5行測試代碼才能完成單元測試。所以存在投入和產出的一個平衡。

    單元測試框架:Xunit(x代表某種意思)例Junit、ntunit(針對.net)、PHPunit、Cppunit(針對c++)

    集成測試定義:是在單元測試的基礎上,測試在將所有的軟件單元按照概要設計規格說明的要求組裝成模塊、子系統或系統的過程中各部分工作是否達到或實現相應技術指標及要求的活動。

    集成測試的主要實施方案:1、Big Bang (也叫一次性集成或者大爆炸)。2、自頂向下:遞增式 。3、自底向上。4、核心系統集成。5、高頻集成(同步開發過程,每隔一斷時間,就會對現有的代碼進行集成)。

    自頂向下、自底向上適合瀑布型系統、核心系統集成、高頻集成適合敏捷開發類的系統。

    集成測試與單元測試的區別:1、測試的對象不同。2、測試的依據不同:單元測試依據詳細設計,集成測試依據概要設計。3、測試的方法不同:單元測試關注是內部的類等,集成測試關注的是接口之間的集成,模塊接口之間的集成。

    系統測試定義:是將經過集成測試的軟件,作為計算機系統的一部分,與系統中其他部分集合起來,在實際運行環境下對計算機系統進行的一系列嚴格有效地測試,以發現軟件潛在的問題,保證系統的正常運行。

    系統測試關注點:1、關注系統本身的使用。2、關注系統與其他相關系統間的聯通。3、關注系統在不同使用壓力下的表現。4、關注系統在真實使用環境下的表現。

    系統測試與集成測試的區別:1、測試對象不同,集成測試是由通過了單元測試的各個模塊所集成起來的構件。系統測試,除了軟件之外,還包括計算機硬件及相關的外圍設備、數據采集和傳輸機構、支持軟件、系統操作人員等整個系統。2、測試時間不同,集成測試介于單元測試和系統測試之間,系統測試在集成測試之后。3、測試內容不同,集成測試,各個單元模塊之間的接口;系統測試,整個系統的功能和性能。4、測試角度不同,集成測試,偏于技術角度的驗證;系統測試,偏于業務角度的驗證。

    驗收測試定義:也稱交付測試。針對用戶需求、業務流程的正式的測試,確定系統是否滿足驗收標準,由用戶、客戶或其他授權機構決定是否接受系統。

    驗收測試細分:1、用戶驗收測試,一般是由開發方移交用戶之前進行的測試。2、運行驗收測試,大多是從運維的層面來看系統是否可以被正常運行,正常維護。3、合同和規范驗收測試,主要是參照約定的規范進行的驗收,也包括一些政府、法律法規等。4、alpha測試,在開發者提供的場景或者環境中來運行,由用戶來運行。5、Beta測試,脫離開發環境,在用戶提供的環境或者場景中測試。(alpha版本、beta版本、release版本是最終可交付的版本)

    敏捷程序:驗收驅動測試

    查看全部
    2 采集 收起 來源:軟件測試階段

    2020-03-26

  • 軟件測試的分類

    查看全部
    0 采集 收起 來源:軟件測試階段

    2020-03-20

  • 軟件測試所遵循的原則:

    1、測試顯示缺陷的存在,但不能證明系統不存在缺陷

    2、窮盡測試是不可能的,應設定及時終止的條件

    ?3、測試應該盡早進行

    4、缺陷具備群集特性

    5、測試的殺蟲劑悖論

    6、測試的二八原則

    7、測試活動依賴于測試背景

    查看全部
    0 采集 收起 來源:軟件測試概要

    2020-03-20

  • 軟件測試的五大要素:質量,人員,資源,流程,技術

    兩個目標:提升測試覆蓋率和提升測試效率

    查看全部
    1 采集 收起 來源:軟件測試概要

    2020-03-20

  • 什么是軟件測試?

    早期定義:軟件測試是對程序能夠按預期運行建立起一種信心 - Bill Hetzel,1973

    經典定義:測試是為發現錯誤而執行程序的過程 - Myers,1979

    IEEE定義(ISO/IEC/IEEE 29119):使用人工或自動的手段來運行或測量軟件系統的過程,以檢驗軟件系統是否滿足規定的要求,并找出與預期結果之間的差異。

    查看全部
    0 采集 收起 來源:軟件測試概要

    2020-03-20

  • 軟件測試的分類:

    http://img1.sycdn.imooc.com//5e745eb100012b6a05440272.jpg

    黑盒測試:優點:簡單易操作,貼近用戶角度。缺點:覆蓋率低,自動化復用率低

    黑盒測試的主要方法:等價類劃分、邊界值分析、錯誤推測、因果圖、正交試驗分析、狀態遷移、流程分析

    白盒測試: 邏輯單位:語句、條件、條件組合、分支、路徑

    優點:思考軟件的實現,理解原理。檢測代碼中的每條分支和路徑。揭示隱藏在代碼中的錯誤。對代碼的測試比較徹底

    缺點:工作量大,成本高。無法檢測代碼中遺漏的路徑和數據敏感性錯誤。不能直接驗證需求的正確性

    白盒測試的主要方法:代碼檢測法、靜態結構分析法、靜態質量度量法、邏輯覆蓋法、基本路徑測試法

    靜態測試



    動態測試

    手工測試

    自動化測試


    查看全部
    2 采集 收起 來源:軟件測試手段

    2020-03-20

  • 單元測試、集成測試、系統測試、驗收測試

    單元測試:開發對自己的代碼進行驗證

    集成測試:單元測試的基礎上進行測試,把多個單元串聯起來測試

    系統測試:對成品進行功能、性能、壓力等進行測試

    驗收測試:

    查看全部
    0 采集 收起 來源:軟件測試階段

    2020-03-17

  • V模形
    查看全部
    0 采集 收起 來源:軟件測試模式

    2020-03-11

  • 兼容性測試:

    軟件本身的兼容性、不同平臺下的兼容性、在運行設備下的兼容性、軟件互操作性(指的是軟件內部不同功能操作是否兼容 & 與其他軟件是否兼容,比如與微信是否兼容,與微信不兼容基本上就沒用了)

    對web應用,還有瀏覽器兼容性,因為瀏覽器的內核不同

    瀏覽器兼容性測試工具:BrowserShots(該網站輸入url值,可以看不同平臺下的顯示)


    查看全部
  • 安全測試:

    是否符合產品安全需求和質量標準。

    滲透測試:

    通過模擬對軟件系統的惡意攻擊行為來評估系統安全性的一種測試,與黑客不同于,黑客未授權,而且最后還會抹掉記錄。

    滲透測試 VS 安全測試

    ?????????????????????????攻————–防

    ?????????????????????????點————–面

    可以查看OWASP網站,關注網站中的OWASP Top10和Test Guide

    安全測試工具:

    APPscan(針對web應用的漏洞掃描)、Webinspect(類似APPscan)、Nessus(針對服務器主機類)、Nmap(端口嗅探工具)、MetaSploit(攻擊框架)、WebScarab(代理劫持)、Fortify(白盒測試,代碼靜態分析)、W3AF(針對web應用)


    查看全部
  • 性能測試:

    負載測試、壓力測試、穩定性測試

    性能指標:

    并發用戶數VU、每秒事務數TPS、系統響應時間、設備性能

    自動化測試工具:

    LoadRunner、Silkperformer、Jmeter、WebLoad、Apache Bench、LoadUI

    靜態性能評估:

    對Web應用的頁面進行靜態分析,并給出評估結果的性能分析方法。工具有YSlow、PageSpeed。他們是瀏覽器插件,評級靜態網頁的標準有14個,減少HTTP請求之類的。

    應用性能管理(APM):

    提供對系統的實時監控以實現性能管理、故障管理的解決方案。比如聽云。


    查看全部
  • 功能測試(最主要)、性能測試、兼容性測試、部署測試、易用性測試、文檔測試、本地化測試、安全測試、無障礙測試、可靠性測試

    功能測試:

    對提供給用戶的功能進行測試。

    針對的問題:

    功能錯誤或遺漏、界面問題、軟件本身性能錯誤、數據及訪問錯誤初始化及終止錯誤。

    功能自動化測試工具:

    QTP(基于關鍵字驅動)現在其實已經用的很少了、winrunner; silkTest; Rational robot; selenium; Watir; Sikuli


    查看全部
    1 采集 收起 來源:軟件測試類型

    2020-03-06

  • 軟件測試模式

    按測試模式來分類

    傳統的瀑布模型:

    按順序的 下落的

    每一個階段 上一個輸出 一個輸入

    瀑布模型的優缺點

    大量文檔

    軟件測試的地位和價值 研發的后期

    V模型

    W模型 (雙V模型)

    軟件開發各個階段

    需求 設計 都要測試

    盡早發現問題

    及時了解項目的風險

    需求 設計 編碼 仍是串行的

    線性的 測試 開發 (迭代不能很好支持)

    X模型

    H模型

    并發執行

    軟件 設計 編碼 測試 進展


    查看全部
    0 采集 收起 來源:軟件測試模式

    2020-03-06

  • 軟件測試手段

    1、分類

    ?????根據測試可見度:黑盒、白盒、灰盒

    ?????狀態:靜態、動態

    ?????測試方式:手工、自動化

    黑盒:

    spacer.gif?

    優點:

    (1)容易實施,無需關注內部 ????

    (2)更貼近用戶視角

    缺點:

    (1)測試覆蓋率較低,一般只有40% ????

    (2)黑盒自動化測試復用率低,維護成本較高

    主要測試什么?

    (1)不正確or遺漏功能 ????

    (2)接口上,輸入輸出是否正確 ????

    (3)是否有數據結構錯誤或外部信息(比如數據文件)訪問錯誤 ????

    (4)系統性能是否滿足要求

    ?主要設計方法:

    (1)等價類劃分法 ????

    (2)邊界值分析法(比較重點關注) ???

    (3)錯誤推斷法 ????

    (4)因果圖法 ????

    (5)正交試驗分析法 ????

    (6)狀態遷移圖法 ????

    (7)流程分析法

    spacer.gif?

    白盒:結構化測試,邏輯測試,透明測試

    spacer.gif?

    主要的邏輯單位:

    spacer.gif?

    優點:

    (1)迫使測試人員理解軟件原理 ????

    (2)覆蓋率較高,可以檢測每條分支和路徑 ????

    (3)能發現隱藏在代碼的錯誤 ????

    (4)對代碼測試比較徹底

    缺點:

    (1)成本高 ????

    (2)無法檢測遺漏路徑 ????

    (3)無法檢測數據敏感性錯誤 ????

    (4)無法直接驗證需求正確性

    ?主要測試方法:

    (1)代碼檢測法 ????

    (2)靜態結構分析法 ????

    (3)靜態質量度量法 ????

    (4)邏輯覆蓋法(6種):語句、路徑、判定、條件、判定/條件、條件組合覆蓋。 ????

    (5)基本路徑測試法

    灰盒測試:介于黑、白盒測試之間的,關注輸出對于輸入的正確性,同時也關注內部表現。

    靜態測試:

    不執行被測程序,通過評審軟件文檔、代碼、程序復雜度、檢查是否符合編程標準,來發現程序不足之處。

    有些白盒是靜態測試。

    方法:互審:程序員互相檢查;走查:小組集體檢查;會議:召開會議檢查

    動態測試:

    運行被測程序,比較運行結果與預期結果,分析運行效率、正確性、健壯性等。

    黑盒大部分是動態測試。

    手工測試:眾包測試、探索式測試

    優點:容易發現缺陷,容易實施、創造性、靈活性

    缺點:不一致性、可靠性低、依賴人力資源、重復測試效率低、覆蓋量不容易度量

    自動化測試:

    用單獨的測試工具軟件,控制測試的自動化執行,并對預期和結果進行自動檢查。

    單元、接口、性能多用該測試。

    優點:高效高速、準確可靠、高復用性、覆蓋量容易度量

    缺點:機械、發現缺陷率低、一次性投入較大

    spacer.gif?


    查看全部
    0 采集 收起 來源:軟件測試手段

    2020-03-06

  • 軟件測試階段

    一:軟件測試的分類

    按測試階段來分類

    單元測試 集成測試

    系統測試 驗收測試

    二:單元測試

    什么是單元測試?

    對軟件中的最小可測試單元進行檢查和驗證。

    最小可測試單元

    C語言可以是函數 Java面向對象語言可以看作單元為每一個類

    針對一些有界面的功能軟件 ,單元可以看作具體的功能項 菜單項目

    單元測試的原則

    1、盡可能保證各個測試用例是相互獨立的

    2、一般由代碼的開發人員來實施,用來檢驗所開發的代碼功能能符合自己的設計要求。

    單元測試的限制:1、不可能覆蓋所有的執行路徑,所以不可能保證捕捉到所有路徑的錯誤;2、每一行代碼,一般需要3到5行測試代碼才能完成單元測試。所以存在投入和產出的一個平衡。

    集成測試:是在單元測試的基礎上,測試在將所有的軟件單元按照概要設計規格說明的要求組裝成模塊、子系統或系統的過程中各部分工作是否達到或實現相應技術指標及要求的活動。

    集成測試的主要實施方案:1、Big Bang;2、自頂向下;3、自底向上;4、核心系統集成;5、高頻集成。

    集成測試&單元測試:1、測試的對象不同;2、測試的依據不同;3、測試的方法不同。

    系統測試:是將經過集成測試的軟件,作為計算機系統的一個部分,與系統中其他部分結合起來,在實際運行環境下對計算機系統進行的一系列嚴格有效地測試,以發現軟件潛在的問題,保證系統的正常運行。

    系統測試的關注點:1、關注系統本身的使用;2、關注系統與其他相關系統間的連通;3、關注系統在不同使用壓力下的表現;4、關注系統在真實使用環境下的表現。

    系統測試&集成測試:

    1、測試對象:集成測試:由通過了單元測試的各個模塊所集成起來的構件。系統測試:除了軟件之外,還包括計算機硬件及相關的外圍設備、數據采集和傳輸機構、支持軟件、系統操作人員等整個系統。

    2、測試時間:集成測試介于單元測試和系統測試之間的測試;系統測試在集成測試之后。

    3、測試內容:集成測試:各個單元模塊之間的接口;系統測試:整個系統的功能和性能。

    4、測試角度:集成測試:偏于技術角度的驗證;系統測試:偏于業務角度的驗證。

    驗收測試:也稱交付測試。針對用戶需求、業務流程的正式的測試,確定系統是否滿足驗收標準,由用戶、客戶或其他授權機構決定是否接受系統。(細分:用戶驗收測試、運行驗收測試、合同和規范驗收測試、alpha測試、Beta測試)

    查看全部
    0 采集 收起 來源:軟件測試階段

    2020-03-06

舉報

0/150
提交
取消
課程須知
本門課程適合有志于從事軟件測試或在校軟件專業的同學學習, 最好了解一些軟件工程的基本概念,對軟件測試這個職業有一些最基本的認識。(隨堂資料:http://img1.sycdn.imooc.com//down/57bd4d2f0001474e00000000.rar)
老師告訴你能學到什么?
通過學習本門課程,能夠理清我們接觸到得各種不同的軟件測試概念以及它們的主要作用和適用場景,可以更加理解軟件測試這個職業的作用和對軟件產品的意義。

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!