第十章-黑盒測試_第1頁
第十章-黑盒測試_第2頁
第十章-黑盒測試_第3頁
第十章-黑盒測試_第4頁
第十章-黑盒測試_第5頁
已閱讀5頁,還剩97頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第10章黑盒測試2015-11-16目錄黑盒測試的基本概念等價類劃分邊界值分析法因果圖法功能圖法黑盒測試方法的比較與選擇黑盒測試工具介紹黑盒測試的基本概念黑盒測試功能

黑盒測試試圖發(fā)現(xiàn)以下類型的錯誤:功能錯誤或遺漏;界面錯誤;數(shù)據(jù)結(jié)構(gòu)或外部數(shù)據(jù)庫訪問錯誤;性能錯誤;初始化和終止錯誤。黑盒測試的基本概念黑盒測試特點

理論上,黑盒測試只有采用窮舉輸入測試,把所有可能的輸入都作為測試情況考慮,才能查出所有的錯誤。實際上,測試情況是無窮多的,完全測試是不可能的,所以必須將黑盒測試行為加以分類。節(jié)約測試實施的時間和資源避免盲目測試、提高測試效率使測試的實施重點突出、目的更明確黑盒測試的基本概念黑盒測試五種方法

等價類劃分法邊界值分析法錯誤推測法因果圖法功能圖法等價類劃分基本概念

所謂等價分類,就是把輸入數(shù)據(jù)的可能值劃分為若干等價類,使每類中的任何一個測試用例,都能代表同一等價類中的其他測試用例。換句話說,如果從某一等價類中任意選出一個測試用例未能發(fā)現(xiàn)程序的錯誤,就可以合理地認為在該類中的其他測試用例也不會發(fā)現(xiàn)程序的錯誤。這樣,就把漫無邊際的隨機測試變成有針對性的等價類測試,有可能用少量有代表性的例子來代替大量內(nèi)容相似的測試,借以實現(xiàn)測試的經(jīng)濟性。等價類劃分基本概念等價類的分類:有效等價類和無效等價類。有效等價類是有意義的、合理的輸入數(shù)據(jù),可以檢查程序是否實現(xiàn)了規(guī)格說明中所規(guī)定的功能和性能。無效等價類與有效等價類的意義相反。注:設計測試用例時,要同時考慮這兩種等價類。因為軟件不僅要能接收合理的數(shù)據(jù),也要能經(jīng)受意外的考驗。經(jīng)過正反的測試才能確保軟件具有更高的可靠性。等價類劃分確定等價類的方法(1)在輸入條件規(guī)定了取值范圍或值的個數(shù)的情況下,則可以確立一個有效等價類和兩個無效等價類。例:成年人每分鐘的心跳60-100之間為正常。有效等價類:60-100

無效等價類:<60和>100等價類劃分確定等價類的方法(1)

例:對招干考試系統(tǒng)“輸入學生成績”子模塊設計測試用例招干考試分三個專業(yè),準考證號第一位為專業(yè)代號,如:1-行政專業(yè),2-法律專業(yè),3-財經(jīng)專業(yè)。行政專業(yè)準考證號碼為:110001~111215

法律專業(yè)準考證號碼為:210001~212006

財經(jīng)專業(yè)準考證號碼為:310001~314015等價類劃分確定等價類的方法(2)

在輸入條件規(guī)定了輸入值的集合或者規(guī)定了“必須如何”的條件的情況下,可以確立一個有效等價類和一個無效等價類。例:用戶連續(xù)輸入錯誤密碼的次數(shù)最多為3次。有效等價類:<=3次無效等價類:>3次等價類劃分確定等價類的方法(3)

在輸入條件是一個布爾量的情況下,可確定一個有效等價類和一個無效等價類。例:驗證碼就是一種布爾型取值。True或者False。這里就是一個有效等價類和一個無效等價類等價類劃分確定等價類的方法(4)

