• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      淺談軟件測試方法

      2014-04-06 01:38:01耿宏超
      河南科技 2014年2期
      關(guān)鍵詞:白盒黑盒正確性

      耿宏超

      (曲阜師范大學(xué) 計算機科學(xué)學(xué)院,山東 日照 276826)

      1 軟件測試概述

      1.1 軟件測試概念

      軟件測試的概念是,在規(guī)定條件下對程序進行操作,以發(fā)現(xiàn)程序錯誤,衡量軟件質(zhì)量,并對其是否能滿足設(shè)計要求進行評估的過程。軟件測試對軟件正確性、完整性、安全性進行檢測和糾錯,使用人工手動檢測或自動檢測方法對某段程序進行運行和測試。

      1.2 軟件測試活動的五個過程

      (1)標(biāo)志測試條件和測試優(yōu)先級。測試條件是對被測環(huán)境的具體描述,可以采用表格、語言、圖標(biāo)等方式進行描述。(2)設(shè)計測試用例。測試用例的設(shè)計包括測試過程中能夠用到的輸入值、期望值,以及運行過程中涉及的相關(guān)信息。(3)開發(fā)測試用例。開發(fā)是設(shè)計方案的具體實施,包括測試腳本、測試輸入、測試數(shù)據(jù)及期望輸出。(4)執(zhí)行測試用例。手動測試:將事先設(shè)計開發(fā)好的數(shù)據(jù)輸入,并觀察結(jié)果、記錄問題。自動測試:啟動測試工具,選擇測試用例,獲取測試結(jié)果。(5)將測試結(jié)果與預(yù)期輸出進行比較。對每個測試用例的輸出和預(yù)期值進行比較分析,判斷軟件程序運行是否符合要求。

      2 軟件測試類型

      2.1 BVT(Build Verification Test)。BVT 是在檢入代碼并編譯生成版本之后進行的測試類型,主要用于檢測新版本功能是否完整、特性是否正確。

      2.2 Scenario Tests(基于用戶實際應(yīng)用場景的測試)。在進行BVT 功能測試的同時輔助模仿用戶操作的真實環(huán)境,提供完整的用戶操作流程。

      2.3 Smoke Test。當(dāng)發(fā)現(xiàn)一個程序錯誤并由開發(fā)人員進行修改之后,需要重新測試問題是否解決,這種專門測試某個修改過的錯誤的測試就是Smoke Test。

      2.4 Application Compatibility Test(兼容性測試)。軟件設(shè)計不僅要能在測試機上使用,還要能在不同平臺和系統(tǒng)中使用,兼容性測試完成才能確保新軟件能在不同環(huán)境下正常運行。

      2.5 除了上述四種主要測試類型,還有Functional Test(功能測試)、Security Test (安全性測試)、Stress Test (壓力測試)、Performance Test(性能測試)、Regression Test(回歸測試)、Setup/Upgrade Test(安裝升級測試)等類型測試,此處不做贅述。

      3 軟件測試方法

      軟件測試方法多種多樣,根據(jù)是否需要執(zhí)行被測軟件分為靜態(tài)測試和動態(tài)測試; 根據(jù)測試針對角度不同分為白盒測試和黑盒測試。下面詳細(xì)介紹這幾種測試方法。

      3.1 靜態(tài)測試和動態(tài)測試

      3.1.1 靜態(tài)測試。靜態(tài)測試只檢查程序代碼、界面或文檔中可能存在的Bug,不運行被檢測軟件。它包括代碼測試、界面測試、 文檔測試三部分。代碼測試只檢測代碼邏輯是否符合標(biāo)準(zhǔn);界面測試主要測試軟件界面與用戶需求界面是否一致;文檔測試根據(jù)用戶要求檢測用戶手冊、需求說明文檔。

      3.1.2 動態(tài)測試。與靜態(tài)測試相對,動態(tài)測試是通過運行軟件來檢測軟件的功能、結(jié)果是否正確,應(yīng)用范圍及頻率遠(yuǎn)高于靜態(tài)測試。動態(tài)測試在測試軟件過程中分為幾個階段: 單元測試:測試軟件中的基本組成單元,檢測軟件最基礎(chǔ)的正確性;集成測試: 首先進行組裝測試,對單元相互聯(lián)系模塊接口進行檢測,然后確認(rèn)檢測,對組裝測試結(jié)果進行進一步檢測和確認(rèn);系統(tǒng)測試: 對集成測試完成之后的軟件進行軟件系統(tǒng)正確性和功能性檢測,確保軟件系統(tǒng)運行正常;驗收測試:軟件發(fā)布使用之前的最后一道檢測,也可以看做是用戶的試用階段測試;回歸測試:在軟件試用之后,對試用階段的問題進行修改和再檢測。

      3.2 白盒測試和黑盒測試

      3.2.1 白盒測試

      白盒測試是在了解程序內(nèi)部結(jié)構(gòu)和實現(xiàn)代碼結(jié)果的基礎(chǔ)上設(shè)計測試用例進行檢測的方法。它針對軟件結(jié)構(gòu)或邏輯驅(qū)動進行測試,僅檢測每天程序是否按規(guī)定執(zhí)行,并不對其產(chǎn)生的功能進行檢測。

      白盒測試的主要測試方法有邏輯驅(qū)動測試和基本路經(jīng)測試兩種。其中邏輯驅(qū)動測試以程序內(nèi)部邏輯結(jié)構(gòu)為基礎(chǔ),針對覆蓋率進行測試,包括語句覆蓋、分支覆蓋、條件覆蓋、路徑覆蓋四部分?;韭方?jīng)測試是根據(jù)程序運行流程圖設(shè)計測試用例進行測試的方法,它的測試步驟包括畫控制流程圖、計算程序圈復(fù)雜度、導(dǎo)出測試用例、準(zhǔn)備測試用例,期間涉及的測試工具主要是圖形矩陣。

      白盒測試雖然增大了檢測代碼覆蓋率、發(fā)現(xiàn)代碼中隱藏問題、提高了代碼的正確性,但是它仍具有很多缺陷,測試路徑復(fù)雜、不能檢測軟件設(shè)計的正確性、增大了系統(tǒng)開銷等。

      3.2.2 黑盒測試

      黑盒測試將軟件系統(tǒng)看做一個封閉的空間,利用測試用例輸入和輸出檢測軟件功能是否正確。黑盒檢測的目的是檢測結(jié)果正確性、需求是否滿足、邊界條件、性能穩(wěn)定性、壓力承受力、錯誤恢復(fù)、安全性、兼容性。相比于白盒測試,黑盒測試具有簡單易行、不涉及內(nèi)部結(jié)構(gòu)、關(guān)注用戶角度、測試方便等優(yōu)點,但是同時它的代碼覆蓋率低、 自動化測試復(fù)用性低等缺點也限制了它的檢測全面性。

      4 結(jié)語

      軟件測試在軟件設(shè)計開發(fā)過程中占有很大的比重,任何軟件的成功推行都必須有完整的測試體系來確保軟件的運行正確性和功能完整性,是軟件系統(tǒng)的強有力的保障。

      [1]陳汶斌.軟件測試技術(shù)基礎(chǔ)[M].北京:清華大學(xué)出版社,2008.

      猜你喜歡
      白盒黑盒正確性
      一種基于局部平均有限差分的黑盒對抗攻擊方法
      面向未來網(wǎng)絡(luò)的白盒交換機體系綜述
      DWB-AES:基于AES 的動態(tài)白盒實現(xiàn)方法
      一種基于系統(tǒng)穩(wěn)定性和正確性的定位導(dǎo)航方法研究
      網(wǎng)絡(luò)“黑”“白”之爭
      通信世界(2018年29期)2018-11-21 06:34:44
      淺談如何提高水質(zhì)檢測結(jié)果準(zhǔn)確性
      雙口RAM讀寫正確性自動測試的有限狀態(tài)機控制器設(shè)計方法
      基于EEPROM數(shù)據(jù)讀寫的智能電能表白盒測試方法
      電測與儀表(2014年3期)2014-04-04 09:08:08
      實現(xiàn)FPGA與PC的串行通信
      左云县| 邹平县| 临泉县| 泗水县| 庆阳市| 渝中区| 泰和县| 布拖县| 宜宾市| 神农架林区| 景德镇市| 瓦房店市| 井陉县| 唐山市| 宝丰县| 梁山县| 望城县| 安多县| 北川| 沾化县| 德令哈市| 淮阳县| 九寨沟县| 吴堡县| 永顺县| 临夏县| 满洲里市| 安宁市| 日土县| 西平县| 塔河县| 永靖县| 名山县| 昌图县| 奇台县| 怀宁县| 全椒县| 双柏县| 册亨县| 桃园市| 昭觉县|