国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

黑盒測試技術(shù)方法在大氣數(shù)據(jù)計算機軟件測試中的應(yīng)用

2018-10-15 05:28安鵬偉
導(dǎo)航定位與授時 2018年5期
關(guān)鍵詞:黑盒測試用例等價

魏 鑫,安鵬偉,趙 菲,高 米

(北京京航計算通訊研究所,北京 100074)

0 引言

隨著我國武器裝備技術(shù)的不斷發(fā)展,嵌入式軟件在武器裝備上的作用越來越重要,軟件的質(zhì)量和可靠性直接影響武器裝備產(chǎn)品的可靠性、實用性和安全性。因此,在軟件開發(fā)生命周期中進行全面的軟件測試至關(guān)重要。

從國外發(fā)展?fàn)顩r來看,發(fā)達國家的軟件測試技術(shù)發(fā)展水平較高,已成為獨立的產(chǎn)業(yè),且在整個軟件技術(shù)發(fā)展中占有越來越重要的地位。測試人員的數(shù)量比重在不斷提升,軟件測試自動化水平很高[1]。從國內(nèi)發(fā)展?fàn)顩r來看,我國軟件測試技術(shù)起步比較晚,與發(fā)達國家相比,還存在一定的差距,如對軟件測試重視度不足、軟件測試專業(yè)高端技術(shù)人員缺乏、自動化測試水平不高等等。

為了提高軟件質(zhì)量,確保軟件的實現(xiàn)滿足用戶的需求,尤其是性能、接口等方面,采用黑盒測試方法開展軟件測試,成為嵌入式軟件的重要環(huán)節(jié)[2-3]。在軟件測試過程中,測試用例的設(shè)計是最關(guān)鍵的環(huán)節(jié)。本文重點介紹了黑盒測試技術(shù)的由來、原理、特點,從黑盒測試方面研究軟件測試的技術(shù)和方法,介紹了運用黑盒測試技術(shù)生成測試用例的主要方法,并給出該方法在大氣數(shù)據(jù)計算機軟件測試中的應(yīng)用。

1 黑盒測試技術(shù)

黑盒測試是指把待測試程序或系統(tǒng)軟件看成一個黑盒子[4],在不知程序內(nèi)部結(jié)構(gòu)和處理過程的前提下,依靠程序接口進行的測試,從而檢查軟件功能是否滿足軟件規(guī)格說明的要求,程序是否能接收輸入數(shù)據(jù)并產(chǎn)生正確的輸出數(shù)據(jù),并保持外部數(shù)據(jù)的完整性和正確性。因此,黑盒測試又稱功能測試或數(shù)據(jù)驅(qū)動測試[5-6]。

黑盒測試又可稱為從用戶觀點和需求出發(fā)進行的測試,由于黑盒測試不考慮程序內(nèi)部結(jié)構(gòu),只關(guān)注軟件是否能夠根據(jù)不同輸入給出符合需求規(guī)定的輸出,所以許多高層的測試(如確認(rèn)測試、系統(tǒng)測試、驗收測試)都采用黑盒測試。

黑盒測試還包含非功能性測試,如性能測試(檢查軟件各項功能的性能是否達到相應(yīng)的指標(biāo))、強度測試(檢查軟件在各種極端條件下是否可以正常工作)、安全性測試等。

黑盒測試分為靜態(tài)和動態(tài)兩種。靜態(tài)黑盒測試是不運行待測試軟件,只對軟件需求規(guī)格說明進行文檔審查。動態(tài)黑盒測試是運行待測試軟件,檢查其功能的正確性和完整性等。

檢查軟件需求規(guī)格,一方面發(fā)現(xiàn)軟件需求規(guī)格說明中可能存在的問題,另一方面在充分理解軟件需求規(guī)格說明的基礎(chǔ)上,對軟件輸入進行等價類劃分和邊界值分析,構(gòu)建因果圖、狀態(tài)轉(zhuǎn)換圖以及輸入等,并對系統(tǒng)進行適當(dāng)?shù)腻e誤猜測,從而進行黑盒測試。