在規(guī)定了輸入數(shù)據(jù)的一組值(假定包括n個輸入值),并且程序要對每一個輸入值分別處理的情況下,可確立n個有效等價類和一個無效等價類。例:輸入條件說明學歷可為:專科、本科、碩士、博士四種之一,則分別取這四種這四個值作為四個有效等價類,另外把四種學歷之外的任何學歷作為無效等價類。

等價類劃分確定等價類的方法(5)

在規(guī)定了輸入數(shù)據(jù)必須遵守的規(guī)則的情況下,可確立一個有效等價類(符合規(guī)則)和若干個無效等價類(從不同角度違反規(guī)則)。

等價類劃分確定等價類的方法(5)

例:規(guī)定必須輸入非0的正整數(shù)。這種例子應充分考慮規(guī)則是否可以拆分為具有單一的子規(guī)則,然后得到從不同角度違反規(guī)則的無效等價類。該例子可拆分為非0、數(shù)字、正數(shù)、整數(shù)4個子規(guī)則,至少每個規(guī)則對應一個無效等價類,即0、字符串、負數(shù)、小數(shù),甚至可挖掘出輸入為空的隱含等價類。等價類劃分確定等價類的方法(6)

在確知已劃分的等價類中各元素在程序處理中的方式不同的情況下,則應再將該等價類進一步的劃分為更小的等價類。例:核對日期的有效性。初步有效等價類是1<=Month<=12,1<=Day<=31可是考慮到2月以及閏年、閏月、長月、短月等,需要進一步細分,當然其中還涉及到了年月日組合的問題。等價類劃分設計測試用例的原則

為每個等價類規(guī)定一個唯一的編號;設計一個新的測試用例,使其盡可能多地覆蓋尚未覆蓋的有效等價類。重復這一步,最后使得所有有效等價類均被測試用例所覆蓋;設計一個新的測試用例,使其只覆蓋一個無效等價類。重復這一步使所有無效等價類均被覆蓋。等價類劃分例:報表日期

設某公司要打印2001~2005年的報表,其中報表日期為6位數(shù)字組成,其中,前4位為年份,后兩位為月份。等價類劃分第一步:劃分等價類等價類劃分第二步:為有效等價類設計測試用例

對表中編號為1、2、3的3個有效等價類用一個測試用例覆蓋:等價類劃分第三步:為每個無效等價類至少設計一個測試用例等價類劃分一個實例例:輸入三個整數(shù)a、b、c(假定在1~100之間),分別作為三角形的三條邊,現(xiàn)通過程序判斷由三條邊構(gòu)成的三角形的類型為等邊三角形、等腰三角形、一般三角形(特殊的還有直角三角形),以及構(gòu)不成三角形。用等價類劃分方法為該程序進行測試用例設計。(三角形問題的復雜之處在于輸入與輸出之間的關(guān)系比較復雜。)等價類劃分一個實例解法一:分析給出和隱含的對輸入條件的要求:(1)整數(shù)(2)三個數(shù)(3)非零數(shù)(4)正數(shù)(5)兩邊之和大于第三邊(6)等腰(7)等邊如果a、b、c滿足條件:整數(shù)、三個數(shù)、非零數(shù)、正數(shù),則輸出下列四種情況之一:如果不滿足條件:兩邊之和大于第三邊,則程序輸出為“非三角形”。如果滿足條件:等邊,則程序輸出為“等邊三角形”

如果滿足條件:等腰,則程序輸出為“等腰三角形”。如果三條邊都不相等,則程序輸出為“一般三角形”。等價類劃分一個實例列出等價類表并編號

