測試計劃和測試用例

什么是測試用例

任意的測試用例都含有:
用例編號 (項目名字—模塊名字_用例編號)
所屬模塊
執(zhí)行條件
測試輸入(具體的執(zhí)行步驟 )
預(yù)期結(jié)果
實際結(jié)果
用例是否通過
測試人(執(zhí)行測試用例的人)
版本
備注

測試用例是執(zhí)行測試的依據(jù),把測試系統(tǒng)的操作步驟用文檔的形式描述出來

(1)測試用例是為達到最佳的測試效果或高效的揭露隱藏的錯誤蚯斯,而精心設(shè)計的少量測試數(shù)據(jù),包括測試輸入、執(zhí)行條件和預(yù)期的結(jié)果绅络,實際結(jié)果

(2)測試用例是執(zhí)行的最小實體邑滨。

(3)測試用例是測試工作的指導(dǎo)砸西,是軟件測試的必須遵守的準則力喷,更是軟件測試質(zhì)量穩(wěn)定的根本保障

測試用例的特征:

1、正確性:測試用例最好是要求輸入用戶實際數(shù)據(jù)已驗證系統(tǒng)是否滿足需求規(guī)格說明書的需求眷昆,并且測試用例中的測試的應(yīng)保證至少覆蓋需求規(guī)格說明書中的各項功能蜒秤。

2、完整性:一些基本功能亚斋,如有遺漏作媚,那是不可原諒的。

3伞访、準確:按測試用例輸入實施測試后掂骏,要能根據(jù)測試用例描述的輸出得出正確的結(jié)論,不能出現(xiàn)模糊不清的語言厚掷。

4弟灼、清晰、簡潔:好的測試用例描述清晰冒黑,每一步都應(yīng)有相應(yīng)的作用田绑,有很強的的針對性,不應(yīng)出現(xiàn)一些無用的操作步驟抡爹。

5掩驱、可維護性:由于軟件開發(fā)過程中需求變更等原因的影響,常常對測試用例進行修改冬竟、增加欧穴、刪除等,以便測試用符合相應(yīng)測試要求泵殴。

6涮帘、適應(yīng)性:測試用例應(yīng)該適合特定的測試環(huán)境以及符合整個團隊的測試水平。

7笑诅、可重復(fù)性:要求不同測試者在同樣的測試環(huán)境下使用同樣測試用例都能得出相應(yīng)結(jié)論调缨。

8、可追溯性吆你、可移植性

測試用例的作用

1 可以避免盲目測試并提高測試效率弦叶。

2 令軟件測試的實施重點突出、目的明確妇多。

3 版本更新后只需修正少部分的測試用例便可展開測試工作伤哺,降低工作強度、縮短項目周期砌梆。

4 體現(xiàn)一個測試人員的工作量默责、展現(xiàn)測試用例的設(shè)計思路贬循。(檢驗軟件是否滿足客戶需求)

5 相對于功能模塊的測試用例的通用化和復(fù)用化則會使軟件測試易于開展咸包,并隨著測試用例的不斷精化其效率也不斷攀升桃序。

需求分析

分析.png

什么是需求?

客戶的需要的東西以及對東西的要求烂瘫。

需求的種類有什么媒熊?

1.用戶需求:(關(guān)注系統(tǒng)是否滿足用戶習(xí)慣)
2.行業(yè)業(yè)務(wù)需求(界面提示信息為行業(yè)術(shù)語,處理和操作模式為行業(yè)從業(yè)人員習(xí)慣模式等)
3.實際使用環(huán)境需求(網(wǎng)絡(luò)帶寬坟比,速率芦鳍,斷電數(shù)據(jù)備份,軟件部署設(shè)置等)
4.操作使用需求(類似快捷鍵葛账,緊急關(guān)閉柠衅,數(shù)據(jù)恢復(fù)保護,回退機制籍琳,安裝兼容性菲宴,語言環(huán)境等)
5.用戶需求引發(fā)的測試需求(按軟件測試質(zhì)量模型進行劃分)
6.功能需求:(關(guān)注系統(tǒng)是否滿足功能要求)

測試用例的設(shè)計方法和編寫

如何設(shè)計測試用例

對各個功能模塊進行測試點分析提取測試點
例:


QQLogin.png

