軟件測試用例設(shè)計_第1頁
已閱讀1頁,還剩65頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、2024/3/29,author: henry Date: 16Oct, 2007,測試用例設(shè)計,安博測試空間技術(shù)中心http://www.btestingsky.com/地址:北京市海淀區(qū)學(xué)院路40號大唐電信測試空間樓聯(lián)系電話:010-62303223 62303260 62303230,2,課程介紹,目標(biāo)掌握測試用例設(shè)計的實踐、方法和要點聽眾測試管理人員、測試工程師應(yīng)用開發(fā)人員、QA人員必備條件熟悉測試過程有過實

2、際的測試經(jīng)驗,3,課程內(nèi)容,如何設(shè)計好測試用例設(shè)計測試用例的思路黑盒測試用例的設(shè)計白盒測試用例的設(shè)計自動化測試用例的設(shè)計,4,測試用例設(shè)計,下面我們學(xué)習(xí)--如何設(shè)計好測試用例測試用例與軟件質(zhì)量怎樣衡量一個好的測試用例測試用例的類型剖析測試用例提高設(shè)計測試用例的效率常出現(xiàn)的錯誤,2024/3/29,5,測試用例與軟件質(zhì)量,測試用例是為了發(fā)現(xiàn)軟件缺陷,或至少可能發(fā)現(xiàn)缺陷而設(shè)計;通過好的用例來提高質(zhì)量,從而降低維護(hù)成本

3、;不好的用例將給質(zhì)量帶來一定的風(fēng)險;好的用例是度量質(zhì)量的一個標(biāo)準(zhǔn)。經(jīng)常用“測試用例數(shù)/千行代碼“來評價項目。,2024/3/29,6,怎樣衡量一個好的測試用例,有效性是否能發(fā)現(xiàn)軟件缺陷,至少可能發(fā)現(xiàn)軟件缺陷;開銷測試事例的執(zhí)行、分析和調(diào)試是否經(jīng)濟(jì);可仿效性測試用例可以測試多項內(nèi)容,因而減 少了測試事例的數(shù)量;可維護(hù)性每次軟件修改后對測試事例的維護(hù)成本;可執(zhí)行性是否依賴于測試用例設(shè)計者;,2024/3/29,7,

4、測試用例的類型,按表現(xiàn)形式分:向?qū)停?一步一步的指示說明表腳本型- 執(zhí)行測試或回放記錄的腳本 按設(shè)計目標(biāo)分:單元測試用例 -發(fā)現(xiàn)編碼的缺陷系統(tǒng)測試用例 -發(fā)現(xiàn)功能說明的缺陷集成 測試用例-發(fā)現(xiàn)設(shè)計的缺陷驗收測試用例 -發(fā)現(xiàn)需求的缺陷,2024/3/29,8,剖析測試用例,對任何一個測試用例而言都順序執(zhí)行這5個測試開發(fā)活動,標(biāo)識,設(shè)計,建立,分析,執(zhí)行,,,,,標(biāo)識測試條件(確定測試什么)和測試的優(yōu)先級,設(shè)計測試用例(確

5、定怎樣測試),建立測試(確定測試腳本、數(shù)據(jù)等),執(zhí)行測試用例,將測試用例的輸出結(jié)果與期望結(jié)果進(jìn)行比較,2024/3/29,9,提高設(shè)計測試用例的效率,使用模板 防止空白頁 建立標(biāo)準(zhǔn) 幫助測試者發(fā)現(xiàn)信息 打印好的測試?yán)邮褂脺y試管理軟件 容易增加、移動、刪除用例與步驟 可以借鑒很多模板 制作大綱 可以對步驟、用例進(jìn)行拷貝 能自動編號,復(fù)制技術(shù)

