博客 / 詳情

返回

軟件測試開發/全日制丨測試用例-黑盒測試方法論 學習筆記

本文轉自測試人社區,霍格沃茲測試開發學社學員筆記
原文鏈接:https://ceshiren.com/t/topic/29430

一、等價類

1.1 定義

  • 等價類劃分是一種重要的、常用的黑盒測試方法;
  • 不需要考慮程序的內部結構,只需要考慮程序的輸入規格即可;
  • 它將不能窮舉的測試過程進行合理分類,從而保證設計出來的測試用例具有完整性和代表性;
  • 用户所有可能輸入的數據,劃分成了若干個子集,然後從沒一個子集當中選取少數具有代表性的數據作為測試用例;
  • 在測試資源有限的情況下,用少量有代表性的數據得到比較好的測試效果。

1.2 劃分

有效等價類:指符合《需求文檔》,輸入合理的數據集合;
無效等價類:指不符合《需求文檔》,輸入不合理的數據集合。

1.3 劃分原則

  1. 規定輸入的取值範圍或個數時,則劃分一個有效和兩個無效;
  2. 規定輸入的集合或規則必需要遵循的條件,則劃分一個有效和一個無效;
  3. 輸入條件是一個布爾值,則劃分一個有效和一個無效;
  4. 輸入條件是一組數據,且每個輸入的值做不同的處理,則劃分若干個有效和一個無效;
  5. 輸入條件規定了必須要遵循的某些規則下,則劃分一個有效和若干個無效;
  6. 不是所有的等價類都有無效等價類。

1.4 設計步驟

  1. 先劃分等價類:找出所有可能的分類;
  2. 確定有效等價類:需求中的條件;
  3. 確定無效等價類:與條件相反的情況,再找到特殊情況;
  4. 從各個分類中挑選測試用例數據。

二、邊界值

2.1 定義

  • 大量的軟件測試實踐表明,故障往往出現在定義域或值域的邊界上,而不是在其內部;
  • 為檢測邊界附近的處理,專門設計測試用例,通常都會取得很好的測試效果;
  • 邊界值分析法是一種很實用的黑盒測試用例方法,它具有很強的發現故障的能力;
  • 邊界值分析法是作為對等價類劃分法的補充,測試用例來自等價類的邊界。

2.2 確定方法

  • 上點:邊界上的點;
  • 離點:離上點最近的點;
  • 內點:在輸入域內任意一個點;
  • 選取正好等於、剛好大於或剛好小於邊界值作為測試數據。

2.3 劃分規則

場景 取值
如果規定了輸入域的取值範圍 選取剛好在範圍邊界的點、剛好超過邊界的點
如果規定了輸入值的個數 選取最大個數、最小個數、比最小個數少1、比最大個數多1
如果規定了輸入是一個有序的集合 選取集合的第一個元素、最後一個元素

三、因果圖

3.1 定義

  • 因果圖法是一種利用圖解法分析輸入的各種組合情況,從而設計測試用例的方法;
  • 它適合於檢查程序輸入條件的各種組合情況:
    • “因”——輸入條件
    • “果”——輸出結果

3.2 使用場景

  • 描述多種條件的組合;
  • 產生多個動作。

3.3 基本符號

符號 描述
恆等 若原因出現,則結果出現;若原因不出現,則結果也不出現
若原因出現,則結果不出現;若原因不出現,則結果出現
有多個原因。若幾個原因中有一個出現,則結果出現;若幾個原因都不出現,則結果不出現
有多個原因。若幾個原因都出現,則結果才出現;若其中一個原因不出現,則結果不出現

3.4 互斥條件

條件 描述
互斥(E) a、b、c只能有一個成立,但是可以都不成立
包含(I) a、b、c中至少有一個成立
唯一(O) a、b、c有且僅有一個成立
要求(R) 如果a成立,則要求b必須也成立,其他的不約束
屏蔽(M) 如果a成立的時候,強制b不成立,其他的不約束

3.5 基本步驟

  1. 找出所有的輸入條件(因);
  2. 找出所有的輸出條件(果);
  3. 明確所有輸入條件之間的制約關係以及組合關係;
  4. 明確所有輸出條件之間的制約關係已經組合關係;
  5. 找出什麼樣的輸入條件組合會產生哪種輸出結果;
  6. 把因果圖轉換成判定表;
  7. 為判定表中的每一列表示的情況設計測試用例。

推薦

Python全棧開發與自動化測試開發班

由淺入深實戰進階,從小白到高手

以Python全棧開發為基礎,深入教授自動化測試技能,為學員打造全面的技術能力。通過系統學習和實際項目實戰,學員將具備在職場中脱穎而出的競爭力。不僅能夠靈活運用Python進行開發,還能夠保障項目質量通過自動化測試手段。這是一個全面提升職業競爭力的機會。

課程詳情

Python開發必備基礎技能與項目實戰

Pvthon 編程語言/算法和數據結構/面向對象編程Web後端開發/前端開發/測試管理平台項目實戰

人工智能ChatGPT實戰

人工智能輔助學習各種開發和測試技能/Pytorch深度學框架/平台開發實戰

數據分析與自動化辦公

數據採集/Pandas與數據處理技術/ECharts與數據可視化技術/爬蟲實戰/自動化辦公/批量文件處理

UI自動化測試與高級項目實戰

Web自動化測試/App自動化測試/ PageObject設計模式

接口自動化測試

接口協議分析/Mock實戰/服務端接口測試

性能測試

性能測試流程與方法/JMeter 腳本參數化/Grafana監控系統搭建

簡歷指導與模擬面試

1V1簡歷指導/模擬真實面試/測試開發崗面試全攻略名企私教服務 名企專家1v1輔導/行業專家技術指導/針對性解決工作難題/績效提升輔導與晉升覆盤

課程亮點

名企私教服務  先學習後付費 高額獎學金

專屬社羣+晚自習在線答疑

5V1全方位輔導作業+考試強化學習效果

簡歷修改 模擬面試 就業內推 面試覆盤

image.png  

福利一: 測試開發精品課免費學

image.png  

福利二:免費領取技能圖譜&大廠面試題合集

image.png

e4de1166c0b6a944f3fe30fdd71e77f.png

user avatar destiny_zxx 頭像
1 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.