①正常登陸
②賬號為空時點擊登錄
③密碼為空時點擊登錄
④賬號密碼都為空時點擊 登錄
⑤密碼錯誤時點擊登錄
⑥找回密碼功能是否有效
⑦記住密碼功能是否有效
⑧ 自動登錄功能是否有效
⑨ 多個qq號登錄
⑩二維碼掃描登錄

編寫測試用例該注意什么?

根據(jù)產(chǎn)品規(guī)格趋急,測試基本功能喝峦;
考慮設(shè)計一般用戶(非專業(yè)人員)的使用方案;
考慮設(shè)計稀有或特殊的使用方案呜达;
與系統(tǒng)其他組成部分的配合(如FAX和上網(wǎng)可能要用到MODEM谣蠢,?測試中考慮對設(shè)備的共享)查近;
考慮特殊情況(如內(nèi)存和硬件的沖突等)眉踱;
設(shè)計極端情況(如內(nèi)存泄漏、破壞性測試等)霜威;
好的測試用例集能花費最小的代價(人力谈喳、物力、財力侥祭、時間)做最好的測試叁执。

測試用例的4個特性

1 代表性:能夠代表并覆蓋各種合理的和不合理、合法的和不合法的矮冬、邊界的和越界的以及極限的輸入數(shù)據(jù)谈宛、操作等。
2 針對性:對程序中的可能存在的錯誤有針對性地測試胎署。
3 可判定性:測試執(zhí)行結(jié)果的正確性是可判定的吆录,每一個測試用例都應(yīng)有相應(yīng)的期望結(jié)果
4 可重現(xiàn)性:對同樣的測試用例,系統(tǒng)的執(zhí)行結(jié)果應(yīng)當(dāng)是相同的琼牧。

測試用例通常包括以下幾個組成元素

① 測試用例編號 ② 測試用例名稱 ③ 測試用例設(shè)計者④ 軟件版本號 ⑤測試目的
⑥ 參考信息 ⑦ 測試環(huán)境 ⑧ 輸入數(shù)據(jù) ⑨ 操作步驟 ⑩ 預(yù)期結(jié)果 ?測試結(jié)果 ? 測試功能模塊

測試用例示例

shop.png
login.png

你用到的測試方法/測試策略有哪些恢筝?

等價類劃分 邊界值 因果圖 場景法 正交表

編寫測試用例的基本方法

等價類劃分法

概念:
有效哀卫,無效
等價類劃分是指分步驟地把海量(無限)的測試用例集減得很小,但過程同樣有效撬槽。
等價類 :何為等價類此改,某個輸入域的集合,在這個集合中每個輸入條件都是等效的侄柔。
一般可分為有效等價類和無效等價類

1 .png

示例

計算兩個1~100之間整數(shù)的和共啃。

如果要進行完全測試,一共要設(shè)計多少個測試用例呢暂题?

加數(shù)1有1~100共計100個取值移剪,加數(shù)2也有1~100共計100個取值,所以他們之間的組合就有100*100=10000種組合可能薪者,但這只是測試了正常范圍內(nèi)的取值纵苛。如果用戶輸入的數(shù)據(jù)不在1~100之間呢,窮舉測試肯定不可能的言津。由此引入了等價類劃分思想攻人。

等價類劃分為:

有效等價類:指符合《需求規(guī)格說明書》,輸入合理的數(shù)據(jù)集合

無效等價類:指不符合《需求規(guī)格說明書》纺念,輸入不合理的數(shù)據(jù)集合

image.png

我們將輸入域分成了一個有效等價類(1~100)和兩個無效等價類(<1,>100)贝椿,并為每一個等價類進行編號,然后我們就可以從每一個等價類中選取一個代表性的數(shù)據(jù)來測試陷谱,設(shè)計如下表所示的測試用例

在任意文本輸入框中可以填寫的 字符類型 中文 英文 特殊符號 空格 數(shù)字


image.png

練習(xí)案例

image.png

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


image.png

確定邊界值的方法

確定邊界情況(輸入或輸出等價類的邊界)
選取正好等于烙博、剛剛大于或剛剛小于邊界值作為測試數(shù)據(jù)
輸入要求是1 ~ 100之間的整數(shù),因此自然產(chǎn)生了1和100兩個邊界烟逊,我們在設(shè)計測試用例的時渣窜,要重點考慮這兩個邊界問題。


image.png

因果圖法

概念:
因果圖法比較適合輸入條件比較多的情況宪躯,測試所有的輸入條件的排列組合乔宿。所謂的原因就是輸入,所謂的結(jié)果就是輸出访雪。