6、 使用“另存為”命令 使用“替換”命令 使用存儲文本、宏,2024/3/29,10,常出現(xiàn)的錯誤,用例太長不完善,不正確、不連貫遺漏步驟對字段的命名有所改變或使其根本不存在對系統(tǒng)的操作不清楚不能確定用例是否通過參數(shù)化錯誤,11,測試用例設(shè)計,下面我們學(xué)習(xí)--設(shè)計測試用例的思路由簡而繁參數(shù)化案例,2024/3/29,12,由簡而繁,“繁”,這里是指詳細(xì)的意思;,是一個過程,是一個逐步細(xì)化的過程

7、,是一個從簡單的測試描述(測試功能點、測試需求等)逐步細(xì)化到能夠去依照執(zhí)行的測試用例的過程,由簡而繁--,2024/3/29,13,為什么要由簡而繁?,如果沒有測試用例或者僅有簡單的測試功能描述,測試過程難以控制,測試結(jié)果將毫無可靠性可言;,簡單的測試用例可靠性低,重用性差,可能導(dǎo)致不同人員理解不同;,詳細(xì)的測試用例可靠性高,而且便于估計執(zhí)行所需時間,易于控制。,…………,2024/3/29,14,到何種程度?,時間要求測試時間是否充

8、足?執(zhí)行者測試執(zhí)行者對系統(tǒng)的了解程度?建議程度將測試用例交給其他人執(zhí)行時不需要過多的解釋。,2024/3/29,15,樣例 - 登錄,需求:用戶名長度為6至10位(含6位和10位)用戶名由字符(a-z、A-Z)和數(shù)字(0-9)組成用戶名不能為空,不能有空格和特殊字符密碼規(guī)則同用戶名規(guī)則,,,2024/3/29,16,簡單理解需求,能夠正確處理用戶登錄,2024/3/29,17,一般用例的設(shè)計,輸入正確的用戶名和口令可以進(jìn)

9、入系統(tǒng)輸入錯誤用戶名或口令錯誤無法進(jìn)入系統(tǒng),2024/3/29,18,詳細(xì)用例的設(shè)計,2024/3/29,19,什么是參數(shù)化,是一個將測試數(shù)據(jù)與測試邏輯(步驟)分開,簡化測試用例的過程;方式是將用例中的一些輸入、輸出等作為參數(shù),數(shù)據(jù)則單獨列出,在執(zhí)行時選擇相應(yīng)的數(shù)據(jù)執(zhí)行。,2024/3/29,20,為什么要參數(shù)化?,沒有將測試數(shù)據(jù)和測試邏輯分開的測試用例可能顯得非常龐大,不利于測試員理解,導(dǎo)致難以控制和執(zhí)行;,通過將用例參數(shù)化,可以

10、簡化用例,使測試用例邏輯清晰,數(shù)據(jù)與邏輯的關(guān)系明了,易于理解;,有利于提高測試用例的復(fù)用性;,2024/3/29,21,哪些內(nèi)容需要參數(shù)化?,測試用例中需要通過使用不同數(shù)據(jù)來重復(fù)執(zhí)行測試的部分;包括:輸入(數(shù)據(jù)或操作等)輸出(結(jié)果數(shù)據(jù)或預(yù)期結(jié)果等),2024/3/29,22,樣例 - 登錄的測試步驟,2024/3/29,23,樣例 - 登錄的測試數(shù)據(jù),24,測試用例設(shè)計,下面我們學(xué)習(xí)--黑盒測試用例的設(shè)計等價類劃分法邊界值分

11、析法錯誤推測法因果圖法。。。,2024/3/29,25,等價類劃分,定義:是把所有可能的輸入數(shù)據(jù),即程序的輸入域劃分成若干部分(子集),然后從每一個子集中選取少數(shù)具有代表性的數(shù)據(jù)作為測試用例;基本思想是設(shè)想用一組有限的數(shù)據(jù)去代表近似無限的數(shù)據(jù);,2024/3/29,26,等價類劃分,有效等價類是指對于程序的規(guī)格說明來說是合理的、有意義的輸入數(shù)據(jù)構(gòu)成的集合。(正確的)無效等價類無效等價類指對程序的規(guī)格說明是不合理的或無意義

