主要是內建測試和确認測試階段。另外在系統測試階段也要用到黑盒測試。黑盒測試它是将軟體看做是一個不透明的黑盒子,完全不考慮軟體内部的結構和處理算法。而隻檢查軟體的功能是否能夠按照軟體需求說明書那樣正常的使用。當軟體接收到了輸入資料的時候是否能夠得到正确的輸出。隻要能夠得到正确的輸出就達到我們的目的了。它總會有正确的輸出,有輸入有輸出。我們是根據輸入和輸出來判斷這一塊的功能是否正确。這就是黑盒測試。就感覺是一個黑盒子裡面的東西我們都看不到.
根據輸入和輸出之間的關系來進行測試、判定.
白盒測試就不是看輸入和輸出之間的關系,而是分析到了内部的流程。内部的流程如何走進行了詳細的分析、設計。設計的用例涉及到了裡面的語句、裡面的邏輯和裡面的分支。這是黑盒測試和白盒測試它的本質上的差別。
一個是忽略内部結構,一個是關注内部結構。
等價類劃分和邊界值分析是我們現在用的最多的。經常把這兩類方法結合在一起使用。
一個等價類的資料是符合軟體需求說明書的要求,也就是合理的資料,我們平常正常的資料,那麼這個等價類被稱之為有效等價類。有效:輸入資料是合理的、有意義的。無效:不合理的、無意義的、非法的、不合要求的資料。
等價類用例它的生成。第一個步驟是劃分等價類,第二個步驟是在等價類的基礎上來抽取資料,形成測試用例。
一個程式它可以對一定數額的資料進行排序,這個數額是多少?從一個數到一萬個數都可以。它進行排序的時候最多是排一萬個資料,再多它就處理不過來了。有效值範圍就已經确立了:1<=x<=10000.
設立兩個無效等價類和一個有效等價類.一個有效等價類:待排序的數列元素個數在1-10000個之間,無效等價類:x<=0或者是x>10000.
一個集合操作它是符合要求的。确定一個有效等價類(一個a集合)和一個無效等價類(一個a非集合).
要求銀行卡的每一位密碼隻能夠是數字,不能夠是字母。從0-9,一位數字隻能從0-9.一位數字進行有效等價類的劃分,就可以劃為一個有效等價類和一個無效等價類。有效等價類:0-9這個集合;無效等價類:除了這個字元之外的其他任何字元。可以測試輸入0也可以測試輸入a,0就屬于有效等價類的輸入,a就屬于無效等價類的測試輸入。
和第二點很相像,要麼屬于這個集合,要麼是這個集合以外的。而布爾條件呢要麼就是為真,要麼就是為假。是以一個是有效等價類一個是無效等價類。
第四點,無效等價類是所有不允許的輸入值的集合。
第五點,比如說規定了上班不能遲到早退曠工。針對這個事件可以确立一個有效等價類,就是這個員工既沒有遲到也沒有曠工也沒有早退。這就是一個有效等價類。無效等價類:遲到的或者是早退的或者是曠工的,有若幹個無效等價類。
這個是劃分等價類的一個原則。
分别針對等邊三角形、等腰三角形、普通三角形設計一個測試用例。針對每一個不滿足三角形成立的條件的再設計一個測試用例。
邊界值分析法是對等價類劃分的補充。選取正好等于或者是剛剛大于或者是剛剛小于邊界的值作為測試資料。軟體在處理邊界情況是最容易出錯的。是以提出邊界值分析的測試用例的方式。通常每一個等價類的邊界都應該着重去測試。邊界值和等價類劃分方法通常是結合在一起使用。如何結合?還是剛才的例子。
要輸入一個三角形的三條邊,a<b+c,b<a+c,c<a+b;這些判斷資料成為了它們劃分類/設計測試用例的重要衡量名額。如果說我要利用邊界值的方法去為它設計測試用例,設計b<=a+c;b=a+c是無法形成正确的三角形。是以邊界值的測試方法是非常管用的。
根據現有的系統進行框定。微軟有一個層次比較高的測試工程師,她就是一個家庭主婦,她來進行軟體測試的時候用的最多的可能就是錯誤推測法。因為她會比一般的專業人士更快的找到錯誤所在處。是以她肯定是憑着自己的經驗憑着自己的直覺來設計用例。這就是錯誤推測法。