因果圖基本圖形符號
恒等:若原因出現(xiàn)详瑞,則結(jié)果出現(xiàn);若原因不出現(xiàn)臣缀,則結(jié)果不出現(xiàn)坝橡。
非(~):若原因出現(xiàn),則結(jié)果不出現(xiàn)精置;若原因不出現(xiàn)计寇,則結(jié)果出現(xiàn)。
或(∨):若幾個原因中有一個出現(xiàn),則結(jié)果出現(xiàn)番宁;若幾個原因都不出現(xiàn)元莫,則結(jié)果不出現(xiàn)。
與(∧):若幾個原因都出現(xiàn)蝶押,結(jié)果才出現(xiàn)踱蠢;若其中有一個原因不出現(xiàn),則結(jié)果不出現(xiàn)播聪。

image.png

因果圖的約束符號

E(互斥):表示兩個原因不會同時成立朽基,兩個中最多有一個可能成立
I(包含):表示三個原因中至少有一個必須成立
O(惟一):表示兩個原因中必須有一個布隔,且僅有一個成立
R(要求):表示兩個原因离陶,a出現(xiàn)時,b也必須出現(xiàn)衅檀,a出現(xiàn)時招刨,b不可能不出現(xiàn)
M(屏蔽):兩個結(jié)果,a為1時哀军,b必須是0沉眶,當(dāng)a為0時,b值不定

image.png

因果圖測試用例

例如:有一個處理單價為2.5元的盒裝飲料的自動售貨機軟件杉适。若投入2.5元硬幣谎倔,按“可樂”、“啤酒”猿推、或“奶茶”按鈕片习,相應(yīng)的飲料就送出來。若投入的是3元硬幣蹬叭,在送出飲料的同時退還5角硬幣藕咏。

分析這一段說明,我們可列出原因和結(jié)果
原因(輸入):
投入2.5元硬幣秽五;
投入3元孽查;
按“可樂”按鈕;
按“啤酒”按鈕坦喘;
按“奶茶”按鈕盲再。
中間狀態(tài): ① 已投幣;②已按鈕
結(jié)果(輸出):
退還5角硬幣瓣铣;
送出“可樂”飲料答朋;
送出“啤酒”飲料;
送出“奶茶”飲料坯沪;


image.png

判定表法

image.png

image.png

場景法

測試用例設(shè)計的思想

現(xiàn)在的軟件幾乎都是用事件觸發(fā)來控制流程的绿映,事件觸發(fā)時的情景便形成了場景,而同一事件不同的觸發(fā)順序和處理結(jié)果就形成事件流。這種在軟件設(shè)計方面的思想也可以引入到軟件測試中叉弦,可以比較生動地描繪出事件觸發(fā)時的情景丐一,有利于測試設(shè)計者設(shè)計測試用例,同時使測試用例更容易理解和執(zhí)行淹冰。
用例場景是通過描述流經(jīng)用例的路徑來確定的過程库车,
這個流經(jīng)過程要從用例開始到結(jié)束遍歷其中所有基本流和備選流。

基本流和備選流

image.png

如圖所示樱拴,圖中經(jīng)過用例的每條路徑都用基本流和備選流來表示柠衍,直黑線表示基本流,是經(jīng)過用例的最簡單的路徑晶乔。備選流用不同的色彩表示珍坊,一個備選流可能從基本流開始,在某個特定條件下執(zhí)行正罢,然后重新加入基本流中(如備選流1和3)阵漏;也可能起源于另一個備選流(如備選流2),或者終止用例而不再重新加入到某個流(如備選流2和4)翻具。

遵循上圖中每個經(jīng)過用例的可能路徑履怯,可以確定不同的用例場景。從基本流開始裆泳,再將基本流和備選流結(jié)合起來叹洲,可以確定以下用例場景:
場景 1 基本流
場景 2 基本流 備選流 1
場景 3 基本流 備選流 1 備選流 2
場景 4 基本流 備選流 3
場景 5 基本流 備選流 3 備選流 1
場景 6 基本流 備選流 3 備選流 1 備選流 2
場景 7 基本流 備選流 4
場景 8 基本流 備選流 3 備選流 4
注:為方便起見,場景 5工禾、6 和 8 只描述了備選流 3 指示的循環(huán)執(zhí)行一次的情況运提。

正交表法