12、的輸入數(shù)據(jù)所構(gòu)成的集合。(錯誤的)設(shè)計測試用例時,要同時考慮這兩種等價類。因為軟件不僅要能接收合理的數(shù)據(jù),也要經(jīng)受意外的考驗,這樣的測試才能確保軟件具有更高的可靠性。,2024/3/29,27,劃分等價類的方法,在輸入條件規(guī)定了取值范圍或值的個數(shù)的情況下,則可以確立一個有效等價類和兩個無效等價類。如:輸入值是學(xué)生成績,范圍是0~100;,2024/3/29,28,劃分等價類的方法,在輸入條件是一個布爾量的情況下,可確定一個有效等價

13、類和一個無效等價類;在規(guī)定了輸入數(shù)據(jù)的一組值(假定N個),并且程序要對每一個輸入值分別處理的情況下,可確立N個有效等價類和一個無效等價類;。。。,2024/3/29,29,設(shè)計測試用例,在確立了等價類后,可建立等價類表,列出所有劃分出的等價類輸入條件,然后從劃分出的等價類中按以下三個原則設(shè)計測試用例:為每一個等價類規(guī)定一個唯一的編號;設(shè)計一個新的測試用例,使其盡可能多地覆蓋尚未被覆蓋地有效等價類,重復(fù)這一步,直到所有的有效等價類

14、都被覆蓋為止;設(shè)計一個新的測試用例,使其僅覆蓋一個尚未被覆蓋的無效等價類,重復(fù)這一步,直到所有的無效等價類都被覆蓋為止;,2024/3/29,30,例子-檔案管理系統(tǒng),有一個檔案管理系統(tǒng),要求用戶輸入以年月表示的日期。假設(shè)日期限定在1990年1月~2049年12月并規(guī)定日期由6位數(shù)字字符組成,前4位表示年,后2位表示月?,F(xiàn)用等價類劃分法設(shè)計測試用例,來測試程序的“日期檢查功能”。,2024/3/29,31,例子-檔案管理系統(tǒng),劃

15、分等價類并編號,下表為等價類劃分的結(jié)果:,2024/3/29,32,例子-檔案管理系統(tǒng),設(shè)計測試用例,以便覆蓋所有的有效等價類在表中列出了3個有效等價類,編號分別為1、2、3,設(shè)計的測試用例如下:,2024/3/29,33,例子-檔案管理系統(tǒng),為每一個無效等價類設(shè)計一個測試用例,設(shè)計結(jié)果如下:,2024/3/29,34,邊界值分析,定義:邊界值分析法就是對輸入或輸出的邊界值進(jìn)行測試的一種黑盒測試方法。 通常邊界值分析法是作

16、為對等價類劃分法的補(bǔ)充,這種情況下,其測試用例來自等價類的邊界。,2024/3/29,35,邊界值分析方法的考慮,長期的測試工作經(jīng)驗告訴我們,大量的錯誤是發(fā)生在輸入或輸出范圍的邊界上,而不是發(fā)生在輸入輸出范圍的內(nèi)部。使用邊界值分析方法設(shè)計測試用例,應(yīng)當(dāng)選取正好等于,剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價類中的典型值或任意值作為測試數(shù)據(jù)。,2024/3/29,36,常見的邊界值,對16-bit 的整數(shù)而言 32767 和

17、 -32768 是邊界;屏幕上光標(biāo)在最左上、最右下位置;報表的第一行和最后一行;數(shù)組元素的第一個和最后一個;循環(huán)的第 0 次、第 1 次和倒數(shù)第 2 次、最后一次;。。。,2024/3/29,37,邊界檢驗的幾種類型,邊界檢驗的幾種類型:數(shù)字、字符、位置、重量、大小、速度、方位、尺寸、空間等。,2024/3/29,38,數(shù)值的邊界值檢驗,2024/3/29,39,字符的邊界值檢驗,2024/3/29,40,例子-檔案管理系統(tǒng)

