測試用例的設(shè)計(jì)方法

定義

為某個(gè)業(yè)務(wù)目標(biāo)诸老,而編制的一組由測試輸入,執(zhí)行條件以及預(yù)期結(jié)果組成的案例

為什么要學(xué)習(xí)測試用例?

在開始實(shí)施測試之前設(shè)計(jì)好測試用例尔店,可以避免盲目測試并提高測試效率。
測試用例的使用令軟件測試的實(shí)施重點(diǎn)突出主慰、目的明確嚣州。
在軟件版本更新后只需修正少部分的測試用例便可展開測試工作,降低工作強(qiáng)度共螺、縮短項(xiàng)目周期该肴。
檢驗(yàn)軟件是否滿足客戶需求、體現(xiàn)一個(gè)測試人員的工作量藐不、展現(xiàn)測試用例的設(shè)計(jì)思路匀哄。

用例核心要素(16個(gè))

必須掌握:用例編號(hào)(如何命名)、所屬模塊雏蛮、用例標(biāo)題(驗(yàn)證誰在什么情況下涎嚼,去做什么,最后結(jié)果是什么)挑秉、優(yōu)先級(jí)法梯、前置條件、操作步驟犀概、測試數(shù)據(jù)立哑、預(yù)期結(jié)果、實(shí)際結(jié)果
了解內(nèi)容:通過否姻灶、bugID铛绰、編寫人員、編寫時(shí)間产喉、測試人員捂掰、測試時(shí)間、備注


注冊圖.png
什么是高質(zhì)量的測試用例

測試用例覆蓋所有的用戶需求
測試用例要簡單明了
各類型的測試用例要齊全
用最少的用例覆蓋最多的需求

等價(jià)類劃分法

定義

等價(jià)類劃分是把所有可能輸入的數(shù)據(jù)分為若干個(gè)區(qū)域曾沈,然后從每個(gè)區(qū)域中取少量有代表性的數(shù)據(jù)進(jìn)行測試即可这嚣。
等價(jià)類 :何為等價(jià)類,某個(gè)輸入域的集合晦譬,在這個(gè)集合中每個(gè)輸入條件都是等效的疤苹。

分類

一般可分為有效等價(jià)類和無效等價(jià)類。
有效等價(jià)類:指符合《需求規(guī)格說明書》敛腌,輸入合理的數(shù)據(jù)集合
無效等價(jià)類:指不符合《需求規(guī)格說明書》卧土,輸入不合理的數(shù)據(jù)集合

類型

取值范圍型: 輸入學(xué)生成績 0-100
恒等類型 : 只有一個(gè)結(jié)果是正確的惫皱,其他都是錯(cuò)誤的 例如 彩票的特等獎(jiǎng)
布爾值型: 通過是否來進(jìn)行選擇,如同意協(xié)議
枚舉類型: 給出選項(xiàng)內(nèi)容尤莺,只要符合其中任意一個(gè)就可以 例如選擇學(xué)歷
規(guī)則類型: 給定要求旅敷,滿足要求的就可以,比如郵箱

在任意文本輸入框中可以填寫的字符類型: 中文颤霎、英文媳谁、特殊符號(hào)、空格友酱、數(shù)字晴音。

案例一

image.png

劃分等價(jià)類并編號(hào),下表為等價(jià)類劃分的結(jié)果


image.png

案例二

邊界值等價(jià)類.png

邊界值分析法

定義