等價類劃分一個實例覆蓋有效等價類的測試用例:abc覆蓋等價類號碼345(1)--(7)445(1)--(7),(8)455(1)--(7),(9)545(1)--(7),(10)444(1)--(7),(11)等價類劃分一個實例覆蓋無效等價類的測試用例:等價類劃分一個實例解法二:在多數(shù)情況下,是從輸入域劃分等價類的,但并非不能從被測程序的輸出域反過來定義等價類,事實上,這對于三角形問題卻是最簡單的劃分方法。在三角形問題中,有四種可能的輸出:等邊三角形、等腰三角形、一般三角形和非三角形。利用這些信息能夠確定下列輸出(值域)等價類: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不能組成三角形}等價類劃分一個實例三角形問題的標準等價類測試用例等價類劃分一個實例三角形問題的弱健壯等價類測試用例等價類劃分補充問題分別解釋:弱一般等價類測試,弱健壯等價類測試,強一般等價類測試,強健壯等價類測試。弱一般等價類:基于單缺陷假設,對一個測試用例中的每個等價類的一個變量實現(xiàn)強一般等價類:基于多缺陷假設,覆蓋每個等價類進行測試。弱健壯等價類:基于單缺陷假設的健壯性測試,對于無效輸入等價類也將擁有一個測試用例.強健壯等價類:基于多缺陷假設的健壯性測試。等價類劃分補充問題實例說明:無效等價類:成績<0、成績>100;有效等價類:0<=成績<=100

弱一般等價類:0~100中任意一個數(shù)為測試數(shù)據(jù),只設計1個用例。強一般等價類:分為0、1~99、100三個等價類,需要設計3個用例。弱健壯等價類:考慮到60分在實際情況中為特殊數(shù)字,劃分0、1~99(除60外)、100、60四個等價類。強健壯等價類:考慮各種非法輸入,如負數(shù)、其他字符等。邊界值分析法基本概念

邊界值分析法就是對輸入或輸出的邊界值進行測試的一種黑盒測試方法。通常邊界值分析法是作為對等價類劃分法的補充,這種情況下,其測試用例來自等價類的邊界。邊界值分析法優(yōu)點作用為什么使用邊界值分析法?無數(shù)的測試實踐表明,大量的故障往往發(fā)生在輸入定義域或輸出值域的邊界上,而不是在其內(nèi)部。因此,針對各種邊界情況設計測試用例,通常會取得很好的測試效果。

邊界值分析法如何使用

怎樣用邊界值分析法設計測試用例?首先確定邊界情況。通常輸入或輸出等價類的邊界就是應該著重測試的邊界情況。選取正好等于、剛剛大于或剛剛小于邊界的值作為測試數(shù)據(jù),而不是選取等價類中的典型值或任意值。邊界值分析法常見的邊界值

對十六進制的整數(shù)而言32767和-32768是邊界屏幕上光標在最左上、最右下位置報表的第一行和最后一行數(shù)組元素的第一個和最后一個循環(huán)的第0次、第1次和倒數(shù)第2次、最后一次

邊界值分析法確定邊界值的方法

如果輸入條件規(guī)定了值的范圍,則應取剛達到這個范圍的邊界的值,以及剛剛超越這個范圍邊界的值作為測試輸入數(shù)據(jù)。如果輸入條件規(guī)定了值的個數(shù),則用最大個數(shù)、最小個數(shù)、比最小個數(shù)少一、比最大個數(shù)多一的數(shù)作為測試數(shù)據(jù)。邊界值分析法一些例子邊界值分析法內(nèi)部邊界值分析

在多數(shù)情況下,邊界值條件是基于應用程序的功能設計而需要考慮的因素,可以從軟件的規(guī)格說明或常識中得到,也是最終用戶可以很容易發(fā)現(xiàn)問題的。然而,在測試用例設計過程中,某些邊界值條件是不需要呈現(xiàn)給用戶的,或者說用戶是很難注意到的,但同時確實屬于檢驗范疇內(nèi)的邊界條件,稱為內(nèi)部邊界值條件或子邊界值條件。內(nèi)部邊界值條件主要有下面幾種:數(shù)值的邊界值檢驗字符的邊界值檢驗其它邊界值檢驗邊界值分析法數(shù)值的邊界值檢驗

計算機是基于二進制進行工作的,因此,軟件的任何數(shù)值運算都有一定的范圍限制。計算機數(shù)值運算的范圍邊界值分析法字符的邊界值檢驗

