軟件測(cè)試入門(mén)①——測(cè)試執(zhí)行【講義】

六天入門(mén)軟件測(cè)試①——測(cè)試執(zhí)行講義

Day 1 測(cè)試執(zhí)行講義

軟件測(cè)試工作的參與是從執(zhí)行開(kāi)始的。開(kāi)始從事軟件測(cè)試以后,第一個(gè)接觸的工作內(nèi)容一般都是執(zhí)行。那么什么是執(zhí)行呢?

測(cè)試執(zhí)行,是按照測(cè)試設(shè)計(jì)的要求,通過(guò)執(zhí)行測(cè)試用例,對(duì)比預(yù)期結(jié)果與設(shè)計(jì)結(jié)果的過(guò)程。

從這里開(kāi),引出了新的內(nèi)容:測(cè)試用例。實(shí)際上整個(gè)測(cè)試執(zhí)行是圍繞著測(cè)試用例進(jìn)行的。我們這篇講義解決的主要問(wèn)題是:

  • 在項(xiàng)目中,請(qǐng)問(wèn)你執(zhí)行過(guò)什么樣的測(cè)試?
  • 在執(zhí)行測(cè)試的過(guò)程中,你遇到過(guò)什么問(wèn)題?如何解決的?
  • 如何高效的執(zhí)行測(cè)試?
  • 在項(xiàng)目中,請(qǐng)問(wèn)你發(fā)現(xiàn)過(guò)什么樣的缺陷?

0 主要內(nèi)容

  • 1 P1_禪道系統(tǒng)使用
  • 2 T1_測(cè)試執(zhí)行
  • 3 T3_軟件缺陷

1 P1_禪道系統(tǒng)使用

“工欲善其事,必先利其器”,在任何時(shí)候,任何情況下,這句亙古不變的道理,都是來(lái)幫助我們前行的方法。軟件測(cè)試也不例外,測(cè)試活動(dòng)是依靠工具進(jìn)行的。禪道項(xiàng)目管理軟件是『王春生』大神的作品,國(guó)產(chǎn)開(kāi)源項(xiàng)目管理軟件的佼佼者。不得不說(shuō),更多的禪道的使用者是軟件測(cè)試人員,理由其實(shí)很“歷史”,開(kāi)發(fā)人員有自己的管理系統(tǒng),并且該系統(tǒng)不支持測(cè)試管理。