采用黑盒測試設(shè)計測試用例的主要方法有:等價類劃分方法、邊界值分析方法、功能分解方法、錯誤推測法和因果圖分析方法等,下面簡單介紹這幾種測試方法。

1.1 等價類劃分法

等價類是指某個輸入域的集合,在這個集合中每個輸入條件都是等效的。等價類劃分方法是一種典型的黑盒測試方法,它不考慮程序內(nèi)部結(jié)構(gòu),首先根據(jù)需求規(guī)格說明對輸入范圍進行劃分,把所有可能的輸入數(shù)據(jù)分為若干個互不相交的子集,稱為等價類,然后從等價類中選取代表性的數(shù)據(jù)作為測試用例進行測試[7]。等價類中的元素有共同特征,如果用等價類中一個元素作為測試數(shù)據(jù)不能發(fā)現(xiàn)程序中的故障,那么使用集合中的其他元素進行測試也不能發(fā)現(xiàn)故障。

使用等價類劃分方法設(shè)計測試用例,在分析需求規(guī)格說明的基礎(chǔ)上劃分等價類,列出等價類表。等價類劃分有兩類:有效等價類和無效等價類。有效等價類指符合需求規(guī)格說明,合理的輸入數(shù)據(jù)構(gòu)成的集合;無效等價類指不合理的輸入數(shù)據(jù)所構(gòu)成的集合[8]。設(shè)計測試用例時,需要同時考慮這兩種等價類。因為軟件既要接收合理的數(shù)據(jù)輸入,也要能接收非法的數(shù)據(jù)輸入,這樣的測試才能確保軟件具有更高的可靠性。

1.2 邊界值分析分法

邊界值分析方法作為等價類劃分方法的有效補充,主要針對各種邊界情況設(shè)計測試用例。邊界值分析關(guān)注的是輸入、輸出空間的邊界條件,用以選擇測試用例。

一些與邊界有關(guān)的數(shù)據(jù)類型,一般有數(shù)值、數(shù)量、速度、位置等。這些數(shù)據(jù)類型可以考慮幾方面特征:最大和最小、最長和最短、最慢和最快、最高和最低、最近和最遠等[9]。

邊界測試只測試邊界線上的數(shù)據(jù)點是不充分的,一定要考慮臨近邊界的合法數(shù)據(jù),即測試最后一個可能合法的數(shù)據(jù),以及剛剛超過邊界的非法數(shù)據(jù)。

1.3 錯誤猜測法

錯誤猜測法基于測試人員的經(jīng)驗和直覺來推測系統(tǒng)軟件可能存在的各種缺陷,是有針對性地設(shè)計測試用例的方法。錯誤猜測法的基本原理是利用直覺和經(jīng)驗猜測出錯的可能類型,然后編寫測試用例腳本來暴露這些缺陷[10]。

1.4 因果圖法

因果圖法適用于多種輸入條件組合的測試方法。因果圖法可彌補邊界值分析法和等價類劃分法中未對輸入條件之間的聯(lián)系、相互組合等進行驗證的情況。

當(dāng)輸入條件存在若干可能的組合時,需對這些組合加以考慮,證明測試程序在某種輸入組合的情況下能否完成軟件需求規(guī)格說明規(guī)定的要求。該方法可以幫助測試人員按照設(shè)計步驟選擇高效的測試用例,同時可以檢查出程序缺陷[11]。

2 黑盒測試技術(shù)應(yīng)用實例

黑盒測試是發(fā)現(xiàn)軟件缺陷提高軟件質(zhì)量的一種非常有效的方法,通過黑盒測試能夠驗證整個軟件的功能、性能、安全性等指標(biāo)是否符合軟件需求規(guī)格說明中的要求[12-13]。

大氣數(shù)據(jù)計算機屬于大氣數(shù)據(jù)系統(tǒng),通過自身探頭采集大氣總壓、靜壓等,解算得出氣壓高度、空速等大氣參數(shù)。通過外部接口將解算的數(shù)據(jù)發(fā)送給主控計算機、慣導(dǎo)等系統(tǒng)并接收主控計算機系統(tǒng)發(fā)送的加溫指令等信息,并向采集記錄設(shè)備發(fā)送數(shù)據(jù)信息。

