1. 程式人生 > >軟體測試基礎(二)---黑盒測試案例設計技術

軟體測試基礎(二)---黑盒測試案例設計技術

1.什麼是黑盒測試?

  顧名思義,黑盒測試就是把測試物件看成一個黑盒子,完全不考慮程式內部結構和處理過程。通過軟體的外部表現來發現缺陷和錯誤。測試工作就是進行輸入、接收輸出、檢驗結果。

2.什麼是測試用例?

  測試用例是將測試行為具體量化的方法之一,簡單來說,就是設計一個情況,軟體程式在這種情況下,必須能夠正常執行並且達到程式所設計的執行結果,如果達不到,那麼就表示軟體有缺陷。
  測試用例主要記錄了測試的過程、步驟、輸入資料、預期結果等內容,解決要測什麼、怎麼測和如何衡量的問題。
  使用測試用例的好處有以下幾個方面:
   - 可以避免盲目測試,提高測試效率
   - 在軟體版本更新後,只需修正少部分的測試用例便可以展開工作,降低工作強度。

  具體的黑盒測試用例設計方法包括等價類劃分法、邊界值分析法、錯誤推測法、因果圖法、判定表驅動發等

3.等價類劃分法

  等價類劃分的辦法是根據程式的需求規格說明書,特別是功能需求,將程式的輸入域劃分成若干部分,然後從每個部分中選取少數具有代表性的資料作為測試用例。簡而言之,就是把無限的資料劃分範圍,從每個範圍中只選取少數代表性資料進行測試。

  每一類的代表性資料在測試中的作用等價於這一類中的其他值
  如果等價類中的一個測試能夠捕獲一個缺陷,那麼選擇該等價類中的其他測試也能捕獲該缺陷
  如果等價類中的一個測試不能捕獲缺陷,那麼該等價類中的其他測試也不會捕獲缺陷

(1).應用場合

  只要有資料輸入的地方,一般就可以使用等價類劃分法。

(2).有效等價類與無效等價類

  有效等價類:指對於程式的規格說明來說是合理的、有意義的輸入資料構成的集合。程式接收到有效等價類資料,應該正確執行(合法資料的集合)。
  無效等價類:對程式的規格說明來說是不合理的、無意義的輸入資料構成的集合。(非法資料集合)

一個好的軟體的基本標準:
(1).正確的資料可以正確執行
(2).異常處理能力:對於所有的有意無意的非法資料能夠處理,保證程式不受破壞,正常執行(健壯性)

(3).使用方法

  1).根據需求,劃分等價類。(有效等價類和無效等價類)
  2).細化等價類,一般不是根據現實需求,二是基於對資料儲存方式的慎入理解、資料格式的詳細劃分
  3).建立等價類表
有效等價類

編號 取值
1.

無效等價類

編號 取值
1.
(4).確定測試用例

  從每個等價類中,挑選出至少一個數據進行測試。

【例子】
  根據下面給出的規格說明,利用等價類劃分的方法,給出足夠的測試用例。
  “一個程式讀入2個範圍在[-99,99]的整數,進行加法計算”
  首先看到最明確的需求條件便是範圍在[-99,99]之間,還要是整數。所以我們的有效等價類便是[-99,99]之間的整數,無效等價類就是在這個範圍以外的整數。
  然後我們對這個等價類進行細化,由於正負數的補碼計算不一樣,所以有必要把正數、負數單獨測試,可分為兩類。非整數也可以進一步細化,分為小數、字母、漢字、符號等。
  下面就可以建立等價類表
有效等價類

編號 資料要求
1 [-99, 0]整數
2 (0,99]整數

無效等價類

編號 資料要求
1 <-99的整數
2 大於99的整數
3 小數
4 字母
5 漢字
6 符號

測試用例

用例編號 測試目的 用例描述 預期結果
1 1、在第二個輸入合法的情況下,第一個輸入的資料為[-99,0]之間的整數,可以正常計算 1、輸入第一個資料:-70
2、輸入第二個資料:30
3、點選計算按鈕
輸出正確的結果-40
2 1、在第二個輸入合法的情況下,第一個輸入為小於-99的整數,給出錯誤提示 1、輸入第一個數為-150
2、輸入第二個數為45
3、點選計算按鈕
4、在“錯誤提示框”中點選“確定”按鈕
3、彈出“錯誤提示框”提示資料超出範圍
4、“錯誤提示框”關閉,程式正常執行

相關推薦

軟體測試基礎---測試案例設計技術

1.什麼是黑盒測試?   顧名思義,黑盒測試就是把測試物件看成一個黑盒子,完全不考慮程式內部結構和處理過程。通過軟體的外部表現來發現缺陷和錯誤。測試工作就是進行輸入、接收輸出、檢驗結果。 2.什麼是測試用例?   測試用例是將測試行為具體量化的方法

軟體測試2—— 測試

黑盒測試 黑盒測試又稱功能性測試、資料驅動測試、基於規格說明的測試 定義:在已知軟體所應具有的功能的基礎上,檢查程式功能能否按需求規格說明書的規定正常使用,功能是否有遺漏,效能等特性要求是否滿足。 特點:參照規格說明檢查軟體,不要求考察程式碼,以使用者視角進行測

軟體測試理論基礎

軟體測試的過程管理一.軟體測試的各個過程(PDCA)1.測試需求的分析和確定  2.測試計劃  3.測試設計  4.測試執行 5.測試記錄和缺陷跟蹤 6.迴歸測試 7.測試總結和報告二.測試需求1.需求規格說明書的檢查要點      正確性:對照原始需求檢查需求規格說明書  