是的,中國(guó)的不長(zhǎng)的軟件開(kāi)發(fā)歷史上,確實(shí)是以“開(kāi)發(fā)”為重的,等到越來(lái)越多的公司和團(tuán)隊(duì)意識(shí)到軟件測(cè)試的重要性的時(shí)候,其實(shí)已經(jīng)不用往“開(kāi)發(fā)的管理系統(tǒng)”上再開(kāi)發(fā)添加測(cè)試功能了,因?yàn)橛辛藢iT(mén)管理測(cè)試的軟件,例如:禪道。當(dāng)然也有 Bugfree,QC/ALM,JIRA,Mantis 等,國(guó)產(chǎn)管理系統(tǒng)中,禪道算是比較完整的方案,當(dāng)然還有一些其他的方案,名氣最大的應(yīng)該是騰訊公司的 TAPD,以及 Testin 的 BugOut,還有今天剛剛看到的飛蛾(http://feie.work),這里我們還是專門(mén)聊禪道。

還是要說(shuō)一句的是,希望技術(shù)團(tuán)隊(duì)的開(kāi)發(fā)人員也盡早能夠用上禪道,如果測(cè)試人員在用禪道的話。

1.1 禪道部署

首先,要用禪道,我們要做的事情是需要安裝部署。禪道是一個(gè) PHP 開(kāi)發(fā)的 Web 系統(tǒng),需要一個(gè)支持 PHP 的 Web 服務(wù)器,建議用 Apache 或者 Nginx,迫不得已用 IIS 也可以。安裝步驟如下:

  1. 安裝 xampp
  2. 官網(wǎng)下載禪道源碼包,最新的源碼包為 zentaopms.10.4.stable.zip(http://dl.cnezsoft.com/zentao/10.4/ZenTaoPMS.10.4.stable.zip
  3. 復(fù)制源碼包到 xampp/htdocs 目錄中,并解壓出來(lái),形成 xampp/htdocs/zentaopms 文件目錄
  4. 啟動(dòng) apache 和 MySQL
  5. 訪問(wèn) http://localhost/zentaopms/www 按照提示,完成安裝。
  6. 也可以不使用 xampp,例如在 Linux 中安裝,或者用 WampServer、寶塔、PhpStudy、UPUPW 等都可以完成禪道的部署。當(dāng)然與可以部署在 阿里云服務(wù)器、騰訊云服務(wù)器、天翼云服務(wù)器等。具體的安裝步驟截圖等就不再這里贅述了。

1.2 禪道使用

如果禪道部署好了,可以使用 http://localhost/zentaopms/www 訪問(wèn)禪道

如果禪道尚未部署好,也可以使用 http://demo.zentao.net/ 禪道官方提供的體驗(yàn)版本訪問(wèn)禪道

初次使用禪道,我們需要使用的地方是“測(cè)試”模塊,以及“用例”和“Bug”兩個(gè)功能。

  • 測(cè)試模塊

    image.png
  • 用例和Bug功能

    image.png

1.3 創(chuàng)建用例

測(cè)試用例,是“測(cè)試執(zhí)行用到的例子”,英文是 Test Case,有時(shí)候簡(jiǎn)寫(xiě) TC,或者 case 等。

我們通過(guò)禪道的測(cè)試用例添加頁(yè)面,來(lái)分析測(cè)試用例的組成和編寫(xiě)。

image.png

主要包括以下幾個(gè)部分:

  1. 標(biāo)題:一般包括編號(hào)和描述,編號(hào)是用例的識(shí)別號(hào),描述是用例的主要涉及內(nèi)容。
  2. 步驟:用例執(zhí)行的每一步
  3. 預(yù)期:用例執(zhí)行的每一步對(duì)應(yīng)的預(yù)期結(jié)果
  4. 級(jí)別:一般為①、②、③、④,默認(rèn)一般選擇③。級(jí)別越小,越優(yōu)先執(zhí)行。

一個(gè)用例的栗子如下:

image.png

用例的詳情

image.png

步驟和期望

image.png

2 T1_測(cè)試執(zhí)行

2.1 測(cè)試執(zhí)行的概述

測(cè)試執(zhí)行是對(duì)測(cè)試實(shí)現(xiàn)(測(cè)試用例完成)后的進(jìn)一步測(cè)試過(guò)程,通過(guò)對(duì)測(cè)試用例的執(zhí)行,從而驗(yàn)證產(chǎn)品的質(zhì)量。

測(cè)試執(zhí)行有三個(gè)要點(diǎn):

  • 測(cè)試用例的執(zhí)行,在項(xiàng)目經(jīng)理(開(kāi)發(fā)經(jīng)理)提測(cè)以后進(jìn)行。
  • 測(cè)試用例的執(zhí)行,需要指定測(cè)試版本
  • 測(cè)試用例的執(zhí)行得到的缺陷,需要測(cè)試工程師的分析與跟蹤

測(cè)試執(zhí)行的核心內(nèi)容:①編寫(xiě)測(cè)試用例,②準(zhǔn)備測(cè)試數(shù)據(jù),③執(zhí)行測(cè)試用例

2.2 測(cè)試場(chǎng)景與測(cè)試執(zhí)行

測(cè)試場(chǎng)景,Test Scenario,是實(shí)際項(xiàng)目中最重要的測(cè)試部分之一。事實(shí)上,測(cè)試場(chǎng)景是用戶行為的描述。測(cè)試執(zhí)行最靠譜的方式就是按照測(cè)試場(chǎng)景執(zhí)行。步驟如下:

  1. 分析并列出每一個(gè)測(cè)試場(chǎng)景
  2. 對(duì)每一個(gè)測(cè)試場(chǎng)景編寫(xiě)測(cè)試用例
  3. 對(duì)每一個(gè)用例準(zhǔn)備測(cè)試數(shù)據(jù)
  4. 然后執(zhí)行每一個(gè)用例

2.3 測(cè)試執(zhí)行的結(jié)果

測(cè)試執(zhí)行的結(jié)果一般來(lái)說(shuō)有兩種:執(zhí)行通過(guò)和執(zhí)行失敗

  • 執(zhí)行通過(guò),PASS:
    • 開(kāi)發(fā)人員沒(méi)錯(cuò)
    • 測(cè)試用例安裝準(zhǔn)備好的數(shù)據(jù),可以進(jìn)行每一步,并且每一步的結(jié)果都是和預(yù)期一致。
  • 執(zhí)行失敗,F(xiàn)AIL:
    • 開(kāi)發(fā)人員錯(cuò)了
    • 測(cè)試用例執(zhí)行過(guò)程中的某一步,結(jié)果與預(yù)期不要一致

有些時(shí)候,測(cè)試執(zhí)行的結(jié)果還有一種:執(zhí)行異常

  • 執(zhí)行異常,ERROR:
    • 測(cè)試人員錯(cuò)了
    • 用例錯(cuò)誤,用例的步驟不對(duì),用例的步驟無(wú)法執(zhí)行。

3 T3_軟件缺陷

3.1 軟件的質(zhì)量需求

  1. 軟件質(zhì)量的定義: 質(zhì)量是反映實(shí)體(產(chǎn)品、過(guò)程或活動(dòng)等)滿足明確和隱含需要的能力的特性總和。
  2. 軟件質(zhì)量的管理體系
    1. ISO9001
    2. CMM:Capability Maturity Model,能力成熟度模型
  3. 軟件質(zhì)量的模型
    • 功能性:是指當(dāng)軟件在指定條件下使用,軟件產(chǎn)品滿足明確和隱含要求功能的能力。
      • 適合性:是指軟件產(chǎn)品與指定的任務(wù)和用戶目標(biāo)提供一組合適的功能的能力。
      • 準(zhǔn)確性:是指軟件產(chǎn)品具有所需精確度的正確或相符的結(jié)果及效果的能力。
      • 互操作性:是指軟件產(chǎn)品與一個(gè)或多個(gè)規(guī)定系統(tǒng)進(jìn)行交互的能力。
      • 保密安全性:是指軟件產(chǎn)品保護(hù)信息和數(shù)據(jù)的能力,以使未授權(quán)的人員或系統(tǒng)不能閱讀或修改這些信息和數(shù)據(jù),但不拒絕授權(quán)人員或系統(tǒng)對(duì)其的訪問(wèn)。
      • 功能依從性:是指軟件產(chǎn)品依附與同功能性相關(guān)的標(biāo)準(zhǔn)、約定或法規(guī)以及類似規(guī)定的能力。
    • 可靠性:在指定條件下使用時(shí),軟件產(chǎn)品維持規(guī)定的性能級(jí)別的能力。
      • 成熟性:是指軟件產(chǎn)品避免因軟件中錯(cuò)誤發(fā)生而導(dǎo)致失效的能力。
      • 容錯(cuò)性:是指在軟件發(fā)生故障或違反指定接口的情況下,軟件產(chǎn)品維持規(guī)定的性能級(jí)別的能力。
      • 易恢復(fù)性:是指在失效發(fā)生的情況下,軟件產(chǎn)品重建規(guī)定的性能級(jí)別并恢復(fù)受直接影響的數(shù)據(jù)的能力。
      • 可靠性依從性:是指軟件產(chǎn)品依附與同可靠性相關(guān)的標(biāo)準(zhǔn)、約定或法規(guī)以及類似規(guī)定的能力。
    • 易用性:是指在指定條件下使用時(shí),軟件產(chǎn)品被理解、學(xué)習(xí)、使用和吸引用戶的能力。
      • 易理解性:是指軟件產(chǎn)品使用戶能理解軟件產(chǎn)品是否合適以及如何能將軟件用于特定的任務(wù)和使用環(huán)境的能力。
      • 易學(xué)性:是指軟件產(chǎn)品使用戶能學(xué)習(xí)它的能力。
      • 易操作性:是指軟件產(chǎn)品使用戶能操作和控制它的能力。
      • 吸引性:是指軟件產(chǎn)品吸引用戶的能力。
      • 易用性依從性:是指軟件產(chǎn)品依附與同易用性相關(guān)的標(biāo)準(zhǔn)、約定、風(fēng)格指南或法規(guī)以及類似規(guī)定的能力。
    • 效率:是指在規(guī)定條件下,相對(duì)于所用資源的數(shù)量,軟件產(chǎn)品可提供適當(dāng)?shù)男阅艿哪芰Α?
      • 時(shí)間特性:是指在規(guī)定條件下,軟件產(chǎn)品執(zhí)行其功能時(shí),提供適當(dāng)?shù)捻憫?yīng)時(shí)間和處理時(shí)間以及吞吐率的能力。
      • 資源利用性:是指在規(guī)定條件下,軟件產(chǎn)品執(zhí)行其功能時(shí),提供合適的數(shù)量和類型的資源的能力。
      • 效率依從性:是指軟件產(chǎn)品依附與同效率相關(guān)的標(biāo)準(zhǔn)或約定的能力。
    • 維護(hù)性:是指軟件產(chǎn)品可被修改的能力,修改可能包括修正,改進(jìn)或軟件適應(yīng)環(huán)境、需求和功能規(guī)格說(shuō)明中的變化。
      • 易分析性:是指軟件產(chǎn)品診斷軟件中的缺陷或失效原因,以及判定待修改的部分的能力。
      • 易改變性:是指軟件產(chǎn)品使指定的修改可以被實(shí)現(xiàn)的能力。
      • 穩(wěn)定性:是指軟件產(chǎn)品避免由于軟件修改而造成意外結(jié)果的能力。
      • 易測(cè)試性:是指軟件產(chǎn)品使已修改軟件能被確認(rèn)的能力。
      • 維護(hù)性依從性:是指軟件產(chǎn)品依附與同維護(hù)性相關(guān)的標(biāo)準(zhǔn)或約定的能力。
    • 可移植性:是指軟件產(chǎn)品從一種環(huán)境遷移到另一種環(huán)境的能力。
      • 適應(yīng)性:是指軟件產(chǎn)品無(wú)需采用有別于為考慮該軟件的目的而準(zhǔn)備的活動(dòng)或手段,就可能適應(yīng)不同的指定環(huán)境的能力。
      • 易安裝性:是指軟件產(chǎn)品在指定環(huán)境中被安裝的能力。
      • 共存性:是指軟件產(chǎn)品在公共環(huán)境中同與其分享公共資源的其他獨(dú)立軟件共存的能力。
      • 易替換性:是指軟件產(chǎn)品在環(huán)境相同、目的相同的情況下替代另一個(gè)指定軟件產(chǎn)品的能力。
      • 可移植性依從性:是指軟件產(chǎn)品依附與同可移植性相關(guān)的標(biāo)準(zhǔn)或約定的能力。

