新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 使用McCabe IQ提高測(cè)試質(zhì)量的研究

使用McCabe IQ提高測(cè)試質(zhì)量的研究

作者: 時(shí)間:2013-11-29 來(lái)源:網(wǎng)絡(luò) 收藏

隨著軟件產(chǎn)業(yè)的急速發(fā)展,應(yīng)用軟件系統(tǒng)規(guī)模不斷增大,企業(yè)對(duì)軟件質(zhì)量的的重視程度越來(lái)越高,軟件企業(yè)對(duì)軟件測(cè)試的投入也逐漸增加。目前的商業(yè)環(huán)境下,商業(yè)應(yīng)用軟件的測(cè)試著重考慮如下問題:

  (1)效益。怎樣確保每個(gè)測(cè)試都有時(shí)間和經(jīng)濟(jì)方面的效益。(2)徹底。測(cè)試到達(dá)怎樣的程度可以合理地認(rèn)為程序已經(jīng)沒有錯(cuò)誤了。(3)資源分配。測(cè)試資源的分配是否合理,是否聚焦在軟件的高危模塊上,核心功能部分是否得到足夠的測(cè)試。

  軟件測(cè)試中,覆蓋率分析的方法越來(lái)越多地為測(cè)試人員使用。覆蓋率是軟件測(cè)試的一項(xiàng)重要指標(biāo),通過(guò)達(dá)到良好的測(cè)試覆蓋率,可以保證軟件測(cè)試的質(zhì)量。

  1 測(cè)試工具

   是美國(guó) Software公司的軟件質(zhì)量管理解決方案,McCebe 是一款基于McCabe圈復(fù)雜度進(jìn)行質(zhì)量度量和測(cè)試的工具,為用戶提供軟件質(zhì)量度量、軟件結(jié)構(gòu)分析及動(dòng)態(tài)結(jié)構(gòu)化測(cè)試的全面支持。McCabe IQ提供客觀的方法評(píng)估測(cè)試覆蓋率,具有一致性、重復(fù)性、客觀解釋、質(zhì)量評(píng)估、優(yōu)化測(cè)試及分配資源等強(qiáng)大功能,能真正保證測(cè)試每個(gè)獨(dú)立路徑,可以確定測(cè)試過(guò)的路徑和沒測(cè)試過(guò)的路徑。

  圈復(fù)雜度是用來(lái)衡量一個(gè)模塊判定結(jié)構(gòu)的復(fù)雜程度,數(shù)量上表現(xiàn)為獨(dú)立現(xiàn)行路徑條數(shù),即合理的預(yù)防錯(cuò)誤所需測(cè)試的最少路徑條數(shù)[1]。圈復(fù)雜度高說(shuō)明代碼質(zhì)量可能很差,難于測(cè)試和維護(hù)。根據(jù)經(jīng)驗(yàn),程序的可能錯(cuò)誤和圈復(fù)雜度高有著很大關(guān)系。圈復(fù)雜度顯示了在測(cè)試一個(gè)單元時(shí),為保證軟件質(zhì)量而需要測(cè)試的基本路徑的最小數(shù)目[2]。McCabe IQ建議將圈復(fù)雜度不超過(guò)10,因?yàn)楦叩膹?fù)雜度使測(cè)試變得復(fù)雜并且可能會(huì)發(fā)生更多的錯(cuò)誤。

  2 使用McCabe IQ做覆蓋率分析

  McCabe IQ的度量基于軟件結(jié)構(gòu)數(shù)學(xué)化的嚴(yán)格分析,這種分析以McCebe圖復(fù)雜度為基礎(chǔ),明確地確定了高風(fēng)險(xiǎn)區(qū)域。McCebe IQ就是一款基于McCabe圈復(fù)雜度進(jìn)行質(zhì)量度量和測(cè)試的工具。McCabe IQ覆蓋率分析使用了源代碼插裝技術(shù),能生成分支和路徑覆蓋報(bào)告。對(duì)于給定的程序,所有的可測(cè)試路徑的數(shù)目通常非常巨大,找到一個(gè)有意義的可測(cè)試路徑子集非常重要。被MeCabe IQ標(biāo)識(shí)出的路徑雖不能代表程序中所有可能路徑,但最小的測(cè)試路徑子集至少遍歷每個(gè)一次判定,將使McCabe IQ的“圈復(fù)雜度”路徑分析技術(shù)成為可能。

  McCabe IQ可以很方便地做到如下分析:

 ?。?)復(fù)雜度分析:McCabe IQ提供了復(fù)雜度信息的即時(shí)訪問,測(cè)量不同的源代碼特性,標(biāo)識(shí)出相關(guān)的復(fù)雜度信息和程序不同模塊的結(jié)構(gòu)化程度,特別復(fù)雜或非結(jié)構(gòu)化代碼部分可以在覆蓋率報(bào)告中突出出來(lái),使得測(cè)試工程師更容易識(shí)別出有缺陷的代碼。

 ?。?)軟件變更分析:當(dāng)一個(gè)程序被修改,測(cè)試需要聚焦在修改的代碼上,以及那些被修改代碼影響的代碼,McCabe IQ的軟件變更分析不但可以標(biāo)識(shí)出變更過(guò)的代碼,而且還可以標(biāo)識(shí)出被修改所影響的模塊。

  2.1 McCabe IQ提升功能測(cè)試

  在功能測(cè)試中,McCabe IQ從程序的需求中得到要測(cè)試的功能,然后執(zhí)行測(cè)試用例以驗(yàn)證程序是否按照預(yù)期運(yùn)行。功能測(cè)試的目的是為了識(shí)別缺失的功能、不能正確運(yùn)行的功能,以及功能缺陷[3]。

  2.1.1 功能測(cè)試在執(zhí)行過(guò)程中要解決如下問題:

 ?。?)隱含功能的丟失。由于需求定義隱含缺陷,從需求文檔得到的功能測(cè)試會(huì)丟失隱含功能。這樣,功能測(cè)試很難確保測(cè)試的完全性,而且功能測(cè)試在功能合并階段也會(huì)導(dǎo)致有問題的行為。

 ?。?)停止測(cè)試的時(shí)機(jī)。在功能測(cè)試中,可測(cè)試功能組合的數(shù)量相當(dāng)巨大,最糟糕的情況是功能組合的數(shù)量將是2的功能需求次冪的形式,顯然測(cè)試所有的功能組合是不


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: McCabe IQ 測(cè)試質(zhì)量

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