定義:邊界值分析是取稍高于或稍低于邊界的一些數(shù)據(jù)進(jìn)行測試。
原因:程序開發(fā)循環(huán)體時(shí)的取數(shù)可能會(huì)因?yàn)?lt;,<=搞錯(cuò)缔杉。
比如下面代碼:
//有效等價(jià)劃分 -1 0 100 101
for(int i = 0;i <100; i ++) {
  int j = i+1;
  System.out.println("循環(huán)第“+j+"次")//循環(huán)地做某件事情
}
這里的程序是循環(huán)了100次锤躁,所以會(huì)做100次;
如果程序員不小心,把i <100寫成i <= 100或详,則會(huì)溢出系羞,這時(shí)候邊界值檢查是一個(gè)很好的測試方法。

確定邊界值的方法

上點(diǎn):是指邊界上的點(diǎn)霸琴,無論此時(shí)的域是開區(qū)間還是閉區(qū)間椒振,開區(qū)間的話,上點(diǎn)就是在域外梧乘,閉區(qū)間的話澎迎,上點(diǎn)就是在域內(nèi)。
離點(diǎn):是指離上點(diǎn)最近的點(diǎn)宋下,這里就跟是閉區(qū)間還是開區(qū)間就有關(guān)系了嗡善,如果是開區(qū)間辑莫,那么離點(diǎn)就在域內(nèi)学歧,如果是閉區(qū)間,那么離點(diǎn)就在域外各吨。(開內(nèi)閉外)
遵循的原則:開內(nèi)閉外 開區(qū)間往中間找枝笨,閉區(qū)間往外找
內(nèi)點(diǎn):域內(nèi)的任意點(diǎn)都是內(nèi)點(diǎn)。
0<=x<=10 左上點(diǎn) 0 左離點(diǎn) -1 右離點(diǎn) 11 右上點(diǎn) 10 內(nèi)點(diǎn) 5

0<x<10 左上點(diǎn) 0 左離點(diǎn) 1 右離點(diǎn) 9 右上點(diǎn) 10 內(nèi)點(diǎn) 5

0<=x<10 左上點(diǎn) 0 左離點(diǎn) -1 右離點(diǎn) 9 右上點(diǎn) 10 內(nèi)點(diǎn) 5

邊界值與等價(jià)類去重

案例一

檔案管理系統(tǒng)揭蜒,用戶輸入日期格式為“年月日”横浑,范圍是1990年1月~2049年12月。示例:19900101-20491231


image屉更。png
案例二
邊界值等價(jià)類.png

測試點(diǎn)分析:
1徙融、熟讀需求 3-5遍
2、斷句
3瑰谜、逆向思維
4欺冀、疑問點(diǎn)

因果圖(了解树绩、知道即可)

定義

因果圖法比較適合輸入條件比較多的情況,測試所有的輸入條件的排列組合隐轩。所謂的原因就是輸入饺饭,所謂的結(jié)果就是輸出。

因果圖測試用例的編寫過程

1职车、確定原因瘫俊、結(jié)果、中間過程
2悴灵、連接因果圖
3扛芽、標(biāo)明約束條件
4、輸出測試用例

案例:自動(dòng)售貨機(jī)

需求說明:
有一個(gè)處理單價(jià)為2.5元的盒裝飲料的自動(dòng)售貨機(jī)軟件积瞒。若投入2.5元硬幣胸哥,按“可樂”、“啤酒”赡鲜、或“奶茶”按鈕空厌,相應(yīng)的飲料就送出來。若投入的是3元硬幣银酬,在送出飲料的同時(shí)退還5角硬幣嘲更。
分析:
原因(輸入): 中間狀態(tài) 結(jié)果(輸出)
投入2.5元硬幣; 已投幣/已按鈕 退還5角硬幣揩瞪;
投入3元赋朦;
按“可樂”按鈕; 送出“可樂”飲料李破;
按“啤酒”按鈕宠哄; 送出“啤酒”飲料;
按“奶茶”按鈕嗤攻。 送出“奶茶”飲料毛嫉;

錯(cuò)誤推測法

定義

錯(cuò)誤猜測法是測試經(jīng)驗(yàn)豐富的人喜歡使用的一種測試用例設(shè)計(jì)方法。
一般這種方法是基于經(jīng)驗(yàn)和直覺推測程序中可能發(fā)送的各種錯(cuò)誤妇菱,有針對(duì)性地設(shè)計(jì)承粤。只能作為一種補(bǔ)充。

應(yīng)用

輸入一串?dāng)?shù)字闯团,程序可自動(dòng)從小到大排序
郵箱格式@符合的全角以及半角情況

案例

測試手機(jī)終端的通話功能辛臊,可以設(shè)計(jì)各種通話失敗的情況來補(bǔ)充測試用 例:

無SIM 卡插入時(shí)進(jìn)行呼出(非緊急呼叫)
插入已欠費(fèi)SIM卡進(jìn)行呼出
射頻器件損壞或無信號(hào)區(qū)域插入有效SIM卡呼出
網(wǎng)絡(luò)正常,插入有效SIM卡房交,呼出無效號(hào)碼(如1彻舰、888、333333、不輸入任何號(hào)碼等)
網(wǎng)絡(luò)正常刃唤,插入有效SIM卡口猜,使用“快速撥號(hào)”功能呼出設(shè)置無效號(hào)碼的數(shù)字

技巧

