




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第7講等價(jià)類(lèi)劃分法徐浙君主要內(nèi)容黑盒測(cè)試簡(jiǎn)介等價(jià)類(lèi)劃分法案例分析關(guān)于黑盒測(cè)試黑盒測(cè)試也稱(chēng)功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試,它是在已知產(chǎn)品所應(yīng)具有的功能,通過(guò)測(cè)試來(lái)檢測(cè)每個(gè)功能是否都能正常使用。軟件輸入黑盒測(cè)試不深入代碼細(xì)節(jié)輸出黑盒測(cè)試概述在測(cè)試時(shí),把程序看作一個(gè)不能打開(kāi)的黑盒子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,測(cè)試者在程序接口進(jìn)行測(cè)試,它只檢查程序功能是否按照需求規(guī)格說(shuō)明書(shū)的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信息,并且保持外部信息(如數(shù)據(jù)庫(kù)或文件)的完整性,如圖所示。黑盒測(cè)試黑盒測(cè)試主要用于發(fā)現(xiàn)以下情況是否有不正確或遺漏了的功能在接口上,能否正確地接受輸入數(shù)據(jù),能否產(chǎn)生正確地輸出信息訪(fǎng)問(wèn)外部信息是否有錯(cuò)性能上是否滿(mǎn)足要求界面是否錯(cuò)誤,是否不美觀初始化或終止錯(cuò)誤“黑盒”的兩種基本方法黑盒測(cè)試有兩種基本方法,即通過(guò)測(cè)試和失敗測(cè)試。在進(jìn)行通過(guò)測(cè)試時(shí),實(shí)際上是確認(rèn)軟件能做什么,而不會(huì)去考驗(yàn)其能力如何。軟件測(cè)試員只運(yùn)用最簡(jiǎn)單,最直觀的測(cè)試案例。
在設(shè)計(jì)和執(zhí)行測(cè)試案例時(shí),總是先要進(jìn)行通過(guò)測(cè)試。在進(jìn)行破壞性試驗(yàn)之前,看一看軟件基本功能是否能夠?qū)崿F(xiàn)。這一點(diǎn)很重要,否則在正常使用軟件時(shí)就會(huì)奇怪地發(fā)現(xiàn),為什么會(huì)有那么多的軟件缺陷出現(xiàn)?
在確信了軟件正確運(yùn)行之后,就可以采取各種手段通過(guò)搞“垮”軟件來(lái)找出缺陷。純粹為了破壞軟件而設(shè)計(jì)和執(zhí)行的測(cè)試案例,被稱(chēng)為失敗測(cè)試或迫使出錯(cuò)測(cè)試。黑盒測(cè)試的優(yōu)缺點(diǎn)黑盒測(cè)試的優(yōu)點(diǎn):1)比較簡(jiǎn)單,不需要了解程序內(nèi)部的代碼及實(shí)現(xiàn);2)與軟件的內(nèi)部實(shí)現(xiàn)無(wú)關(guān);3)從用戶(hù)角度出發(fā),能很容易的知道用戶(hù)會(huì)用到哪些功能,會(huì)遇到哪些問(wèn)題;4)基于軟件開(kāi)發(fā)文檔,所以也能知道軟件實(shí)現(xiàn)了文檔中的哪些功能;5)在做軟件自動(dòng)化測(cè)試時(shí)較為方便。黑盒測(cè)試的缺點(diǎn):1)不可能覆蓋所有的代碼,覆蓋率較低,大概只能達(dá)到總代碼量的30%;2)自動(dòng)化測(cè)試的復(fù)用性較低。黑盒測(cè)試的方法等價(jià)類(lèi)劃分法邊界值分析法決策表法因果圖法等價(jià)類(lèi)劃分法為了保證軟件質(zhì)量,我們需要做盡量多的測(cè)試,但不可能用所有可能的輸入數(shù)據(jù)來(lái)測(cè)試程序,即窮盡測(cè)試是不可能的。我們可以選擇一些有代表性的數(shù)據(jù)來(lái)測(cè)試程序,但怎樣選擇呢?等價(jià)類(lèi)劃分是解決這一問(wèn)題的一個(gè)方法。等價(jià)類(lèi)劃分法等價(jià)類(lèi)是某個(gè)輸入域的集合,在這個(gè)集合中每個(gè)輸入條件都是等效的。如果其中一個(gè)的輸入不能導(dǎo)致問(wèn)題發(fā)生,那么集合中其它輸入條件進(jìn)行測(cè)試也不可能發(fā)現(xiàn)錯(cuò)誤。等價(jià)類(lèi)分為有效等價(jià)類(lèi)和無(wú)效等價(jià)類(lèi)。有效等價(jià)類(lèi)就是由那些對(duì)程序的規(guī)格說(shuō)明有意義的、合理的輸入數(shù)據(jù)所構(gòu)成的集合,利用有效等價(jià)類(lèi)可檢驗(yàn)程序是否實(shí)現(xiàn)了規(guī)格說(shuō)明中所規(guī)定的功能和性能。無(wú)效等價(jià)類(lèi)就是那些對(duì)程序的規(guī)格說(shuō)明不合理的或無(wú)意義的輸入數(shù)據(jù)所構(gòu)成的集合。
等價(jià)類(lèi)劃分法設(shè)計(jì)測(cè)試用例時(shí),要同時(shí)考慮這兩種等價(jià)類(lèi)。因?yàn)?,軟件不僅要能接收合理的數(shù)據(jù),也要能經(jīng)受意外的考驗(yàn)。這樣的測(cè)試才能確保軟件具有更高的可靠性。劃分等價(jià)類(lèi)重要的是:集合的劃分,劃分為互不相交的一組子集,而子集的并集是整個(gè)集合。
下面給出六條確定等價(jià)類(lèi)的原則。等價(jià)類(lèi)劃分的原則1、在輸入條件規(guī)定了取值范圍或值的個(gè)數(shù)的情況下,則可以確立一個(gè)有效等價(jià)類(lèi)和兩個(gè)無(wú)效等價(jià)類(lèi)。例如:成年人每分鐘的心跳60-100之間為正常。有效等價(jià)類(lèi):60-100
無(wú)效等價(jià)類(lèi):<60和>100
等價(jià)類(lèi)劃分的原則2、在輸入條件規(guī)定了輸入值的集合或者規(guī)定了“必須如何”的條件的情況下,可確立一個(gè)有效等價(jià)類(lèi)和一個(gè)無(wú)效等價(jià)類(lèi)。例如:用戶(hù)連續(xù)輸入錯(cuò)誤密碼的次數(shù)最多為3次。有效等價(jià)類(lèi):<=3次
無(wú)效等價(jià)類(lèi):>3次
等價(jià)類(lèi)劃分的原則3、在輸入條件是一個(gè)布爾量的情況下,可確定一個(gè)有效等價(jià)類(lèi)。
例如:?jiǎn)芜x的選中與不選中?!鹉猩衽葍r(jià)類(lèi)劃分的原則4、在規(guī)定了輸入數(shù)據(jù)的一組值(假定n個(gè)),并且程序要對(duì)每一個(gè)輸入值分別處理的情況下,可確立n個(gè)有效等價(jià)類(lèi)和一個(gè)無(wú)效等價(jià)類(lèi)。
例如:輸入數(shù)據(jù)為省份的選擇。當(dāng)輸入‘青?!ⅰ=ā?、‘浙江’。這些都是有效值。當(dāng)輸入‘福州’,就是無(wú)效值。等價(jià)類(lèi)劃分的原則5、在規(guī)定了輸入數(shù)據(jù)必須遵守的規(guī)則的情況下,可確立一個(gè)有效等價(jià)類(lèi)(符合規(guī)則)和若干個(gè)無(wú)效等價(jià)類(lèi)(從不同角度違反規(guī)則)。
例如:規(guī)定必須輸入非0的正整數(shù)。
這種例子應(yīng)充分考慮規(guī)則是否可以拆分為具有單一的子規(guī)則,然后得到從不同角度違反規(guī)則的無(wú)效等價(jià)類(lèi)。
該例子起碼可拆分為非0、數(shù)字、正數(shù)、整數(shù)4個(gè)子規(guī)則,至少每個(gè)規(guī)則對(duì)應(yīng)一個(gè)無(wú)效等價(jià)類(lèi),即0、字符串、負(fù)數(shù)、小數(shù),甚至可挖掘出輸入為空的隱含等價(jià)類(lèi)。等價(jià)類(lèi)劃分的原則6、在確知已劃分的等價(jià)類(lèi)中各元素在程序處理中的方式不同的情況下,則應(yīng)再將該等價(jià)類(lèi)進(jìn)一步的劃分為更小的等價(jià)類(lèi)。
例如:核對(duì)日期的有效性,初步有效等價(jià)類(lèi)是1<=Month<=12,1<=Day<=31
可是考慮到2月以及閏年、閏月、長(zhǎng)月、短月等,需要進(jìn)一步細(xì)分,當(dāng)然其中還涉及到了年月日組合的問(wèn)題。根據(jù)等價(jià)類(lèi)劃分原則,將等價(jià)類(lèi)填入下表。
等價(jià)類(lèi)表輸入條件有效等價(jià)類(lèi)無(wú)效等價(jià)類(lèi)等價(jià)類(lèi)劃分法的分類(lèi)針對(duì)是否對(duì)無(wú)效數(shù)據(jù)進(jìn)行測(cè)試,可以將等價(jià)類(lèi)測(cè)試分為兩種:標(biāo)準(zhǔn)等價(jià)類(lèi)測(cè)試(也稱(chēng),一般等價(jià)類(lèi)測(cè)試)健壯等價(jià)類(lèi)測(cè)試等價(jià)類(lèi)劃分法的分類(lèi)標(biāo)準(zhǔn)等價(jià)類(lèi)測(cè)試不考慮無(wú)效數(shù)據(jù)值,測(cè)試用例使用每個(gè)等價(jià)類(lèi)中的一個(gè)值。通常,標(biāo)準(zhǔn)等價(jià)類(lèi)測(cè)試用例的數(shù)量和最大等價(jià)類(lèi)中元素的數(shù)目相等。案例分析(一)例1:要求輸入三個(gè)整數(shù)a、b、c,分別作為三角形的三條邊,取值范圍在1~100之間,判斷由三條邊構(gòu)成的三角形類(lèi)型為等邊三角形、等腰三角形、一般三角形以及不構(gòu)成三角形。等價(jià)類(lèi)劃分:在多數(shù)情況下,是從輸入域劃分等價(jià)類(lèi),但對(duì)于三角形問(wèn)題,從輸出域來(lái)定義等價(jià)類(lèi)是最簡(jiǎn)單的劃分方法。R1={〈a,b,c〉:邊為a,b,c的等邊三角形}R2={〈a,b,c〉:邊為a,b,c的等腰三角形}R3={〈a,b,c〉:邊為a,b,c的一般三角形}R4={〈a,b,c〉:邊為a,b,c不能構(gòu)成三角形}案例分析(一)測(cè)試用例abc預(yù)期輸出TC1202020等邊三角形TC2202010等腰三角形TC35810一般三角形TC43610不構(gòu)成三角形等價(jià)類(lèi)劃分法健壯等價(jià)類(lèi)測(cè)試主要的出發(fā)點(diǎn)是考慮了無(wú)效等價(jià)類(lèi)。對(duì)有效輸入,測(cè)試用例從每個(gè)有效等價(jià)類(lèi)中取一個(gè)值;對(duì)無(wú)效輸入,一個(gè)測(cè)試用例有一個(gè)無(wú)效值,其他值均取有效值。等價(jià)類(lèi)劃分法測(cè)試用例設(shè)計(jì)(1)對(duì)每個(gè)輸入或外部條件進(jìn)行等價(jià)類(lèi)劃分,形成等價(jià)類(lèi)表,為每一等價(jià)類(lèi)規(guī)定一個(gè)唯一的編號(hào);(2)設(shè)計(jì)一測(cè)試用例,使其盡可能多地覆蓋尚未覆蓋的有效等價(jià)類(lèi),重復(fù)這一步驟,直到所有有效等價(jià)類(lèi)均被測(cè)試用例所覆蓋;(3)設(shè)計(jì)一新測(cè)試用例,使其只覆蓋一個(gè)無(wú)效等價(jià)類(lèi),重復(fù)這一步驟直到所有無(wú)效等價(jià)類(lèi)均被覆蓋;案例分析(二)例2:設(shè)某公司要打印2001~2005年的報(bào)表,其中報(bào)表日期為6位數(shù)字組成,其中,前4位為年份,后兩位為月份。第一步:劃分等價(jià)類(lèi)輸入及外部條件有效等價(jià)類(lèi)無(wú)效等價(jià)類(lèi)報(bào)表日期的類(lèi)型及長(zhǎng)度6位數(shù)字字符①有非數(shù)字字符④少于6個(gè)數(shù)字字符
⑤多于6個(gè)數(shù)字字符⑥年份范圍在2001~2005之間②小于2001⑦大于2005⑧月份范圍在1~12之間③小于1⑨大于12⑩在劃分等價(jià)類(lèi)時(shí)可以先考慮輸入數(shù)據(jù)的類(lèi)型(合法型和非法型),再考慮數(shù)據(jù)范圍(合法型中的合法區(qū)間和非法區(qū)間)。第二步:為有效等價(jià)類(lèi)設(shè)計(jì)測(cè)試用例 對(duì)表中編號(hào)為①②③的3個(gè)有效等價(jià)類(lèi)用一個(gè)測(cè)試用例覆蓋:測(cè)試數(shù)據(jù)期望結(jié)果覆蓋范圍200105輸入有效等價(jià)類(lèi)①②③第三步:為每一個(gè)無(wú)效等價(jià)類(lèi)至少設(shè)計(jì)一個(gè)測(cè)試用例測(cè)試數(shù)據(jù)期望結(jié)果覆蓋范圍001MAY輸入無(wú)效等價(jià)類(lèi)④20015輸入無(wú)效等價(jià)類(lèi)⑤2001001輸入無(wú)效等價(jià)類(lèi)⑥20000輸入無(wú)效等價(jià)類(lèi)⑦20080輸入無(wú)效等價(jià)類(lèi)⑧200100輸入無(wú)效等價(jià)類(lèi)⑨200113輸入無(wú)效等價(jià)類(lèi)⑩本例的10個(gè)等價(jià)類(lèi)至少需要8個(gè)測(cè)試用例例3:對(duì)招干考試系統(tǒng)“輸入學(xué)生成績(jī)”子模塊設(shè)計(jì)測(cè)試用例。
招干考試分三個(gè)專(zhuān)業(yè),準(zhǔn)考證號(hào)第一位為專(zhuān)業(yè)代號(hào),如:1-行政專(zhuān)業(yè),2-法律專(zhuān)業(yè),3-財(cái)經(jīng)專(zhuān)業(yè).
行政專(zhuān)業(yè)準(zhǔn)考證號(hào)碼為:110001~111215
法律專(zhuān)業(yè)準(zhǔn)考證號(hào)碼為:210001~212006
財(cái)經(jīng)專(zhuān)業(yè)準(zhǔn)考證號(hào)碼為:310001~314015案例分析(三)例:準(zhǔn)考證號(hào)碼的等價(jià)類(lèi)劃分
有效等價(jià)類(lèi):
(1)110001~111215(2)210001~212006(3)310001~314015
無(wú)效等價(jià)類(lèi):
(4)-
~110000(5)111216~210000(6)212007~310000(7)314016~+
案例分析(三)例3:在某網(wǎng)站申請(qǐng)免費(fèi)信箱時(shí),要求用戶(hù)必須輸入用戶(hù)名、密碼及確認(rèn)密碼,對(duì)每一項(xiàng)輸入條件的要求如下:用戶(hù)名要求為4位以上,16位以下,使用英文字母、數(shù)字、“-”、“_”,并且首字符必須為字母或數(shù)字;密碼要求為6~16位之間,只能使用英文字母、數(shù)字以及“-”、“_”,并且區(qū)分大小寫(xiě)。案例分析(三)輸入條件有效等價(jià)類(lèi)編號(hào)無(wú)效等價(jià)類(lèi)編號(hào)用戶(hù)名4~16位1少于4位8多于16位9首字符為字母2首字符為除字母、數(shù)字之外的其他字符10首字符為數(shù)字3英文字母、數(shù)字、“-”、“_”組合4組合中含有除英文字母、數(shù)字、“-”、“_”之外的其他特殊字符11密碼6~16位5少于6位12多于16位13英文字母、數(shù)字、“-”、“_”組合6組合中含有除英文字母、數(shù)字、“-”、“_”之外的其他特殊字符14確認(rèn)密碼內(nèi)容同密碼相同7內(nèi)容同密碼相同,但字母大小寫(xiě)不同15表:等價(jià)類(lèi)表案例分析(三)根據(jù)上述等價(jià)類(lèi)表,設(shè)計(jì)測(cè)試用例如下表所示。測(cè)試用例用戶(hù)名密碼確認(rèn)密碼預(yù)期輸出TC1abc_2000abc_123abc_123注冊(cè)成功TC22000-abc123-abc123-abc注冊(cè)成功TC3abc1234567812345678提示用戶(hù)名錯(cuò)誤TC4abcdefghijk1234561234567812345678提示用戶(hù)名錯(cuò)誤TC5_abc1231234567812345678提示用戶(hù)名錯(cuò)誤TC6abc&1231234567812345678提示用戶(hù)名錯(cuò)誤TC7abc_1231234512345提示密碼錯(cuò)誤TC8abc_123abcdefghijk123456abcdefghijk123456提示密碼錯(cuò)誤TC9abc_123abc&123abc&123提示密碼錯(cuò)誤TC10abc_123abc_123Abc_123提示密碼錯(cuò)誤表:測(cè)試用例等價(jià)類(lèi)劃分法優(yōu)缺點(diǎn)等價(jià)類(lèi)劃分法的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 衣柜合租合同范本
- 《有機(jī)化學(xué)》課程標(biāo)準(zhǔn)
- 醫(yī)療器戒租賃合同范本
- 水質(zhì)檢驗(yàn)工初級(jí)考試模擬題(含參考答案)
- 充電設(shè)備出租合同范本
- 個(gè)人公證委托書(shū)-委托書(shū)
- 農(nóng)村售賣(mài)物品合同范本
- 古玩購(gòu)買(mǎi)合同范本
- 七色光三語(yǔ)文教案
- 七年級(jí)生物期末教學(xué)工作總結(jié)
- 養(yǎng)殖場(chǎng)滅鼠方案
- 《安徒生童話(huà)》閱讀指導(dǎo)課件
- 室外道路及管網(wǎng)工程擬投入的主要施工機(jī)械設(shè)備及測(cè)量?jī)x器表
- 腹部外傷護(hù)理查房記錄
- 橋面鋪裝三維激光攤鋪施工工法
- 優(yōu)質(zhì)課一等獎(jiǎng)小學(xué)綜合實(shí)踐《我也能發(fā)明》課件
- 部編人教版三年級(jí)下冊(cè)語(yǔ)文:荷花課件
- 螺紋牙強(qiáng)度校核計(jì)算
- 關(guān)于在生產(chǎn)過(guò)程中物料流轉(zhuǎn)的交接和管理規(guī)定
- XX學(xué)院社團(tuán)指導(dǎo)老師學(xué)期考核表
- 獸醫(yī)外科手術(shù)學(xué)與獸醫(yī)外科學(xué)章節(jié)測(cè)試及答案
評(píng)論
0/150
提交評(píng)論