18、(同前),有一個檔案管理系統(tǒng),要求用戶輸入以年月表示的日期。假設(shè)日期限定在1990年1月~2049年12月并規(guī)定日期由6位數(shù)字字符組成,前4位表示年,后2位表示月?,F(xiàn)用等價類劃分法設(shè)計測試用例,來測試程序的“日期檢查功能”。,2024/3/29,41,例子-檔案管理系統(tǒng),邊界值分析后的用例:,2024/3/29,42,錯誤推測法,定義:基于經(jīng)驗和直覺推測程序中所有可能存在的各種錯誤,從而有針對性的設(shè)計測試用例的方法 。方法:

19、列舉出程序中所有可能有的錯誤和容易發(fā)生錯誤的特殊情況,根據(jù)他們選擇測試用例。,2024/3/29,43,例子,例如:輸入數(shù)據(jù)和輸出數(shù)據(jù)為0的情況;輸入表格為空格或輸入表格只有一行。如前面的例子可補(bǔ)充的用例有:輸入空格輸入中有字符輸入“999999”或“000000”輸入“-202-2” 。。。,2024/3/29,44,因果圖法,定義:因果圖法就是一種利用圖解法分析輸入的各種組合情況,生成判定表,從而設(shè)計測試用例的

20、方法。優(yōu)點:適合于檢查程序輸入條件的各種情況的組合??梢詾檫壿嫍l件和相應(yīng)動作之間的關(guān)系提供簡潔的表示方法。,45,測試用例設(shè)計,下面我們學(xué)習(xí)--白盒測試用例的設(shè)計為什么要進(jìn)行白盒測試白盒測試用例設(shè)計方法邏輯覆蓋法 基本路徑覆蓋法。。。,2024/3/29,46,為什么要進(jìn)行白盒測試,假如有一個程序流程如圖所示:,2024/3/29,47,為什么要進(jìn)行白盒測試,如果測試組不知道代碼中有一個潛在的被0 除的錯誤。測試組

21、按照如下由藍(lán)色和綠色標(biāo)記的路徑進(jìn)行測試;顯然測試工作似乎非常完善,測試用例覆蓋了所有執(zhí)行語句,沒有被0 除的錯誤發(fā)生。,2024/3/29,48,為什么要進(jìn)行白盒測試,但是,當(dāng)客戶在接到該產(chǎn)品并使用的過程中,執(zhí)行了如下紅色標(biāo)記所示的路徑時,錯誤發(fā)生了。,2024/3/29,49,為什么要進(jìn)行白盒測試,從本例可以看到,如果不對程序內(nèi)部的邏輯結(jié)構(gòu)做分析,則設(shè)計的測試用例可能無法發(fā)現(xiàn)內(nèi)部潛在的錯誤。,2024/3/29,50,白盒測試用例設(shè)

22、計方法,邏輯覆蓋法基本路徑覆蓋法其它方法等價類劃分邊界值分析。。。,2024/3/29,51,邏輯覆蓋法,邏輯覆蓋是以程序內(nèi)部的邏輯結(jié)構(gòu)為基礎(chǔ)的測試用例設(shè)計技術(shù),這一方法要求測試人員對程序的邏輯結(jié)構(gòu)有清楚的了解。邏輯覆蓋可分為:語句覆蓋判定覆蓋條件覆蓋判定-條件覆蓋條件組合覆蓋,2024/3/29,52,邏輯覆蓋各種方法定義,語句覆蓋就是設(shè)計若干個測試用例,運行所測程序,使得每一可執(zhí)行語句至少執(zhí)行一次。判定覆蓋

