[轉(zhuǎn)] 軟件測(cè)試方法_邊界值分析法

轉(zhuǎn): [軟件測(cè)試方法_邊界值分析法]
(http://www.cnblogs.com/whylaughing/p/5821898.html)

目錄:

①邊界值分析法的介紹和概念

②邊界值分析法的原理和思想

③單缺陷假設(shè)和多缺陷假設(shè)

④邊界值測(cè)試數(shù)據(jù)類(lèi)型

⑤內(nèi)部邊界值分析

⑥各類(lèi)邊界值測(cè)試介紹

⑦基于邊界值分析方法選擇測(cè)試用例的原則

⑧邊界值分析法的實(shí)例分析

1、邊界值分析法的介紹和概念

邊界值分析是一種常用的黑盒測(cè)試方法,是對(duì)等價(jià)類(lèi)劃分方法的補(bǔ)充勒魔;所謂邊界值洞渔,是指相對(duì)于輸入等價(jià)類(lèi)和輸出等價(jià)類(lèi)而言遏考,稍高于其最高值或稍低于最低值的一些特定情況脊岳。邊界值分析的步驟包括確定邊界禾锤,選擇測(cè)試用例兩個(gè)步驟包个。

根據(jù)大量的測(cè)試統(tǒng)計(jì)數(shù)據(jù)刷允,很多錯(cuò)誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入/輸出范圍的中間區(qū)域碧囊。因此針對(duì)各種邊界情況設(shè)計(jì)測(cè)試用例树灶,可以查出更多的錯(cuò)誤。所以糯而,邊界值分析法是一種很實(shí)用的黑盒測(cè)試用例方法天通,它具有很強(qiáng)的發(fā)現(xiàn)故障缺陷能力。

2熄驼、邊界值分析法原理和思想

2.1邊界值分析法的基本原理

錯(cuò)誤更可能出現(xiàn)在輸入變量的極值附近像寒。失效極少由兩個(gè)(或多個(gè))缺陷的同時(shí)發(fā)生引起的。

2.2邊界值分析法的基本思想

選取正好等于瓜贾,剛剛大于或剛剛小于邊界的值作為測(cè)試數(shù)據(jù)萝映,而不是選取等價(jià)類(lèi)中的典型值或任意值作為測(cè)試數(shù)據(jù)。

表示方法:最小值min阐虚,略高于最小值min+序臂,正常值nom,略低于最大值max-,最大值max

3奥秆、單缺陷假設(shè)和多缺陷假設(shè)

單缺陷假設(shè)是邊界值分析的關(guān)鍵假設(shè)逊彭。單缺陷假設(shè)指“失效極少是由兩個(gè)或兩個(gè)以上的缺陷同時(shí)發(fā)生引起的”。在邊界值分析中构订,單缺陷假設(shè)即選取測(cè)試用例時(shí)僅僅使得一個(gè)變量取極值侮叮,其他變量均取正常值。

多缺陷假設(shè)則是指“失效是由兩個(gè)或兩個(gè)以上缺陷同時(shí)作用引起的”悼瘾,要求在選取測(cè)試用例時(shí)同時(shí)讓多個(gè)變量取極值囊榜。

4、邊界值測(cè)試數(shù)據(jù)類(lèi)型

類(lèi)型包括:數(shù)值亥宿、速度卸勺、字符、地址烫扼、位置曙求、尺寸、數(shù)量映企、空間……

image.png

以上類(lèi)型的邊界值應(yīng)該在:最大/最小悟狱、首位/末位、上/下堰氓、最快/最慢挤渐、最高/最低、 最短/最長(zhǎng)双絮、 空/滿(mǎn)等情況下用邊界值作為測(cè)試數(shù)據(jù)

5挣菲、內(nèi)部邊界值分析

在多數(shù)情況下,邊界值條件是基于應(yīng)用程序的功能設(shè)計(jì)而需要考慮的因素掷邦,可以從軟件的規(guī)格說(shuō)明或常識(shí)中得到白胀,也是最終用戶(hù)可以很容易發(fā)現(xiàn)問(wèn)題的。然而抚岗,在測(cè)試用例設(shè)計(jì)過(guò)程中或杠,某些邊界值條件是不需要呈現(xiàn)給用戶(hù)的,或者說(shuō)用戶(hù)是很難注意到的宣蔚,但同時(shí)確實(shí)屬于檢驗(yàn)范疇內(nèi)的邊界條件向抢,稱(chēng)為內(nèi)部邊界值條件或子邊界值條件。

內(nèi)部邊界值條件主要有下面幾種:

51胚委、數(shù)值的邊界值檢驗(yàn):計(jì)算機(jī)是基于二進(jìn)制進(jìn)行工作的挟鸠,因此,軟件的任何數(shù)值運(yùn)算都有一定的范圍限制亩冬。

image.png

5.2字符的邊界值檢驗(yàn):在計(jì)算機(jī)軟件中艘希,字符也是很重要的表示元素硼身,其中ASCII和Unicode是常見(jiàn)的編碼方式。如下列出了一些常用字符對(duì)應(yīng)的ASCII碼值覆享。

image.png

5.3其它邊界值檢驗(yàn):在不同的行業(yè)應(yīng)用領(lǐng)域佳遂,依據(jù)硬件和軟件的標(biāo)準(zhǔn)不同而具有各自特定的邊界值。如下列出部分手機(jī)相關(guān)的邊界值

image.png

6撒顿、邊界值測(cè)試介紹

6.1基本邊界值測(cè)試

有n個(gè)輸入變量丑罪,設(shè)計(jì)測(cè)試用例使得一個(gè)變量在數(shù)據(jù)有效區(qū)內(nèi)取最大值、略小于最大值凤壁、正常值吩屹、略大于最小值和最小值。如下圖所示,兩個(gè)變量X1,X2拧抖。它們的有效取值區(qū)間分別為[c,d],[a,b]煤搜。

對(duì)于有n個(gè)輸入變量的程序,基本邊界值分析的測(cè)試用例個(gè)數(shù)為4n+1徙鱼。

邊界值測(cè)試分析采用了可靠性理論的單缺陷假設(shè)宅楞。

優(yōu)點(diǎn):簡(jiǎn)便易行针姿;生成測(cè)試數(shù)據(jù)的成本很低

局限性:測(cè)試用例不充分袱吆;不能發(fā)現(xiàn)測(cè)試變量之間的依賴(lài)關(guān)系;不考慮含義和性質(zhì)距淫;

結(jié)論:只能作為初步測(cè)試用例使用

6.2健壯性測(cè)試

健壯性是指在異常情況下绞绒,軟件還能正常運(yùn)行的能力涨颜。健壯性考慮的主要部分是預(yù)期輸出惕鼓,而不是輸入。健壯性測(cè)試是邊界值分析的一種簡(jiǎn)單擴(kuò)展扫俺。除了變量的5 個(gè)邊界分析取值還要考慮略超過(guò)最大值(max)和略小于最小值(min)時(shí)的情況彤枢。健壯性測(cè)試的最大價(jià)值在于觀察處理異常情況狰晚,它是檢測(cè)軟件系統(tǒng)容錯(cuò)性的重要手段。如下圖所示缴啡。

PS:軟件容錯(cuò)性的度量:從非法輸入中恢復(fù)壁晒;健壯性有兩層含義:容錯(cuò)能力和恢復(fù)能力

對(duì)于有n個(gè)輸入變量的程序,健壯性測(cè)試的測(cè)試用例個(gè)數(shù)為6n+1业栅。

6.3最壞情況測(cè)試

最壞情況測(cè)試拒絕單缺陷假設(shè)秒咐,它關(guān)心的是當(dāng)多個(gè)變量取極值時(shí)出現(xiàn)的情況。最壞情況測(cè)試中碘裕,對(duì)每一個(gè)輸入變量首先進(jìn)行包含最小值携取、略高于最小值、正常值帮孔、略低于最大值雷滋、最大值等5個(gè)元素集合的測(cè)試,然后對(duì)這些集合進(jìn)行笛卡爾積計(jì)算,以生成測(cè)試用例惊豺。最壞情況測(cè)試將意味著更大工作量燎孟。如下圖所示。

對(duì)于有n個(gè)輸入變量的程序尸昧,最壞情況測(cè)試的測(cè)試用例個(gè)數(shù)為5^n揩页。

最壞情況與基本邊界值分析的比較

  • 基本邊界值分析測(cè)試用例是最壞情況測(cè)試用例的真子集
  • 最壞情況測(cè)試顯然更徹底
  • 最壞情況測(cè)試工作量大得多,變量函數(shù)的最壞情況測(cè)試會(huì)產(chǎn)生5的n次方個(gè)測(cè)試用例烹俗,邊界值分析只產(chǎn)生4n+1個(gè)測(cè)試用例

6.4健壯性最壞情況測(cè)試

健壯最壞情況假設(shè)對(duì)每一個(gè)變量首先進(jìn)行最小值爆侣、略小于最小值的值、略高于最小值的值幢妄、正常值兔仰、最大值、略高于最大值的值蕉鸳、略低于最大值的值等7個(gè)元素的集合乎赴。然后對(duì)這些集合進(jìn)行笛卡爾積運(yùn)算,以生成測(cè)試用例潮尝。如下圖所示榕吼。

對(duì)于有n個(gè)輸入變量的程序,健壯最壞情況測(cè)試的測(cè)試用例個(gè)數(shù)為7^n勉失。

6.5特殊值測(cè)試

  • 邊界值分析假定n個(gè)變量是互相獨(dú)立的羹蚣,沒(méi)有考慮這些變量之間的互相依賴(lài)關(guān)系;
  • 特殊值測(cè)試使用領(lǐng)域知識(shí)乱凿、使用類(lèi)似程序的經(jīng)驗(yàn)開(kāi)發(fā)用例的特殊值顽素。
  • 特點(diǎn):最直觀、最不一致徒蟆、具有高度主觀性
  • 特殊值測(cè)試特別依賴(lài)測(cè)試人員的能力
  • 雖然特殊值測(cè)試是高度主觀性胁出,但是能更有效地發(fā)現(xiàn)問(wèn)題

例如:2月28日、2月29日

6.6隨機(jī)測(cè)試

  • 隨機(jī)測(cè)試的基本思想

不是永遠(yuǎn)選取有界變量的最小值段审、略高于最小值全蝶、正常值、略低于最大值和最大值戚哎,而是使用隨機(jī)數(shù)生成器選出測(cè)試用例裸诽。

  • 隨機(jī)測(cè)試的一種實(shí)現(xiàn)方法

有界變量a≤X≤b值的一個(gè)VisualBasic應(yīng)用程序生成的X,滿(mǎn)足下式:

X=Int(b-a+1)*Rnd+a

函數(shù)Int返回浮點(diǎn)數(shù)的整數(shù)部分

函數(shù)Rnd生成區(qū)間[0,1]內(nèi)的隨機(jī)數(shù)

7型凳、基于邊界值分析方法選擇測(cè)試用例的原則

1)如果輸入條件規(guī)定了值的范圍,則應(yīng)取剛達(dá)到這個(gè)范圍的邊界的值,以及剛剛超越這個(gè)范圍邊界的值作為測(cè)試輸入數(shù)據(jù)丈冬。