3.2 軟件質(zhì)量的對(duì)立面--軟件缺陷

  • 問(wèn)題的引出

    The First “Computer Bug” | 首個(gè)“計(jì)算機(jī)Bug”

    Moth found trapped between points at Relay # 70, Panel F, of the Mark II Aiken Relay Calculator while it was being tested at Harvard University, 9 September 1947. The operators affixed the moth to the computer log, with the entry: “First actual case of bug being found”. They put out the word that they had “debugged” the machine, thus introducing the term “debugging a computer program”.

    1947年9月9日,哈佛大學(xué)測(cè)試馬克II型艾肯中繼器計(jì)算機(jī),操作員在電板編號(hào)為70的中繼器觸點(diǎn)旁發(fā)現(xiàn)了一只飛蛾。然后操作員把飛蛾貼在計(jì)算機(jī)日志上了,并寫(xiě)下了“首個(gè)發(fā)現(xiàn)bug的實(shí)際案例”。他們提出了一個(gè)詞,“debug(調(diào)試)”了機(jī)器,從而引入新術(shù)語(yǔ)“debugging a computer program(調(diào)試計(jì)算機(jī)程序)”。

    In 1988, the log, with the moth still taped by the entry, was in the Naval Surface Warfare Center Computer Museum at Dahlgren, Virginia.

    1988年,這個(gè)仍然貼著飛蛾的日志,保存于弗吉尼亞州達(dá)爾格倫的海軍水面作戰(zhàn)中心計(jì)算機(jī)博物館。

    ?

    以下的兩句話明確了缺陷的產(chǎn)生。

    程序員犯了一個(gè)錯(cuò)誤,這個(gè)錯(cuò)誤在程序中表現(xiàn)為缺陷

    運(yùn)行帶有缺陷的軟件或者程序,就可能觀察到失效