在計算機軟件中,字符也是很重要的表示元素,其中ASCII和Unicode是常見的編碼方式。下表中列出了一些常用字符對應的ASCII碼值。邊界值分析法其它邊界值檢驗

幾種情況默認值/空格/未輸入值/零、無效數(shù)據(jù)/不正確數(shù)據(jù)和干擾(垃圾數(shù)據(jù))等。在實際的測試用例設計中,需要將基本的軟件設計要求和程序定義的要求結(jié)合起來,即結(jié)合基本邊界值條件和內(nèi)部邊界值條件來設計有效的測試用例。邊界值分析法選擇測試用例規(guī)則

(1)如果輸入條件規(guī)定了值的范圍,則應取剛達到這個范圍的邊界值以及剛剛超過這個范圍邊界的值作為測試輸入數(shù)據(jù)。(2)如果輸入條件規(guī)定了值的個數(shù),則用最大個數(shù)、最小個數(shù)和比最大個數(shù)多1個、比最小個數(shù)少1個的數(shù)作為測試數(shù)據(jù)。(3)根據(jù)程序規(guī)格說明的每個輸出條件,使用原則(1)。(4)根據(jù)程序規(guī)格說明的每個輸出條件,使用原則(2)。邊界值分析法選擇測試用例規(guī)則

(5)如果程序的規(guī)格說明給出的輸入域或輸出域是有序集合(如有序表、順序文件等),則應選取集合中的第一個和最后一個元素作為測試用例。(6)如果程序中使用了一個內(nèi)部數(shù)據(jù)結(jié)構(gòu),則應當選擇這個內(nèi)部數(shù)據(jù)結(jié)構(gòu)的邊界上的值作為測試用例。(7)分析程序規(guī)格說明,找出其它可能的邊界條件。邊界值分析法邊界值分析法的使用

1)如果輸入條件規(guī)定了值的范圍,則應取剛達到這個范圍的邊界的值,以及剛剛超越這個范圍邊界的值作為測試輸入數(shù)據(jù)。例:如果程序的規(guī)格說明中規(guī)定:“重量在10公斤至50公斤范圍內(nèi)的郵件,其郵費計算公式為:貨物重量*費率=郵費”。有效等價類邊界值(10、10.01、50、49.99)無效等價類邊界值(9.99、50.01)邊界值分析法邊界值分析法的使用

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

例:一個輸入文件應包括1~255個記錄,則測試用例可取1和255,還應取0及256等。邊界值分析法邊界值分析法的使用

3)將規(guī)則1)和2)應用于輸出條件,即設計測試用例使輸出值達到邊界值及其左右的值。

例:某程序的規(guī)格說明要求計算出“每月保險金扣除額為0至1165.25元”。有效等價類邊界值(0.00、0.01、1165.24、1165.25)無效等價類邊界值(-0.01、1165.26)邊界值分析法邊界值分析法的使用

4)如果程序的規(guī)格說明給出的輸入域或輸出域是有序集合,則應選取集合的第一個元素和最后一個元素作為測試用例。5)分析規(guī)格說明,找出其它可能的邊界條件。邊界值分析法邊界值測試的分類

邊界值分析法一個實例例1:有兩個輸入變量x1(a≤x1≤b)和x2(c≤x2≤d)的程序F的邊界值分析測試用例如下:{<x1nom,x2min>,<x1nom,x2min+>,<x1nom,x2nom>,<x1nom,x2max>,<x1nom,x2max->,<x1min,x2nom>,<x1min+,x2nom>,<x1max,x2nom>,<x1max-,x2nom>}

邊界值分析法健壯性測試健壯性測試是作為邊界值分析的一個簡單的擴充,它除了對變量的5個邊界值分析取值外,還需要增加一個略大于最大值(max+)以及略小于最小值(min-)的取值,檢查超過極限值時系統(tǒng)的情況。因此,對于有n個變量的函數(shù)采用健壯性測試需要6n+1個測試用例。前面例1中的程序F的健壯性測試如下圖所示:

x1x2abcd邊界值分析法最壞情況測試5^N邊界值分析法健壯最壞情況測試7^N邊界值分析法案例討論在三角形問題描述中,除了要求邊長是整數(shù)外,沒有給出其它的限制條件。在此,我們將三角形每邊邊長的取值范圍設為[1,100]。說明:如果程序規(guī)格說明中沒有顯式地給出邊界值,則可以在設計測試用例前先設定取值的下限值和上限值

邊界值分析法案例討論邊界值分析法案例討論從得到的結(jié)果看,多變量同時取邊界值得到的測試用例集的質(zhì)量顯然沒有僅考慮一個變量邊界值的情況好。雖然前者覆蓋了后者所有的測試用例,但是花費的代價確實不小,前者的測試用例數(shù)是后者的十八倍,預期結(jié)果為“輸入錯誤”的用例約占總測試用例數(shù)63.6%,而且這些測試用例中的大多數(shù)是沒有意義的。這主要是因為多變量同時取邊界值關(guān)注的是變量同時取邊界值點時對于功能的影響,三角形問題的各個變量之間相對獨立,因此對于三角形問題僅考慮使用一個變量取邊界值,另外一個變量取正常值的情況就可以了。

邊界值分析法案例討論邊界值測試比較適合運用在有下列含義的變量上:數(shù)值字母位置數(shù)量速度大小

邊界值分析法案例討論除了遵循前面論述的邊界值設計原則,還應考慮測試下面的情況:第一個/最后一個,第一個-1/最后一個+1開始/結(jié)束,開始-1/結(jié)束+1超過/低于,剛剛超過/剛剛低于空的/滿的,比空的少點/比滿的多些最短的/最長的,稍微短點/稍微長點最慢的/最快的,稍微慢點/稍微快點最早的/最晚的,稍微早點/稍微晚點最大的/最小的,最大的+1/最小的-1最高的/最低的,最高的+1/最低的-1距離最近的/距離最遠的

邊界值分析法問題邊界值分析法與等價類劃分法區(qū)別?

(1)等價分類法的測試數(shù)據(jù)是在各個等價類允許的值域內(nèi)任意選取的,而邊界值分析的測試數(shù)據(jù)必須在邊界值附近選取。(2)用邊界值分析法設計的測試用例比等價分類法的代表性更廣,發(fā)現(xiàn)錯誤的能力也更強。但是對邊界的分析與確定比較復雜,要求測試人員具有更多的經(jīng)驗和創(chuàng)造性。因果圖法產(chǎn)生背景

等價類劃分法和邊界值分析方法都是著重考慮輸入條件,但沒有考慮輸入條件的各種組合、輸入條件之間的相互制約關(guān)系。這樣雖然各種輸入條件可能出錯的情況已經(jīng)測試到了,但多個輸入條件組合起來可能出錯的情況卻被忽視了。如果在測試時必須考慮輸入條件的各種組合,則可能的組合數(shù)目將是天文數(shù)字,因此必須考慮采用一種適合于描述多種條件的組合、相應產(chǎn)生多個動作的形式來進行測試用例的設計,這就需要利用因果圖(邏輯模型)。

因果圖法因果圖法的優(yōu)點

因果圖法的基礎思想:一些程序的功能可以用判定表(或稱決策表)的形式來表示,并根據(jù)輸入條件的組合情況規(guī)定相應的操作。因果圖法的定義:是一種利用圖解法分析輸入的各種組合情況,從而設計測試用例的方法,它適合于檢查程序輸入條件的各種組合情況。

因果圖法設計方法

因果圖法是從用自然語言書寫的程序規(guī)格說明的描述中找出因(輸入條件)和果(輸出或程序狀態(tài)的改變),通過因果圖轉(zhuǎn)換為判定表。利用因果圖導出測試用例需要經(jīng)過以下幾個步驟:因果圖法設計方法

①分析程序規(guī)格說明的描述中,哪些是原因,哪些是結(jié)果。原因常常是輸入條件或是輸入條件的等價類,而結(jié)果是輸出條件。②分析程序規(guī)格說明的描述中語義的內(nèi)容,并將其表示成連接各個原因與各個結(jié)果的“因果圖”。因果圖法設計方法

