用例基礎知識

wu33169發表於2024-08-28

• 動態測試(dynamic testing):透過執行軟體的元件或系統來測試軟體
• 靜態測試(static testing):對元件的規格說明書進行評審,對靜態程式碼進行走查 =》看需求文件就屬於靜態測試
• 正式評審(formal review):對評審過程及需求文件的一種特定評審
交叉評審 :測試組內測試人員互相評審對方用例
組內評審:專案組當中的相關人員進行評審(開發,測試,產品,ui設計)
=》正式評審
會議評審:有客戶參加參加的評審

• 度量(metric):測量所使用的方法或標準

比如測試過程中用了什麼工具,用了什麼方法,以及我出口(上線)的標準
bug的密度
• 評審員(reviewer):參與評審的人
• 記錄員(scribe):記錄評審會議上的會議紀要

• 技術評審(Technical Review):同行間對技術進行的評審,目的是技術實現達成共識。
• 走查(Walkthrough):由文件作者逐步陳述文件內容,以收集資訊並對內容達成一致
• 複雜性(complexity):系統或元件的設計或內部結構比較複雜, 導致難以理解,維護或驗證的程度
• 圈複雜度(Cycloramic complexity):程式中獨立路徑的數量。可 以衡量一個元件模組的判定結構的複雜程度。• 控制流(Control Flow):執行元件或系統的一系列順序的路徑
• 資料流(Data Flow):表示資料物件的順利或狀態發生變化的過程
• 圈複雜度:
• 程式中獨立路徑的數量,可以衡量一個元件模組的判定結構的複雜程度。
• 計算物件是結構圖或程式圖,而程式圖又包括控制流圖與流程圖。
通用公式:
1.V=E-N+2 (E是結構圖的邊數 N節點數)
10-7+2=5

2.V等於區域數===》5
3.判定節點+1 ===》4+1=5
4.獨立路徑的數量
1-4-6
1-2-5-6
1-2-3-7-6
1-4-5-6
1-2-3-2-5-6

獨立路徑的數量
&& 代表的是與 兩個為真則為真
|| 代表的是或 兩個中有1個為真則為真

a-d-g =====》 x=100 y=500 z=5000
a-b-c ===>x=101 y=501
a-d-e-f ===>x=100 y=500 z=5001

功能測試(黑盒測試)的用例設計方法
1.等價類【重點】
2.邊界值【重點】
3.判定表
4.因果圖
5.正交表
6.場景法
7.狀態遷移法

等價類他其實是一個用例 設計方法
指的是某個輸入域的集合,在集合中各個輸入的條件都是等效的
需求1:在輸入框中輸入考試成績在1-100之內進行打分並且為正整數
輸入域:1-100分
集合:1-100分之間的任意的正整數 比如:1,56,89.......

通常等價類劃分為2種情況
有效等價類:對程式規格說明有意義的,合理的輸入資料
無效等價類:對程式規格說明無意義的,不合理的輸入資料

有效等價類:
1,100,88,45
無效等價類:
0,-1,101, 多測師,duoceshi,!@#$%^&

0<a<100
輸入6-10個字元
輸入是或否 ===》布林值 (真或假)
規定了輸入資料的一組值(文化程度:小學,初中,高中)
規定了輸入規則是,可以劃分出一個有效等價類和若干個無效等價類(從不同的角度違反規則)

需求2:qq密碼是由6-10位數字字元或英文字元或下劃線組成的
123456 ===》符合規則
12345 ==》不符合規則=>從長度方面違反規則
多測師 ====》不符合規則,從型別方面去違反規則

等價類劃分的設計用例思路
1.找輸入條件
2.為每個輸入條件找有效,無效等價類
3.為每個等價類編號
4.用最少的用例覆蓋最多的有效等價類
5.每一個無效等價類都是一條單獨的用例
6.並非所有的有效等價類都有無效
如:單選框:男 女 ===》必選項,有且只能選擇一個
7.等價類的覆蓋是可以重複覆蓋的
abc___ ===>1,2,4
ab12___ ===》1,2,3,4

8.等價類設計用例覆蓋原則:
1.每個用例儘可能多的覆蓋多個有效等價類
2.每個用例只能覆蓋一個無效等價類