?

  • 缺陷

    程序或者軟件中不正確的步驟、過(guò)程或者數(shù)據(jù)定義等

    • 錯(cuò)誤的語(yǔ)句
    • 錯(cuò)誤的標(biāo)量定義
    • 不正確的文檔
    • 不正確的程序段
    • 不正確的指令
    • 不正確的數(shù)據(jù)定義
    • ……
  • 失效

    軟件系統(tǒng)或單元無(wú)法實(shí)現(xiàn)需求文檔中規(guī)定的功能特性或者非功能特性

    • 不正確的系統(tǒng)反應(yīng)
    • 系統(tǒng)崩潰
    • 系統(tǒng)死機(jī)
    • ……
  • 缺陷產(chǎn)生的原因

    軟件缺陷的產(chǎn)生主要有軟件產(chǎn)品的特點(diǎn)和開(kāi)發(fā)過(guò)程決定的。比如需求不夠清晰,頻繁變更等;或者軟件由于競(jìng)爭(zhēng)非常激烈,技術(shù)日新月異,使用新技術(shù)也容易產(chǎn)生問(wèn)題。大致有以下幾種主要原因:

    • 項(xiàng)目期限的壓力
    • 產(chǎn)品的復(fù)雜程度
    • 溝通不良
    • 開(kāi)發(fā)人員疲勞、壓力過(guò)大或者受到干擾
    • 缺乏足夠的知識(shí)、技術(shù)和經(jīng)驗(yàn)
    • 不了解客戶的需求
    • 缺乏動(dòng)力
  • 缺陷管理的目的

    軟件測(cè)試就是為了更早、更快的發(fā)現(xiàn)缺陷。換句話說(shuō),缺陷的發(fā)現(xiàn)可以看作是測(cè)試工作的主要成果之一。軟件缺陷管理的實(shí)施,至少有如下三個(gè)基本目的:

    • 加快缺陷的修正。
    • 產(chǎn)品的質(zhì)量評(píng)估
    • 預(yù)防缺陷
  • 最終的定義

    軟件缺陷(Defect),常常又被叫做Bug。 所謂軟件缺陷,即為計(jì)算機(jī)軟件或程序中存在的某種破壞正常運(yùn)行能力的問(wèn)題、錯(cuò)誤,或者隱藏的功能缺陷。缺陷的存在會(huì)導(dǎo)致軟件產(chǎn)品在某種程度上不能滿足用戶的需要。

    IEEE729-1983對(duì)缺陷有一個(gè)標(biāo)準(zhǔn)的定義:從產(chǎn)品內(nèi)部看,缺陷是軟件產(chǎn)品開(kāi)發(fā)或維護(hù)過(guò)程中存在的錯(cuò)誤、毛病等各種問(wèn)題;從產(chǎn)品外部看,缺陷是系統(tǒng)所需要實(shí)現(xiàn)的某種功能的失效或違背。

  • bug 和 defect

    飛蛾或者蟲(chóng)子爬進(jìn)主機(jī)引起短路,造成計(jì)算機(jī)失效的事件中,我們可以看到bug就是蟲(chóng)子或者是蟲(chóng)子引發(fā)失效這樣的事件。那么defect又是什么呢?

    真正的Defect是計(jì)算機(jī)維護(hù)工程師提出來(lái)的那個(gè)問(wèn)題:在主機(jī)的散熱孔那里可以加裝一層更加細(xì)密的金屬網(wǎng),即不影響散熱,又可以防止蟲(chóng)子爬到主機(jī)里。這是計(jì)算機(jī)設(shè)計(jì)人員疏忽的地方,是產(chǎn)品真正的Defect。而蟲(chóng)子引發(fā)的那個(gè)故障只是這個(gè)Defect導(dǎo)致的故障的其中一種表現(xiàn)形式。也就是說(shuō),Bug是Defect的一種表現(xiàn)形式,而一個(gè)Defect是可以引起多種Bug的。