③標明約束條件。由于語法或環(huán)境的限制,有些原因和結(jié)果的組合情況是不可能出現(xiàn)的。為表明這些特定的情況,在因果圖上使用若干個標準的符號標明約束條件。④把因果圖轉(zhuǎn)換成判定表。⑤為判定表中每一列表示的情況設計測試用例。因果圖法四種基本關(guān)系

常在因果圖中,用Ci表示原因,Ei表示結(jié)果,其基本符號如圖下圖所示。各結(jié)點表示狀態(tài),可取“0”或“1”值。“0”表示某狀態(tài)不出現(xiàn),“1”表示某狀態(tài)出現(xiàn)。①恒等:若原因出現(xiàn),則結(jié)果出現(xiàn);若原因不出現(xiàn),則結(jié)果也不出現(xiàn)。②非(~):若原因出現(xiàn),則結(jié)果不出現(xiàn);若原因不出現(xiàn),則結(jié)果出現(xiàn)。③或(∨):若幾個原因中有1個出現(xiàn),則結(jié)果出現(xiàn);若幾個原因都不出現(xiàn),則結(jié)果不出現(xiàn)。④與(∧):若幾個原因都出現(xiàn),結(jié)果才出現(xiàn)。若其中有1個原因不出現(xiàn),則結(jié)果不出現(xiàn)。因果圖法四種基本關(guān)系

因果圖法四種基本方法

恒等:若c1是1,則e1也為1,否則e1為0。非:若c1是1,則e1為0,否則e1為1。因果圖法四種基本方法或:若c1或c2或c3是1,則e1為1,否則e1為0。與:若c1和c2都是1,則e1為1,否則e1為0。因果圖法約束關(guān)系

為了表示原因與原因之間、結(jié)果與結(jié)果之間可能存在的約束條件,在因果圖中可以附加一些表示約束條件的符號。從輸入(原因)考慮,有4種約束,從輸出結(jié)果考慮,還有1種約束。因果圖法約束關(guān)系E約束(異):a和b中最多有一個可能為1,即a和b不能同時為1。I約束(或):a、b、c中至少有一個必須為1,即a、b、c不能同時為0。因果圖法約束條件R約束(要求):a是1時,b必須是1,即a為1時,b不能為0。M約束(強制):若結(jié)果a為1,則結(jié)果b強制為0。O約束(唯一):a和b必須有一個且僅有一個為1因果圖法測試用例

程序的規(guī)格說明要求:輸入的第一個字符必須是#或*,第二個字符必須是一個數(shù)字,此情況下進行文件的修改;如果第一個字符不是#或*,則給出信息N,如果第二個字符不是數(shù)字,則給出信息M。因果圖法測試用例(1)分析程序規(guī)格說明中的原因和結(jié)果:因果圖法測試用例

(2)畫出因果圖(編號為10的中間結(jié)點是導出結(jié)果的進一步原因):因果圖法測試用例

(3)將因果圖轉(zhuǎn)換成如下所示的決策表:因果圖法測試用例

(4)根據(jù)決策表中的每一列設計測試用例:因果圖法問題

因果圖優(yōu)點有哪些?1、考慮到了輸入情況的各種組合以及各個輸入情況之間的相互制約關(guān)系。2、能夠幫助測試人員按照一定的步驟,高效率的開發(fā)測試用例。3、因果圖法是將自然語言規(guī)格說明轉(zhuǎn)化成形式語言規(guī)格說明的一種嚴格的方法,可以指出規(guī)格說明存在的不完整性和二義性。功能圖法基本概念

功能圖法是用功能圖形象地表示程序的功能說明,并機械地生成功能圖的測試用例,功能圖方法是一種黑盒白盒混合用例設計方法。功能圖法基本概念