UI層自動化測試框架:Appium基礎

申明:本章節引用很多第三方資料和網上的教程,在參考資料tab中我都有備註,請理解。 由於該框架是基於Appium的,所以先講講appium的基礎知識 一:Appium介紹 Appium是由nodejs的express框架寫的Http Server

軟體測試基礎

1.軟體是什麼? 軟體是計算機系統中與硬體相互依存的另一部分,它包括程式與文件的完整集合。 軟體 = 程式 + 文件,所以對軟體的測試不僅僅只包括程式,還包括文件。 軟體的分類 (1).基本分類    i.系統軟體:   作業系統、作業系

JustMock .NET單元測試利器JustMock基礎

Mock是Telerik®JustMock框架中的主要類。Mock用於建立例項和靜態模擬,安排和驗證行為。 本文將介紹 “Mock”的基本用法: 首先我們建立一個IFoo物件 publicinter

JMeter接口測試示例

jmeter 請求方式 user mon idt 長度 參數 方式 mil 獲取用戶余額 功能描述 獲取用戶余額:傳入userid獲取用戶余額 請求地址 http://api.nnzhp.cn/getmoney 請求方式 Post請求 入參 ,入參是json類型

Jquery基礎

lac submit rop mov dto 節點 mit focus find 簡介: jQuery是一個快速的,簡潔的javaScript庫,使用戶能更方便地處理HTMLdocuments、events、實現動畫效果,並且方便地為網站提供AJAX交互。 Jquery

Angular基礎

spa rip 函數 itl 利用 lin 作用域 eight res 雙向數據 利用angular把input框裏面的值和h3的值綁定在一起。在input裏輸入內容,內容會在h3標簽裏顯示出來。 具體效果請看下面代碼: <!DOCTYPE html>

java基礎

同時 -1 局限 .post out 不同 所有 over 時有 、面向對象基礎 類與對象 封裝 構造方法 方法 重載 對象數組 this關鍵字 static關鍵字 1.1類與對象 類:類是抽象的,概念上的,共性的,是對象的模板 對象:個體,具體的,可以看見的,對象是個

Java多線程基礎

常用 進程上下文 技術 進入 返回 ren 說明 多線程基礎 常用api 基本概念 進程:程序的執行過程。持有資源(共享內存、共享文件)和線程。 線程: - 是一個程序內部的順序控制流。 - 它包含在進程之中,是系統中最小執行單元,同一個進程可以有多個線程。 - 線程共享進

【轉】JMeter學習十八JMeter測試Java

sets interval permsize int 文件 不同 時間 結果 argument 實例: 服務為:將輸入的兩個參數通過IO存入文件; 1、打開MyEclipse,編寫Java代碼 服務: package test; import java.io.F

軟件測試分類

測試結果 需求規格說明書 人員 不同的 準備 電話 易用 黑盒測試 net 軟件測試領域名詞頗多,許多測試新手容易混淆概念因為從不同的角度對軟件測試有不同的分類方法,所以,這裏魂總常見軟件測試的相關名詞,讓讀者對軟件測試領域有個概括性了解。 根據項目流程階段劃分軟件測試

redis 數據結構基礎 鏈表

ear 數據結構 dup 設計 pty ndt 萬能 div 語言 redis中的鏈表恐怕是最簡單的數據結構了,redis鏈表中總共有3個數據結構: listNode: 1 typedef struct listNode { 2 struct listNode *

Linux學習Shell基礎變量、環境變量配置文件

start 環境變量 pre alt fun name mage art col 一、變量 變量是一個容器,裏面能放不同的值。 要點知識: PATH,HOME,PWD,LOGNAME這些都是變量。 例子: [root@ruanwenwu02 ~]# echo a+b a

計算機網絡基礎-—IP地址詳述

ip地址一、IP地址1. ip地址的作用: 在一定的範圍內唯一的標識一個上網的設備(凡是需要上網的設備必須得有ip 地址) ip地址的表示: 1、讓機器看的 10101010100010101010 (純2進制) 2、讓人看的 點分十進制,X.X.X.X (X表示的是一

Python基礎之數據類型和運算1——數字

spa 發生 double類型 圖片 body poi 存在 discard 交互模式 數據類型初識 數字 2 是一個整數的例子。 長整數 不過是大一些的整數。 3.23和52.3E-4是浮點數的例子。E標記表示10的冪。在這裏,52.3E-4表示52.3 * 1

Python基礎之數據類型和運算2——字符串

創建 options 生成 quotes 字符串 表達 ngs 字符串格式化 lib 字符串基礎 Python 也提供了可以通過幾種不同方式表示的字符串。它們可以用單引號 (‘...‘) 或雙引號 ("...") 標識 。\ 可以用來轉義引號: >>>

Linux系統 shell基礎

很多 sts ctrl+ 技術 liunx 名稱 而是 進程 全局變量 一、管道符 管道符:管道符號用於把前一個命令的結果傳遞給另一條命令示例:1、統計一個文件的行數命令:cat /etc/passwd | wc -l2、統計當前文件夾下文件個數命令: ls | wc -l

HBase框架基礎

alt 這一 tro sca staf 創建表 ips 2.0 大數 * HBase框架基礎(二) 上一節我們了解了HBase的架構原理和模塊組成,這一節我們先來聊一聊HBase的讀寫數據的過程。 * HBase的讀寫流程及3個機制 HBase的讀數據流程: 1、HReg