?

  • 術(shù)語(yǔ)解釋

    軟件測(cè)試使用各種術(shù)語(yǔ)描述軟件出現(xiàn)的問(wèn)題,通用的術(shù)語(yǔ)如下:

    • 軟件錯(cuò)誤

      Software Error, 導(dǎo)致軟件包含故障的人的行為。軟件生存期內(nèi)的人為錯(cuò)誤,導(dǎo)致軟件缺陷產(chǎn)生。是人為過(guò)程,相對(duì)于軟件本身是外部行為。

      在可以預(yù)見(jiàn)的時(shí)期內(nèi),軟件仍將由人來(lái)開(kāi)發(fā)。在整個(gè)軟件生存期的各個(gè)階段,都貫穿者人的直接或間接的干預(yù)。然而,人難免犯錯(cuò)誤,這必然給軟件留下不良的痕跡。軟件錯(cuò)誤是指在軟件生存期內(nèi)的不希望或不可接受的人為錯(cuò)誤,其結(jié)果是導(dǎo)致軟件缺陷的產(chǎn)生。可見(jiàn),軟件錯(cuò)誤是一種人為過(guò)程,相對(duì)于軟件本身,是一種外部行為。

    • 軟件缺陷

      Software Defect,軟件的異常情況,軟件存在的一些短板。存在于軟件(文檔、數(shù)據(jù)、程序)中的偏差,導(dǎo)致軟件在某個(gè)特定條件下出現(xiàn)故障,這時(shí)稱軟件缺陷被激活。

      軟件缺陷是存在于軟件(文檔、數(shù)據(jù)、程序)之中的那些不希望或不可接受的偏差,如少一個(gè)逗號(hào)、多一語(yǔ)句等。其結(jié)果是軟件運(yùn)行于某一特定條件時(shí)出現(xiàn)軟件故障,這時(shí)稱軟件缺陷被激活。

    • 軟件故障

      Software Fault,引起一個(gè)功能組件不能完成所要求的功能的一種意外情況。軟件運(yùn)行過(guò)程中出現(xiàn)的不希望或不可接收的內(nèi)部狀態(tài)。是動(dòng)態(tài)行為。

      軟件故障是指軟件運(yùn)行過(guò)程中出現(xiàn)的一種不希望或不可接受的內(nèi)部狀態(tài)。譬如,軟件處于執(zhí)行一個(gè)多余循環(huán)過(guò)程時(shí),我們說(shuō)軟件出現(xiàn)故障。此時(shí)若無(wú)時(shí)當(dāng)?shù)拇胧ㄈ蒎e(cuò))加以及時(shí)處理,便產(chǎn)生軟件失效。顯然,軟件故障是一種動(dòng)態(tài)行為。

    • 軟件失效

      Software Failure,功能組件執(zhí)行其規(guī)定功能的能力喪失。軟件運(yùn)行時(shí)產(chǎn)生的不希望或不可接受的外部行為結(jié)果。

      軟件失效是指軟件運(yùn)行時(shí)產(chǎn)生 的一種不希望或不可接受的外部行為結(jié)果。失效是指功能部件執(zhí)行其規(guī)定功能的能力喪失。軟件失效是指軟件運(yùn)行時(shí)產(chǎn)生的一種不希望或不可接受的外部行為。

      軟件錯(cuò)誤是一種人為錯(cuò)誤。一個(gè)軟件錯(cuò)誤必定產(chǎn)生一個(gè)或多個(gè)軟件缺陷。當(dāng)一個(gè)軟件缺陷被激活時(shí),便產(chǎn)生一個(gè)軟件故障;同一個(gè)軟件缺陷在不同條件下被激活,可能產(chǎn)生不同的軟件故障。軟件故障如果沒(méi)有集市的容錯(cuò)措施加以處理,便不可避免地導(dǎo)致軟件失效;同一個(gè)軟件故障在不同條件下可能產(chǎn)生不同的軟件失效。