寫用例的注意點:
1.用例以驗證開頭
2.驗證標題需要和步驟內容相呼應
3.用例的標題需要和預期結果相呼應
4.等價類劃分法用例設計方法的描述一般是用:大於,小於,在某某之間
5.用例標題不能重複

常見的能夠劃分等價類的地方:
1.數值範圍
如:1-100分之內的數值
2.重複次數
如:銀行卡密碼輸入超過5次就鎖定
3.字串長度
如:輸入字串長度為5
4.字串中字元的個數
如:有一個列表有很多個字串:["duoceshi","dcs46","hello"]
5.檔案命名
如:用.txt結尾的都是有效等價類 .zip .tar .tar.gz

6.檔案大小
如:上傳1-200MB檔案 有效:20mb 無效:201MB

7.螢幕的顏色
如:規定為,紅色,黃色,綠色 其他顏色就是一個無效等價類

8.超時時間
一個程式超過30秒沒有響應則報錯

資料的合理性:
有效等價類:
123456
1234567891
abcdef
asdfghjklo
______ (6個下劃線)
__(10個下劃線 )
abc123
123

abc

ab12

無效等價類
1.從長度違反
12345 》小於6位
12345678911
==》大於10位
abcde
aaaaaaaaaaa



2.從型別上違反
特殊字元:#¥%……&*()
中文字元:多測師第四十六
3.資料為空 ===》異常場景

檔案管理系統資料的合理性
有效等價類:
199001 ====》驗證的年份在1990-2049
204912 ===》驗證月份在01-12月之間
200001 ===》長度為6位

無效等價類
非數字字元===》中文 英文 特殊字元
19900 》長度小於6位
1992011
>長度大於6位
1990多測師 ===》包含了中文字元
1990ab ====>包含了英文字元
1990!@ ===》包含了特殊字元
198901 ===》年份小於1990
205001 ===》年份大於2049
199000 ===》月份小於01
204913 ===》月份大於12
輸入框輸入為空的情況

邊界值:
需求:在輸入框中對考試成績在1-100分之內進行打分並且為正整數
上點:1,100 正常場景
離點:0,101 異常場景
內點:區域內的點 88 正常場景

閉區間【1-100】
上點:1,100
離點:0,101
內點:88

開區間(1-100)
上點:2,99
離點:1,100
內點:55

半開半閉:(1-100】
上點:2,100
離點:1,101
內點:55

半閉半開【1-100)
上點:1,99
離點:0,100
內點:55

需求1:美團外賣3-8公里包郵
正常:3,8,6
異常:2,9

需求2:使用者名稱是由11為純數字字元的手機號組成===》10,11,12

邊界值的描述:
驗證在輸入框輸入11位純數字字元組成的手機號碼
驗證在輸入框輸入10位純數字字元組成的手機號碼
驗證在輸入框輸入12位純數字字元組成的手機號碼

等價類的描述:
驗證在輸入框輸入小於11位純數字字元組成的手機號碼
驗證在輸入框輸入大於11位純數字字元組成的手機號碼
驗證在輸入框輸入等於11位純數字字元組成的手機號碼

檔案管理:
上點:199001-204912 離點:199000-204903 內點:200001 201512

面試題:
1.一條測試用例包含哪些內容? 用例標題 前置條件 用例步驟 預期結果 場景 測試用例設計方法
2.常用的用例設計方法有哪些? 1.等價類【重點】2.邊界值【重點】3.判定表4.因果圖5.正交表6.場景法7.狀態遷移法
3.結合你的專案及測試用例講一下測試點
4.給你一個xxxx(路燈,小汽車,給你一個app)你說一下測試點
5.如何保證用例的覆蓋率?1.評審好需求,按照需求梳理測試點,按照測試點編寫測試用例,已經及時的進行用例的評審

在公司中-》拿到需求文件=》提煉測試點=》根據測試點寫用例
什麼地方可以寫成用例:
一個狀態的變更
一個頁面的跳轉
頁面的變化

作業:
1.眾安保險編寫35條用例
2.微信發朋友圈的測試點==》40條 ==》測試點中會包含“是否”
例子1:
在微信朋友圈介面進行下拉操作是否可以重新整理朋友圈
在微信朋友圈點選封面圖是否會出現換封面
點選朋友圈朋友的頭像是否會跳轉到朋友的詳情資訊介面

3.支付寶支付功能的測試點寫25條
例子1:
在支付寶首頁 點選掃一掃是否會進入到掃描二維碼介面