大氣數(shù)據(jù)計算機軟件屬于嵌入式軟件,在大氣數(shù)據(jù)計算機軟件的黑盒測試過程中采用上述測試方法設(shè)計測試用例,不僅可以突出重點,提高效率,發(fā)現(xiàn)問題,且實用快捷,能夠縮短測試周期。

2.1 動態(tài)測試環(huán)境

大氣數(shù)據(jù)計算機軟件在大氣數(shù)據(jù)計算機上運行,通過綜合測試設(shè)備模擬記錄設(shè)備、慣導(dǎo)、主控計算機等數(shù)據(jù)信息。壓力測試儀通過電纜與大氣數(shù)據(jù)計算機連接,AC220V和DC28V電源分別給綜合測試設(shè)備和大氣數(shù)據(jù)計算機提供電源,如圖1所示。大氣數(shù)據(jù)計算機軟件的配置項測試環(huán)境主要以其設(shè)計開發(fā)環(huán)境的硬件和軟件為基礎(chǔ)構(gòu)建,所有測試組件均根據(jù)測試用例的要求設(shè)計,以構(gòu)建出接近真實的軟件運行外部環(huán)境。該配置項環(huán)境主要完成功能需求測試和非功能需求測試。

2.2 等價類劃分法的應(yīng)用

上電自檢測主要采用等價類劃分的方法設(shè)計測試用例。根據(jù)上電自檢測的功能要求,主要對傳感器特征數(shù)據(jù)的有效性等各項功能進行檢查。選取正常等價類和無效等價類的方法對上電自檢測進行設(shè)計,設(shè)計6個測試用例,具體測試用例如表1所示。

表1 上電自檢測采用等價類劃分方法設(shè)計用例

又如,大氣數(shù)據(jù)計算機軟件對采集的數(shù)據(jù)進行限幅。在驗證軟件對采集和接收的數(shù)據(jù)進行限幅時,采用等價類劃分的方法設(shè)計用例,根據(jù)限定的幅值,對采集的數(shù)據(jù)按照有效等價類和無效等價類設(shè)計測試用例,選取代表性數(shù)據(jù)作為測試用例,既保證了測試覆蓋全面,又提高了測試效率。具體的測試用例如表2所示。

表2 等價類劃分法設(shè)計采集數(shù)據(jù)限幅功能測試用例

等價類劃分法是一種科學(xué)有效的方法,該方法將無限的輸入空間簡化為小規(guī)模的有效集合,避免盲目或隨機選取輸入數(shù)據(jù)的不完整性和覆蓋的不全面性。在大氣數(shù)據(jù)計算機軟件功能測試和接口測試中設(shè)計出完整的測試用例,減少不必要的測試用例,大大減少工作量,有效提高測試效率。

2.3 邊界值分析法的應(yīng)用

大氣數(shù)據(jù)計算機軟件在動態(tài)測試時,有許多數(shù)據(jù)臨界處理需要采用邊界值分析方法進行測試用例設(shè)計。對靜壓溫度電壓測試采用了邊界值分析法,設(shè)計了至少6個測試用例,如表3所示。

表3 邊界值分析方法設(shè)計用例

在大氣數(shù)據(jù)計算機軟件測試中,涉及數(shù)據(jù)臨界處理的功能測試,均使用了邊界值分析法,實際測試發(fā)現(xiàn),邊界值分析法很容易發(fā)現(xiàn)程序的缺陷,提高了測試效率和軟件質(zhì)量。

2.4 錯誤推測法的應(yīng)用

利用錯誤推測法在大氣數(shù)據(jù)計算機軟件測試中設(shè)計了很多行之有效的測試用例。例如:對要求輸入數(shù)字的地方,設(shè)計輸入字母、空格等的測試用例;對只接受正數(shù)的地方,設(shè)計輸入負數(shù)的測試用例;對要求輸入范圍的數(shù)據(jù),如對范圍在[-999,999]內(nèi),設(shè)計特殊數(shù)據(jù)0等的測試用例;對經(jīng)緯度數(shù)據(jù)測試設(shè)計測試用例時,設(shè)計輸入90、180、270等的測試用例。實際執(zhí)行上述測試用例,發(fā)現(xiàn)了不少問題,有的問題還導(dǎo)致了程序異常退出,因此采用錯誤推測法設(shè)計測試用例是非常有效的。