?

  • 缺陷的類型

    • 遺漏(Missing)
    • 錯(cuò)誤(Error)
    • 額外的實(shí)現(xiàn)(Extra)
    • 改進(jìn)(Enhancement)
  • 缺陷的評(píng)價(jià)標(biāo)準(zhǔn)

    • 軟件未實(shí)現(xiàn)需求規(guī)格說(shuō)明書(shū)要求的功能
    • 軟件未實(shí)現(xiàn)需求規(guī)格說(shuō)明書(shū)雖未明確提及但應(yīng)該實(shí)現(xiàn)的目標(biāo)
    • 軟件出現(xiàn)了需求規(guī)格說(shuō)明書(shū)指明不應(yīng)出現(xiàn)的錯(cuò)誤
    • 軟件實(shí)現(xiàn)了需求規(guī)格說(shuō)明書(shū)未提到的功能
    • 軟件難以理解、不易使用、運(yùn)行緩慢,或者從測(cè)試工程師的角度來(lái)看——最終用戶會(huì)認(rèn)為不好?
  • 缺陷報(bào)告

    測(cè)試執(zhí)行過(guò)程中,發(fā)現(xiàn)軟件失效后,提出書(shū)面的報(bào)告,提供給開(kāi)發(fā)人員或者其他負(fù)責(zé)人員作為定位缺陷的依據(jù),也作為日后缺陷度量的數(shù)據(jù)依據(jù)。

    軟件缺陷的描述是軟件缺陷報(bào)告的基礎(chǔ)部分,也是測(cè)試人員就一個(gè)軟件問(wèn)題與開(kāi)發(fā)小組交流的最初并且最好的機(jī)會(huì)。一個(gè)好的描述,需要使用簡(jiǎn)單、準(zhǔn)確、專業(yè)的語(yǔ)言來(lái)抓住缺陷的本質(zhì)。否則,它就會(huì)使信息含糊不清,可能會(huì)誤導(dǎo)開(kāi)發(fā)人員。因此,準(zhǔn)確的報(bào)告軟件缺陷是非常重要的。

    • 清晰準(zhǔn)確的軟件缺陷描述可以減少被開(kāi)發(fā)人員退回來(lái)的缺陷數(shù)量
    • 提高軟件缺陷修復(fù)的速度,使每一個(gè)小組能夠有效的工作
    • 提高測(cè)試人員的可信任度,可以得到開(kāi)發(fā)人員對(duì)有效缺陷的快速或者及時(shí)響應(yīng)
    • 加強(qiáng)開(kāi)發(fā)人員、測(cè)試人員和管理人員的協(xié)同工作,讓他們可以更好的工作
  • 缺陷分析

    • 錯(cuò)誤:程序員在寫(xiě)代碼的時(shí)候犯錯(cuò)誤,寫(xiě)錯(cuò)代碼,此時(shí)程序已經(jīng)有了缺陷
    • 失效:錯(cuò)誤的代碼在運(yùn)行的時(shí)候,遇到特定的情況,激發(fā)了錯(cuò)誤之處,導(dǎo)致程序被觀察到失效
    • 缺陷:程序的失效,會(huì)證明軟件有缺陷