例如,如果程序的規(guī)格說(shuō)明中規(guī)定:

"重量在10公斤至50公斤范圍內(nèi)的郵件甘畅,其郵費(fèi)計(jì)算公式為……"埂蕊。作為測(cè)試用例往弓,我們應(yīng)取10及50,還應(yīng)取10.01,49.99,9.99及50.01等蓄氧。

2)如果輸入條件規(guī)定了值的個(gè)數(shù),則用最大個(gè)數(shù),最小個(gè)數(shù),比最小個(gè)數(shù)少一,比最大個(gè)數(shù)多一的數(shù)作為測(cè)試數(shù)據(jù)函似。

例如,一個(gè)輸入文件應(yīng)包括1~255個(gè)記錄喉童,則測(cè)試用例可取1和255撇寞,還應(yīng)取0及256等。

3)將規(guī)則1)和2)應(yīng)用于輸出條件堂氯,即設(shè)計(jì)測(cè)試用例使輸出值達(dá)到邊界值及其左右的值蔑担。

例如,某程序的規(guī)格說(shuō)明要求計(jì)算出"每月保險(xiǎn)金扣除額為0至1165.25元"咽白,其測(cè)試用例可取0.00及1165.24啤握、還可取一0.01及1165.26等。

再如一程序?qū)儆谇閳?bào)檢索系統(tǒng)晶框,要求每次“最少顯示1條排抬、最多顯示4條情報(bào)摘要”,這時(shí)我們應(yīng)考慮的測(cè)試用例包括1和4授段,還應(yīng)包括0和5等蹲蒲。