最重要的是要思考和分析測試對(duì)象的各個(gè)方面,多參考以前發(fā)現(xiàn)的bug的相關(guān)數(shù)據(jù)透揣,總結(jié)的經(jīng)驗(yàn)济炎,個(gè)人多考慮異常的情況、反面的情況辐真、特殊的輸入须尚,以一個(gè)攻擊者的態(tài)度對(duì)待程序,就能設(shè)計(jì)出比較完善的測試用例來侍咱。

判定表

定義:

設(shè)計(jì)測試用例時(shí)耐床,分析和表達(dá)多輸入條件下執(zhí)行不同操作的黑盒測試方法。
注意:該方法和因果圖法相似楔脯。

判定表測試用例編寫過程

1撩轰、確定原因和動(dòng)作
2、排列組合
3昧廷、標(biāo)明結(jié)果關(guān)系
4堪嫂、輸出測試用例

案例

要求:
掃槍掃描車身機(jī)器碼自動(dòng)識(shí)別汽車品牌和型號(hào),對(duì)于發(fā)動(dòng)機(jī)功率大于100馬力的汽車并且維修記錄不全或里程超過20萬公里的汽車木柬,應(yīng)給予合作4s店優(yōu)先的維修處理
分析:
條件 1 2 3 4 5 6 7 8
功率大于100馬力
維修記錄不全
里程超過20萬公里

動(dòng)作
4s店進(jìn)行優(yōu)先處理
進(jìn)行其他處理

正交實(shí)驗(yàn)法

概述

日本人提出
使用工具:正交表
正交實(shí)驗(yàn)法就是利用排列整齊的表 -正交表來對(duì)試驗(yàn)進(jìn)行整體設(shè)計(jì)皆串、綜合比較、統(tǒng)計(jì)分析眉枕,實(shí)現(xiàn)通過少數(shù)的實(shí)驗(yàn)次數(shù)找到較好的生產(chǎn)條件恶复,以達(dá)到最高生產(chǎn)工藝效果。
這種試驗(yàn)設(shè)計(jì)法是從大量的試驗(yàn)點(diǎn)中挑選適量的具有代表性的點(diǎn)速挑,利用已經(jīng)造好的表格—正交表來安排試驗(yàn)并進(jìn)行數(shù)據(jù)分析的方法谤牡。
正交表能夠在因素變化范圍內(nèi)均衡抽樣,使每次試驗(yàn)都具有較強(qiáng)的代表性姥宝,由于正交表具備均衡分散的特點(diǎn)翅萤,保證了全面實(shí)驗(yàn)的某些要求,這些試驗(yàn)往往能夠較好或更好的達(dá)到實(shí)驗(yàn)的目的伶授。
正交實(shí)驗(yàn)設(shè)計(jì)包括兩部分內(nèi)容:第一断序,是怎樣安排實(shí)驗(yàn)流纹;第二糜烹,是怎樣分析實(shí)驗(yàn)結(jié)果。

應(yīng)用場景

在一個(gè)界面中有多個(gè)控件漱凝,每個(gè)控件有多個(gè)取值疮蹦,控件之間可以相互組合,不可能(也沒有必要)為每一種組合編寫一條用例茸炒,如何使用最少最優(yōu)的組合進(jìn)行測試愕乎≌笪——正交排列法


image.png

image.png
使用正交設(shè)計(jì)助手

(1)下載解壓正交設(shè)計(jì)助手
(2)文件新建工程
(3)實(shí)驗(yàn)新建實(shí)驗(yàn)
正交表測試用例設(shè)計(jì)方法的特點(diǎn)是什么?
1感论、用最少的實(shí)驗(yàn)覆蓋最多的操作绅项,測試用例設(shè)計(jì)很少,效率高比肄,但是很復(fù)雜快耿;
2、對(duì)于基本的驗(yàn)證功能芳绩,以及二次集成引起的缺陷掀亥,一般都能找出來;但是更深的缺陷妥色,更復(fù)雜的缺陷搪花,還是無能為力 的;
3嘹害、體的環(huán)境下撮竿,正交表一般都很難做的。大多數(shù)笔呀,只在系統(tǒng)測試的時(shí)候使用此方法倚聚。

場景法

定義

通過模擬業(yè)務(wù)場景來對(duì)系統(tǒng)的功能點(diǎn)或業(yè)務(wù)流程的描述,從而提高測試效果的黑盒測試方法

ATM引入場景法
ATM流程圖.png
原理圖
image.png

兩個(gè)流

基本流