3.3 軟件缺陷與Bug

  • 第一個(gè)Bug 發(fā)現(xiàn)的過(guò)程。

    1947年9月9日,哈佛大學(xué)測(cè)試馬克II型艾肯中繼器計(jì)算機(jī),操作員在電板編號(hào)為70的中繼器觸點(diǎn)旁發(fā)現(xiàn)了一只飛蛾。然后操作員把飛蛾貼在計(jì)算機(jī)日志上了,并寫(xiě)下了“首個(gè)發(fā)現(xiàn)bug的實(shí)際案例”。他們提出了一個(gè)詞,“debug(調(diào)試)”了機(jī)器,從而引入新術(shù)語(yǔ)“debugging a computer program(調(diào)試計(jì)算機(jī)程序)”。1988年,這個(gè)仍然貼著飛蛾的日志,保存于弗吉尼亞州達(dá)爾格倫的海軍水面作戰(zhàn)中心計(jì)算機(jī)博物館。

    Paste_Image.png

    bug就是蟲(chóng)子或者是蟲(chóng)子引發(fā)失效這樣的事件。

    主機(jī)的散熱孔缺少更加細(xì)密的金屬網(wǎng),這是計(jì)算機(jī)設(shè)計(jì)人員疏忽的地方,是產(chǎn)品真正的Defect。

    而蟲(chóng)子引發(fā)的那個(gè)故障只是這個(gè)Defect導(dǎo)致的故障的其中一種表現(xiàn)形式。也就是說(shuō),Bug是Defect的一種表現(xiàn)形式,而一個(gè)Defect是可以引起多種Bug的。

  • 缺陷產(chǎn)生的原因

    • 項(xiàng)目期限的壓力
    • 產(chǎn)品的復(fù)雜程度
    • 溝通不良
    • 開(kāi)發(fā)人員疲勞、壓力過(guò)大或者受到干擾
    • 缺乏足夠的知識(shí)、技術(shù)和經(jīng)驗(yàn)
    • 不了解客戶的需求
    • 缺乏動(dòng)力
  • Bug報(bào)告單寫(xiě)作原則:5C

    1. Correct(準(zhǔn)確)每個(gè)組成部分的描述準(zhǔn)確,不會(huì)引起誤解
    2. Clear(清晰)每個(gè)組成部分的描述清晰,易于理解
    3. Concise(簡(jiǎn)潔)只包含必不可少的信息,不包括任何多余的內(nèi)容
    4. Complete(完整)包含復(fù)現(xiàn)該缺陷的完整步驟和其他本質(zhì)信息
    5. Consistent(一致)按照一致的格式書(shū)寫(xiě)全部缺陷報(bào)告
  • 缺陷的狀態(tài)

缺陷的狀態(tài) 描述
激活的或打開(kāi)的(Active or Open) 缺陷的起始狀態(tài),問(wèn)題還沒(méi)有解決,等待修復(fù)
已修正的或已修復(fù)的(Fixed or Resolved) 已被開(kāi)發(fā)人員檢查和修復(fù),等待驗(yàn)證人員驗(yàn)證
關(guān)閉的或非激活的(Close or Inactive) 驗(yàn)證通過(guò),確認(rèn)缺陷已經(jīng)可以關(guān)閉
重新打開(kāi) (Reopen) 驗(yàn)證不通過(guò),需要
推遲 (Deferred) 缺陷不嚴(yán)重,在下一個(gè)版本中解決
保留 (On hold) 由于技術(shù)原因或者其他原因,暫時(shí)無(wú)法解決
  • 缺陷的優(yōu)先級(jí)
缺陷的優(yōu)先級(jí) 描述
立即解決(P1) 缺陷導(dǎo)致系統(tǒng)不可使用,無(wú)法測(cè)試或者測(cè)試無(wú)法繼續(xù)
高優(yōu)先級(jí)(P2) 缺陷嚴(yán)重,影響測(cè)試,需要優(yōu)先考慮
正常排隊(duì)(P3) 缺陷需要正常排隊(duì)等待修復(fù)
低優(yōu)先級(jí)(P4) 缺陷可以在開(kāi)發(fā)人員有時(shí)間的時(shí)候被修正
  • 缺陷的嚴(yán)重級(jí)別