23、就是設(shè)計若干個測試用例,運行所測程序,使得程序中每個判斷的取真分支和取假分支至少經(jīng)歷一次。條件覆蓋就是設(shè)計若干個測試用例,運行所測程序,使得程序中每個判斷的每個條件的可能取值至少執(zhí)行一次。,2024/3/29,53,邏輯覆蓋各種方法定義,判定--條件覆蓋就是設(shè)計足夠的測試用例,使得判斷中每個條件的所有可能取值至少執(zhí)行一次,同時每個判斷的所有可能判斷結(jié)果也至少執(zhí)行一次。條件組合覆蓋就是設(shè)計足夠的測試用例,運行所測程序,使得每個判

24、斷的所有可能的條件取值組合至少執(zhí)行一次。,2024/3/29,54,基本路徑法,定義:基本路徑測試法是在程序控制流圖的基礎(chǔ)上,通過分析控制構(gòu)造的環(huán)路復(fù)雜性,導(dǎo)出基本可執(zhí)行路徑集合,從而設(shè)計測試用例的方法?;韭窂椒ㄒ步歇毩⒙窂椒ā?2024/3/29,55,,流圖符號,2024/3/29,56,流程圖轉(zhuǎn)為流圖,,,2024/3/29,57,基本路徑,經(jīng)過分析后,基本路徑集合為:路徑1:1-11路徑2:1-2-3-4-5-10-1

25、-11路徑3:1-2-3-6-8-9-10-11路徑4:1-2-3-6-7-9-10-1-11為了覆蓋所有程序語句,必須設(shè)計至少4 個測試用例使程序運行于這4 條路徑。,2024/3/29,58,其它白盒測試用例設(shè)計方法,等價類劃分邊界值分析。。。,59,測試用例設(shè)計,下面我們學(xué)習(xí)--自動化測試用例的設(shè)計自動化測試時用例的選擇數(shù)據(jù)的參數(shù)化,2024/3/29,60,自動化測試時用例的選擇,并不是所有的用例都會進(jìn)行自動化測

26、試;選擇用例來進(jìn)行自動化測試時,需要考慮的因素有:項目類型操作類型測試工具易實現(xiàn)性可維護(hù)性流程穩(wěn)定性。。。,2024/3/29,61,測試腳本的參數(shù)化,在實現(xiàn)自動化測試過程中,需要提交了數(shù)據(jù)。這些操作都被記錄到了腳本中。當(dāng)多次運行腳本時, 就會提交相同的記錄, 這樣不符合實際的運行情況, 而且有可能引起沖突。為了更加真實的模擬實際環(huán)境, 需要各種各樣的輸入。腳本的參數(shù)化輸入是一種不錯的方法。,2024/3/29,62

27、,腳本的參數(shù)化,腳本的數(shù)據(jù)參數(shù)化就是在腳本中將靜態(tài)值更換為值變量,以使腳本在執(zhí)行過程中,自動輸入不同數(shù)據(jù)的方法。(實現(xiàn)方法視工具而不同)數(shù)據(jù)參數(shù)化的好處: 可以使腳本的長度變短??梢允褂貌煌臄?shù)值來測試你的腳本??梢詫⒃O(shè)計的用例放置在數(shù)據(jù)源中一次執(zhí)行完成。數(shù)據(jù)參數(shù)化包含以下兩項任務(wù): 在腳本中用參數(shù)取代常量值。設(shè)置參數(shù)的屬性以及數(shù)據(jù)源。,63,課程回顧,如何設(shè)計好測試用例設(shè)計測試用例的思路黑盒測試用例的設(shè)計白盒測試用

28、例的設(shè)計自動化測試用例的設(shè)計,2024/3/29,64,對測試的誤解,有時間就多測試一些,來不及就少測試一些。軟件測試是測試人員的事,與開發(fā)人員無關(guān)。設(shè)計-實現(xiàn)-測試,軟件測試是開發(fā)后期的一個階段。,2024/3/29,65,測試格言,不要改變程序,使測試更容易(除非這個修改是永久的)。每個測試用例的一個必需的部分是對預(yù)期輸出的描述。避免不可重復(fù)的或無用的測試。既要寫有效輸入條件的測試用例,也要寫無效輸入條件的測試用例。,2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論