4)如果程序的規(guī)格說(shuō)明給出的輸入域或輸出域是有序集合,則應(yīng)選取集合的第一個(gè)元素和最后一個(gè)元素作為測(cè)試用例。

5)如果程序中使用了一個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu),則應(yīng)當(dāng)選擇這個(gè)內(nèi)部數(shù)據(jù)結(jié)構(gòu)的邊界上的值作為測(cè)試用例畴蒲。

6)分析規(guī)格說(shuō)明,找出其它可能的邊界條件悠鞍。

8对室、邊界值分析法實(shí)例分析

現(xiàn)有一個(gè)學(xué)生標(biāo)準(zhǔn)化考試批閱試卷,產(chǎn)生成績(jī)報(bào)告的程序模燥。其規(guī)格說(shuō)明如下:程序的輸入文件由一些有80個(gè)字符的記錄組成,如右圖所示,所有記錄分為3組:

標(biāo)題:這一組只有一個(gè)記錄掩宜,其內(nèi)容為輸出成績(jī)報(bào)告的名字蔫骂。

試卷各題標(biāo)準(zhǔn)答案記錄:每個(gè)記錄均在第80個(gè)字符處標(biāo)以數(shù)字"2"。該組的第一個(gè)記錄的第1至第3個(gè)字符為題目編號(hào)(取值為1一999)牺汤。第10至第59個(gè)字符給出第1至第50題的答案(每個(gè)合法字符表示一個(gè)答案)辽旋。該組的第2,第3……個(gè)記錄相應(yīng)為第51至第100檐迟,第101至第150补胚,…題的答案。