缺陷的嚴(yán)重級(jí)別 描述
致命(Fatal) 系統(tǒng)的主要功能完全失效,用戶利益受到損失、系統(tǒng)崩潰、死機(jī)等
嚴(yán)重(Critical) 系統(tǒng)的主要功能部分失效,數(shù)據(jù)無(wú)法保存、提供的服務(wù)受到影響
一般(Major) 系統(tǒng)的次要功能沒(méi)有完全實(shí)現(xiàn),不影響用戶的正常使用,如提示不準(zhǔn)確等
較小(Minor) 用戶體驗(yàn)不好,不影響功能實(shí)現(xiàn)
  • 缺陷在禪道中的栗子

    創(chuàng)建缺陷

    image.png
    • 缺陷標(biāo)題:描述清楚問(wèn)題所在
    • 嚴(yán)重程度:是不是很?chē)?yán)重,一般是①,②,③,④。
    • 優(yōu)先級(jí)別:是不是很著急修復(fù),一般是①,②,③,④。
    • 重現(xiàn)步驟:非常重要,開(kāi)發(fā)人員根據(jù)提供的步驟,對(duì)應(yīng)截圖進(jìn)行重現(xiàn)問(wèn)題。
六天入門(mén)軟件測(cè)試系列課程總綱
  • 相關(guān)學(xué)習(xí)

立師兄Linty:六天入門(mén)軟件測(cè)試①——測(cè)試執(zhí)行講義

立師兄Linty:六天入門(mén)軟件測(cè)試①——測(cè)試執(zhí)行筆記

立師兄Linty:六天入門(mén)軟件測(cè)試②——測(cè)試分析講義

立師兄Linty:六天入門(mén)軟件測(cè)試②——測(cè)試分析筆記

立師兄Linty:六天入門(mén)軟件測(cè)試③——測(cè)試設(shè)計(jì)講義

立師兄Linty:六天入門(mén)軟件測(cè)試③——測(cè)試設(shè)計(jì)筆記

立師兄Linty:六天入門(mén)軟件測(cè)試④——測(cè)試腳本講義

立師兄Linty:六天入門(mén)軟件測(cè)試④——測(cè)試腳本筆記

立師兄Linty:六天入門(mén)軟件測(cè)試⑤——測(cè)試編程講義

立師兄Linty:六天入門(mén)軟件測(cè)試⑤——測(cè)試編程筆記

立師兄Linty:六天入門(mén)軟件測(cè)試⑥——測(cè)試報(bào)告講義

立師兄Linty:六天入門(mén)軟件測(cè)試⑥——測(cè)試報(bào)告筆記

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,505評(píng)論 6 533
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,556評(píng)論 3 418
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事。” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 176,463評(píng)論 0 376
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 63,009評(píng)論 1 312
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,778評(píng)論 6 410
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 55,218評(píng)論 1 324
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,281評(píng)論 3 441
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 42,436評(píng)論 0 288
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,969評(píng)論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,795評(píng)論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 42,993評(píng)論 1 369
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,537評(píng)論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,229評(píng)論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 34,659評(píng)論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 35,917評(píng)論 1 286
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,687評(píng)論 3 392
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 47,990評(píng)論 2 374

推薦閱讀更多精彩內(nèi)容

  • 幼童樂(lè)戲屈山傍,杜鵑啼鳴槐樹(shù)上。 嚴(yán)父棄逝十六載,兒愚未能宏圖強(qiáng)。 宅前大樹(shù)小車(chē)涼,麥場(chǎng)油葵曬陰涼, 母親心存農(nóng)家...
    執(zhí)酒共酌閱讀 235評(píng)論 0 9
  • 暮春初夏。微風(fēng)。陽(yáng)光正好。 若所有的人山人海都可忽略。 若所有的過(guò)往前塵都未經(jīng)歷。 若我還是最初的我。 若在我歡喜...
    又見(jiàn)小山閱讀 302評(píng)論 0 0
  • 勉兒: 昨天晚上你乘你外兄的車(chē)回上海了,今天上午九時(shí)許你發(fā)信息說(shuō)你已經(jīng)順利抵達(dá)上海。時(shí)光流逝得真快,就像做夢(mèng)一樣,...
    清水一滴閱讀 417評(píng)論 0 3