正交實驗法就是利用排列整齊的表 -正交表來對試驗進行整體設(shè)計、綜合比較帜篇、統(tǒng)計分析糙捺,實現(xiàn)通過少數(shù)的實驗次數(shù)找到較好的生產(chǎn)條件,以達到最高生產(chǎn)工藝效果笙隙,這種試驗設(shè)計法是從大量的試驗點中挑選適量的具有代表性的點洪灯,利用已經(jīng)造好的表格—正交表來安排試驗并進行數(shù)據(jù)分析的方法。正交表能夠在因素變化范圍內(nèi)均衡抽樣竟痰,使每次試驗都具有較強的代表性签钩,由于正交表具備均衡分散的特點,保證了全面實驗的某些要求坏快,這些試驗往往能夠較好或更好的達到實驗的目的铅檩。正交實驗設(shè)計包括兩部分內(nèi)容:第一,是怎樣安排實驗莽鸿;第二昧旨,是怎樣分析實驗結(jié)果拾给。

應(yīng)用場景:在一個界面中有多個控件,每個控件有多個取值兔沃,控件之間可以相互組合蒋得,不可能(也沒有必要)為每一種組合編寫一條用例,如何使用最少最優(yōu)的組合進行測試乒疏《钛茫——正交排列法

判定表,因果圖也是考慮控件組合怕吴,但是組合數(shù)量較少(一般不會超過20中)

公式:Ln(mk)

k是表的列數(shù)窍侧,表示控件的個數(shù)(因數(shù)個數(shù))

m是每個控件的取值個數(shù)(因數(shù)水平)

n是表的行數(shù),也就是需要測試組合的次數(shù)

正交表查詢地址:https://www.york.ac.uk/depts/maths/tables/orthogonal.htm

正交排列法:http://support.sas.com/techsup/technote/ts723_Designs.txt

image.png

image.png

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末转绷,一起剝皮案震驚了整個濱河市伟件,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌暇咆,老刑警劉巖锋爪,帶你破解...
    沈念sama閱讀 219,110評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異爸业,居然都是意外死亡,警方通過查閱死者的電腦和手機亏镰,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評論 3 395
  • 文/潘曉璐 我一進店門扯旷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人索抓,你說我怎么就攤上這事钧忽。” “怎么了逼肯?”我有些...
    開封第一講書人閱讀 165,474評論 0 356
  • 文/不壞的土叔 我叫張陵耸黑,是天一觀的道長。 經(jīng)常有香客問我篮幢,道長大刊,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,881評論 1 295
  • 正文 為了忘掉前任三椿,我火速辦了婚禮缺菌,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘搜锰。我一直安慰自己伴郁,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,902評論 6 392
  • 文/花漫 我一把揭開白布蛋叼。 她就那樣靜靜地躺著焊傅,像睡著了一般剂陡。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上狐胎,一...
    開封第一講書人閱讀 51,698評論 1 305
  • 那天鹏倘,我揣著相機與錄音,去河邊找鬼顽爹。 笑死纤泵,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的镜粤。 我是一名探鬼主播捏题,決...
    沈念sama閱讀 40,418評論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼肉渴!你這毒婦竟也來了公荧?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,332評論 0 276
  • 序言:老撾萬榮一對情侶失蹤同规,失蹤者是張志新(化名)和其女友劉穎循狰,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體券勺,經(jīng)...
    沈念sama閱讀 45,796評論 1 316
  • 正文 獨居荒郊野嶺守林人離奇死亡绪钥,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,968評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了关炼。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片程腹。...
    茶點故事閱讀 40,110評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖儒拂,靈堂內(nèi)的尸體忽然破棺而出寸潦,到底是詐尸還是另有隱情,我是刑警寧澤社痛,帶...
    沈念sama閱讀 35,792評論 5 346
  • 正文 年R本政府宣布见转,位于F島的核電站,受9級特大地震影響蒜哀,放射性物質(zhì)發(fā)生泄漏斩箫。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,455評論 3 331
  • 文/蒙蒙 一凡怎、第九天 我趴在偏房一處隱蔽的房頂上張望校焦。 院中可真熱鬧,春花似錦统倒、人聲如沸寨典。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽耸成。三九已至报亩,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間井氢,已是汗流浹背弦追。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留花竞,地道東北人劲件。 一個月前我還...
    沈念sama閱讀 48,348評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像约急,于是被迫代替她去往敵國和親零远。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,047評論 2 355