每個(gè)學(xué)生的答卷描述:該組中每個(gè)記錄的第80個(gè)字符均為數(shù)字"3"追迟。每個(gè)學(xué)生的答卷在若干個(gè)記錄中給出溶其。如甲的首記錄第1至第9字符給出學(xué)生姓名及學(xué)號(hào),第10至第59字符列出的是甲所做的第1至第50題的答案敦间。若試題數(shù)超過(guò)50瓶逃,則第2束铭,第3……紀(jì)錄分別給出他的第51至第100,第101至第150……題的解答厢绝。然后是學(xué)生乙的答卷記錄契沫。

學(xué)生人數(shù)不超過(guò)200,試題數(shù)不超過(guò)999昔汉。

程序的輸出有4個(gè)報(bào)告:
a)按學(xué)號(hào)排列的成績(jī)單懈万,列出每個(gè)學(xué)生的成績(jī)、名次靶病。
b)按學(xué)生成績(jī)排序的成績(jī)單钞速。
c)平均分?jǐn)?shù)及標(biāo)準(zhǔn)偏差的報(bào)告。
d)試題分析報(bào)告嫡秕。按試題號(hào)排序渴语,列出各題學(xué)生答對(duì)的百分比。

分別考慮輸入條件和輸出條件昆咽,以及邊界條件驾凶。給出右表所示的輸入條件及相應(yīng)的測(cè)試用例。

Best Regards掷酗,