概念
正確完成的流程
流程
插卡 → 輸入密碼 → 選擇服務(wù) → 取款 → 選擇金額 → 等待出鈔 → 取出卡片

備選流

概念
存在異常的流程凿可,對(duì)于基本流每一步都取反
流程
插卡 → 輸入密碼 → 密碼錯(cuò)誤 → 重新輸入 → 密碼正確 → 選擇服務(wù) → 取款 → 選擇金額 → 等待出鈔 → 取出卡片

場景法測試用例編寫過程

分析用戶場景
設(shè)計(jì)場景覆蓋基本流和備選流
輸出測試用例

案例一
測試點(diǎn)提取.png

需求說明:
注冊網(wǎng)站一共需要三個(gè)步驟惑折,輸入手機(jī)號(hào),密碼枯跑,輸入正確的手機(jī)驗(yàn)證碼惨驶、并同意服務(wù)協(xié)議后,點(diǎn)擊立即申請(qǐng)敛助,注冊成功粗卜。信息填寫錯(cuò)誤時(shí)給出友好的提示信息,說明錯(cuò)誤原因纳击。注冊成功后給注冊用戶發(fā)一條信息续扔,信息內(nèi)容如下:“您好!Xxx用戶焕数,歡迎您注冊纱昧,請(qǐng)及時(shí)完成實(shí)名認(rèn)證”づ猓”
分析方法:
①熟讀需求:熟讀3-5遍识脆,讀需求
②斷句:將需求整理成一段段要求
③分類:流程/規(guī)則
④逆向思維:從不同地的方面進(jìn)行考慮
⑤質(zhì)疑:將自己有疑問地方找出來
⑥應(yīng)用測試用例分析方法


測試點(diǎn)分析.png

使用相應(yīng)的測試用例方法對(duì)測試點(diǎn)進(jìn)行用例的編寫,一個(gè)測試點(diǎn)對(duì)應(yīng)一個(gè)或多個(gè)測試用例,而測試用例只能對(duì)應(yīng)某個(gè)測試點(diǎn)灼捂。

案例二
App升級(jí).png

image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末离例,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子悉稠,更是在濱河造成了極大的恐慌宫蛆,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,284評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件的猛,死亡現(xiàn)場離奇詭異洒扎,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)衰絮,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門袍冷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人猫牡,你說我怎么就攤上這事胡诗。” “怎么了淌友?”我有些...
    開封第一講書人閱讀 164,614評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵煌恢,是天一觀的道長。 經(jīng)常有香客問我震庭,道長瑰抵,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,671評(píng)論 1 293
  • 正文 為了忘掉前任器联,我火速辦了婚禮二汛,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘拨拓。我一直安慰自己肴颊,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,699評(píng)論 6 392
  • 文/花漫 我一把揭開白布渣磷。 她就那樣靜靜地躺著婿着,像睡著了一般。 火紅的嫁衣襯著肌膚如雪醋界。 梳的紋絲不亂的頭發(fā)上竟宋,一...
    開封第一講書人閱讀 51,562評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音形纺,去河邊找鬼丘侠。 笑死,一個(gè)胖子當(dāng)著我的面吹牛挡篓,可吹牛的內(nèi)容都是我干的婉陷。 我是一名探鬼主播帚称,決...
    沈念sama閱讀 40,309評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼官研,長吁一口氣:“原來是場噩夢啊……” “哼秽澳!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起戏羽,我...
    開封第一講書人閱讀 39,223評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤担神,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后始花,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體妄讯,經(jīng)...
    沈念sama閱讀 45,668評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,859評(píng)論 3 336
  • 正文 我和宋清朗相戀三年酷宵,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了亥贸。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,981評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡浇垦,死狀恐怖炕置,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情男韧,我是刑警寧澤朴摊,帶...
    沈念sama閱讀 35,705評(píng)論 5 347
  • 正文 年R本政府宣布,位于F島的核電站此虑,受9級(jí)特大地震影響甚纲,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜朦前,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,310評(píng)論 3 330
  • 文/蒙蒙 一介杆、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧韭寸,春花似錦这溅、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至莫其,卻和暖如春癞尚,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背乱陡。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評(píng)論 1 270
  • 我被黑心中介騙來泰國打工浇揩, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人憨颠。 一個(gè)月前我還...
    沈念sama閱讀 48,146評(píng)論 3 370
  • 正文 我出身青樓胳徽,卻偏偏與公主長得像积锅,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子养盗,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,933評(píng)論 2 355

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