程序功能說明包括動態(tài)說明和靜態(tài)說明。動態(tài)說明:描述輸入數(shù)據(jù)的次序或轉(zhuǎn)移次序。靜態(tài)說明:描述輸入條件和輸出條件之間的對應關(guān)系。每個程序的功能通常由靜態(tài)說明和動態(tài)說明組成,靜態(tài)說明描述了輸入條件和輸出條件之間的對應關(guān)系,而動態(tài)說明描述了輸入數(shù)據(jù)的次序或者轉(zhuǎn)移的次序。功能圖法設計方法

功能圖法就是為了解決動態(tài)說明問題的一種測試用例的設計方法功能圖:功能圖模型由狀態(tài)遷移圖和邏輯功能模型構(gòu)成。功能圖由狀態(tài)遷移圖(statetransitiondiagram,STD)和邏輯功能模型(logicfunctionmodel,LFM)構(gòu)成狀態(tài)遷移圖:用于表示輸入數(shù)據(jù)序列以及相應的輸出數(shù)據(jù);由輸入數(shù)據(jù)和當前狀態(tài)決定輸出數(shù)據(jù)和后續(xù)狀態(tài)。

邏輯功能模型:用于表示在狀態(tài)中輸入條件和輸出條件的對應關(guān)系。由輸入數(shù)據(jù)決定輸出數(shù)據(jù)。此模型只適用于描述靜態(tài)說明。功能圖法設計方法