感謝作者调违!
出處: https://www.cnblogs.com/whylaughing/p/5821898.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市泻轰,隨后出現(xiàn)的幾起案子技肩,更是在濱河造成了極大的恐慌,老刑警劉巖浮声,帶你破解...
    沈念sama閱讀 206,723評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件虚婿,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡泳挥,警方通過(guò)查閱死者的電腦和手機(jī)然痊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)屉符,“玉大人剧浸,你說(shuō)我怎么就攤上這事〈V樱” “怎么了唆香?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,998評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)吨艇。 經(jīng)常有香客問(wèn)我躬它,道長(zhǎng),這世上最難降的妖魔是什么秸应? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,323評(píng)論 1 279
  • 正文 為了忘掉前任虑凛,我火速辦了婚禮碑宴,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘桑谍。我一直安慰自己延柠,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,355評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布锣披。 她就那樣靜靜地躺著贞间,像睡著了一般。 火紅的嫁衣襯著肌膚如雪雹仿。 梳的紋絲不亂的頭發(fā)上增热,一...
    開(kāi)封第一講書(shū)人閱讀 49,079評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音胧辽,去河邊找鬼峻仇。 笑死,一個(gè)胖子當(dāng)著我的面吹牛邑商,可吹牛的內(nèi)容都是我干的摄咆。 我是一名探鬼主播,決...
    沈念sama閱讀 38,389評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼人断,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼吭从!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起恶迈,我...
    開(kāi)封第一講書(shū)人閱讀 37,019評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤涩金,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后暇仲,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體步做,經(jīng)...
    沈念sama閱讀 43,519評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,971評(píng)論 2 325
  • 正文 我和宋清朗相戀三年熔吗,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了辆床。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片佳晶。...
    茶點(diǎn)故事閱讀 38,100評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡桅狠,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出轿秧,到底是詐尸還是另有隱情中跌,我是刑警寧澤,帶...
    沈念sama閱讀 33,738評(píng)論 4 324
  • 正文 年R本政府宣布菇篡,位于F島的核電站漩符,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏驱还。R本人自食惡果不足惜嗜暴,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,293評(píng)論 3 307
  • 文/蒙蒙 一凸克、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧闷沥,春花似錦萎战、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,289評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至路狮,卻和暖如春虫啥,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背奄妨。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,517評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工涂籽, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人砸抛。 一個(gè)月前我還...
    沈念sama閱讀 45,547評(píng)論 2 354
  • 正文 我出身青樓又活,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親锰悼。 傳聞我的和親對(duì)象是個(gè)殘疾皇子柳骄,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,834評(píng)論 2 345

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

  • 黑盒測(cè)試案例設(shè)計(jì)技術(shù)篇 1 概述 本章介紹黑盒測(cè)試的概念和進(jìn)行黑盒測(cè)試的目的與意義耐薯,及關(guān)于等價(jià)類(lèi)劃分、邊界值分析丝里、...
    西邊人閱讀 16,881評(píng)論 0 41
  • 等價(jià)類(lèi)劃分方法: 一.方法簡(jiǎn)介 1.定義是把所有可能的輸入數(shù)據(jù),即程序的輸入域劃分成若干部分(子集),然后從每一個(gè)...
    繼續(xù)hug閱讀 5,582評(píng)論 1 16
  • 1.測(cè)試與軟件模型 軟件開(kāi)發(fā)生命周期模型指的是軟件開(kāi)發(fā)全過(guò)程曲初、活動(dòng)和任務(wù)的結(jié)構(gòu)性框架。軟件項(xiàng)目的開(kāi)發(fā)包括:需求杯聚、設(shè)...
    Mr希靈閱讀 21,938評(píng)論 7 278
  • 1.測(cè)試與軟件模型 軟件開(kāi)發(fā)生命周期模型指的是軟件開(kāi)發(fā)全過(guò)程臼婆、活動(dòng)和任務(wù)的結(jié)構(gòu)性框架。軟件項(xiàng)目的開(kāi)發(fā)包括:需求幌绍、設(shè)...
    宇文臭臭閱讀 6,713評(píng)論 5 100
  • 文章來(lái)自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鵬閱讀 9,188評(píng)論 2 126