2.5 因果圖法的應(yīng)用

采用因果圖方法設(shè)計用戶界面登錄的測試用例,有3個組合項,賬號、密碼、登錄確認(rèn)按鈕。在測試時,采用因果圖的方法,整理出3個正常輸入條件和3個異常輸入條件,進而畫出因果圖(見圖2),然后從因果圖導(dǎo)出判定表(見表4),最后從判定表導(dǎo)出測試用例(見表5)。

1234567原因輸入6~10位自然數(shù)賬號1100000點擊登錄按鈕1111111輸入6~16密碼(非空、非保留字、非功能鍵、非漢字)1010000輸入<6或>10的賬號0000101賬號為空、空格、負數(shù)、小數(shù)、英文字母、特殊字符、編程中轉(zhuǎn)義字符0000010密碼為空、空格、<6位或>16位、保留字、漢字、功能鍵0000001結(jié)果正確登錄1000000錯誤提示0111111

表5 從判定表導(dǎo)出測試用例

通過黑盒測試技術(shù)在大氣數(shù)據(jù)計算機軟件測試中的實踐,總結(jié)出黑盒測試方法選擇測試策略如下:

首先,進行等價類劃分,包括輸入條件和輸出條件的等價類劃分,將無限測試變成有限測試,是減少測試工作量和提高測試效率最有效的方法。

其次,在任何情況下都必須使用邊界值分析方法,用這種方法設(shè)計出的測試用例發(fā)現(xiàn)程序錯誤的能力最強。

然后,用錯誤推測法追加一些測試用例,該方法需要依靠測試人員的智慧和經(jīng)驗。

最后,如果軟件功能中含有輸入條件的組合情況,選用因果圖法和判定表驅(qū)動法,以保證覆蓋充分全面。

3 測試結(jié)論

黑盒測試不是基于無知的測試,它意味著產(chǎn)品內(nèi)部知識在測試中不起重要作用,重點強調(diào)有關(guān)軟件的用戶和環(huán)境知識,大氣數(shù)據(jù)計算機軟件這種嵌入式系統(tǒng)具有很強的專用性和硬件依賴性。本文重點以黑盒測試技術(shù)的等價類劃分法、邊界值分析方法和因果圖法為研究內(nèi)容,以大氣數(shù)據(jù)計算機軟件作為測試實踐,從用戶角度闡述輸入數(shù)據(jù)和輸出數(shù)據(jù)的關(guān)系,驗證黑盒測試技術(shù)方法對軟件的功能、非功能需求測試的正確性。技術(shù)研究和測試結(jié)果表明,采用等價類劃方法、邊界值分析方法和因果圖法與傳統(tǒng)測試方法相比,節(jié)省大量人力,提高動態(tài)測試效率,發(fā)現(xiàn)大量軟件缺陷,有效提高了軟件質(zhì)量,具有較好的推廣價值。

猜你喜歡
黑盒測試用例等價
一種基于局部平均有限差分的黑盒對抗攻擊方法
等價轉(zhuǎn)化
基于LDA模型的測試用例復(fù)用方法*
n次自然數(shù)冪和的一個等價無窮大
軟件測試中的測試用例及復(fù)用研究
將問題等價轉(zhuǎn)化一下再解答
等價轉(zhuǎn)化思想在高中數(shù)學(xué)中的應(yīng)用
測試工時受限的測試策略研究
卢龙县| 友谊县| 达州市| 邛崃市| 通山县| 渑池县| 阿瓦提县| 平凉市| 海南省| 喀喇| 桐庐县| 仁寿县| 延长县| 长海县| 宿州市| 阳西县| 阳江市| 芦山县| 凤冈县| 隆昌县| 莲花县| 新巴尔虎右旗| 本溪市| 碌曲县| 冕宁县| 尚志市| 清水河县| 万盛区| 华宁县| 沈阳市| 双峰县| 静安区| 老河口市| 兴隆县| 梁平县| 青龙| 壶关县| 呼和浩特市| 上栗县| 旌德县| 云霄县|