狀態(tài)遷移圖,描述系統(tǒng)狀態(tài)變化的動態(tài)信息——動態(tài)說明,由狀態(tài)和遷移來描述,狀態(tài)指出數(shù)據(jù)輸入的位置(或時間),而遷移則指明狀態(tài)的改變。用節(jié)點表示狀態(tài),用弧度代替遷移,則狀態(tài)遷移圖就可轉(zhuǎn)化成一個程序的控制流程圖形式。功能圖法設計方法功能圖法設計方法邏輯功能模型,描述系統(tǒng)狀態(tài)的靜態(tài)信息——靜態(tài)說明,由布爾函數(shù)組成,要依靠決策表或因果圖表示的邏輯功能。邏輯功能模型用于表示狀態(tài)輸入條件和輸出條件之間的對應關(guān)系。邏輯功能只適合于靜態(tài)說明,輸出數(shù)據(jù)僅僅由輸入數(shù)據(jù)決定。功能圖法設計方法邏輯功能模型的決策表形式(1—成功,0—失?。┕δ軋D法生成法則

為了把狀態(tài)遷移(測試路徑)的測試用例與邏輯模型的測試用例組合起來,從功能圖生成實用的測試用例,需定義下面的規(guī)則。一個結(jié)構(gòu)化的狀態(tài)遷移中,定義三種形式的循環(huán):順序、選擇和重復。但分辨一個狀態(tài)遷移中的所有循環(huán)是有困難的。功能圖法生成測試用例步驟

①生成局部測試用例:在每個狀態(tài)中,從因果圖生成局部測試用例;②測試路徑生成:利用上面的規(guī)則生成從初始狀態(tài)到最后狀態(tài)的測試路徑;③測試用例合成:合成測試路徑與功能圖中每個狀態(tài)的局部測試用例。結(jié)果是初始狀態(tài)到最后狀態(tài)的一個狀態(tài)序列,以及每個狀態(tài)中輸入數(shù)據(jù)與對應輸出數(shù)據(jù)的組合;④采用條件構(gòu)造樹測試用例的合成算法。

黑盒測試方法的比較與選擇各種測試方法選擇的綜合策略1、首先進行等價類劃分,包括輸入條件和輸出條件的等價劃分,將無限測試變成有限測試,這是減少工作量和提高測試效率最有效的方法。2、在任何情況下都必須使用邊界值分析方法。經(jīng)驗表明,用這種方法設計出的測試用例發(fā)現(xiàn)程序錯誤的能力最強。3、可以用錯誤推測法追加一些測試用例,這需要依靠測試工程師的智慧和經(jīng)驗。4、對照程序邏輯,檢查已設計出的測試用例的邏輯覆蓋程度。如果沒有達到要求的覆蓋標準,應當再補充足夠的測試用例。黑盒測試方法的比較與選擇各種測試方法選擇的綜合策略5、如果程序的功能說明中含有輸入條件的組合情況,則一開始就可選用因果圖法和判定表驅(qū)動法。6、對于參數(shù)配置類的軟件,要用正交試驗法選擇較少的組合方式達到最佳效果。7、功能圖法也是很好的測試用例設計方法,我們可以通過不同時期條件的有效性設計不同的測試數(shù)據(jù)。8、對于業(yè)務流清晰的系統(tǒng),可以利用場景法貫穿整個測試案例過程,在案例中綜合使用各種測試方法。黑盒測試工具介紹概念簡介

軟件功能測試是典型的黑盒測試,主要檢查實際軟件的功能是否符合用戶的需求。目前,主要的專業(yè)開發(fā)軟件測試工具有MercuryInteractive公司的WinRunner,Rational公司的Robot,Conmpuware公司的QARun。

基本原理都是通過錄制和回放來實現(xiàn)自動化的功能測試,只是在具體實現(xiàn)形式上有所差別。黑盒測試工具介紹WinRunner簡介

WinRunner是一種企業(yè)級的功能測試工具,用于檢測應用程序是否正常運行及能夠達到預期的功能。通過自動錄制、檢測和回放用戶的應用操作,WinRunner能夠有效地幫助測試人員對復雜的企業(yè)級應用進行測試,提高測試人員的工作效率和質(zhì)量,確??缙脚_的、復雜的企業(yè)級應用無故障發(fā)布及長期穩(wěn)定運行。

黑盒測試工具介紹WinRunner特點

與傳統(tǒng)的手工測試相比,它能快速、批量地完成功能點測試能針對相同測試腳本,執(zhí)行相同的動作,從而消除人工測試所帶來的理解上的誤差它還能重復執(zhí)行相同動作,測試工作中最枯燥的部分可交由機器完成它支持程序風格的測試腳本,一個高素質(zhì)的測試工程師能借助它完成流程極為復雜的測試它針對于大多數(shù)編程語言和Windows技術(shù),提供了較好的集成、支持環(huán)境黑盒測試工具介紹WinRunner的工作流程

(1)識別應用程序的GUI:在WinRunner中,可以使用GUISpy來識別各種GUI對象,識別后,WinRunner會將其存儲到GUIMapFile中。它提供兩種GUIMapFile模式;GlobalGUIMapFile和GUIMapFileperTest。其最大區(qū)別是后者對兩個測試腳本產(chǎn)生一個GUI文件,它能自動建立、存儲、加載,推薦初學者選用這種模式。但是,這種模式不易于描述對象的改變,其效率比較低,因此對于一個有經(jīng)驗的測試人員來說前者不失為一種更好的選擇,它只產(chǎn)生一個共享的GUI文件,這使得測試腳本更容易維護,且效率更高。黑盒測試工具介紹WinRunner的工作流程

(2)建立測試腳本:在建立測試腳本時,一般先進行錄制,然后在錄制形成的腳本中手工加入需要的TSL。性能測試則是控制系統(tǒng)性能的有效手段,在軟件的能力驗證、能力規(guī)劃、性能調(diào)優(yōu)、缺陷修復等方面都發(fā)揮著重要作用。(3)對測試腳本出錯(debug):在WinRunner中有專門一個DebugToolbar用于測試腳本出錯。可以使用step、pause、breakpoint等來控制和跟蹤測試腳本和查看各種變量值。黑盒測試工具介紹WinRunner的工作流程(4)在新版應用程序中執(zhí)行測試腳本:當應用程序有新版本發(fā)布時,我們會對應用程序的各種功能包括新增功能進行測試,這時當然不可能再來重新錄制和編寫所有的測試腳本。可以使用已有的腳本,批量運行這些測試腳本測試舊的功能點是

溫馨提示

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

評論

0/150

提交評論