qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請?jiān)L問 http://qaseven.github.io/

          軟件缺陷的種類劃分

          按照軟件缺陷的產(chǎn)生原因,可以將其劃分為不同的缺陷類別:

            1、功能不正常

            簡單地說就是所應(yīng)提供的功能,在使用上并不符合產(chǎn)品設(shè)計(jì)規(guī)格說明書中規(guī)定的要求,或是根本無法使用。這個錯誤常常會發(fā)生在測試過程的初期和中期,有許多在設(shè)計(jì)規(guī)格說明書中規(guī)定的功能無法運(yùn)行,或是運(yùn)行結(jié)果達(dá)不到預(yù)期設(shè)計(jì)。最明顯的例子就是在用戶接口上所提供的選項(xiàng)及動作,使用者操作后毫無反應(yīng)。

            2、軟件在使用上感覺不方便

            只要是不知如何使用或難以使用的軟件,在產(chǎn)品設(shè)計(jì)上一定是出了問題。所謂好用的軟件,就是使用上盡量方便,使用戶易于操作。如微軟推出的軟件,在用戶接口及使用操作上確實(shí)是下了一番功夫。有許多軟件公司推出的軟件產(chǎn)品,在彼此的接口上完全不同,這樣其實(shí)只會增加使用者的學(xué)習(xí)難度,另一方面也凸顯了這些軟件公司的集成能力不足。

            3、軟件的結(jié)構(gòu)未做良好規(guī)劃

            這里主要指軟件是以自頂向下方式開發(fā),還是以自底向上方式開發(fā)。如果是以自頂向下的結(jié)構(gòu)或方法開發(fā)的軟件,在功能的規(guī)劃及組織上比較完整,相反以自底向上的組合式方法開發(fā)處的軟件則功能較為分散,容易出現(xiàn)缺陷。

            4、提供的功能不充分

            這個問題與功能不正常不同,這里指的是軟件提供的功能在運(yùn)作上正常,但對于使用者而言卻不完整。即使軟件的功能運(yùn)作結(jié)果符合設(shè)計(jì)規(guī)格的要求,系統(tǒng)測試人員在測試結(jié)果的判斷上,也必須從使用者的角度進(jìn)行思考,這就是所謂的“從用戶體驗(yàn)出發(fā)”。

            5、與軟件操作者的互動不良

            一個好的軟件必須與操作者之間可以實(shí)現(xiàn)正常互動。在操作者使用軟件的過程中,軟件必須很好地響應(yīng)。例如在瀏覽網(wǎng)頁時(shí),如果操作者在某一網(wǎng)頁填寫信息,但是輸入的信息不足或有誤。當(dāng)點(diǎn)擊“確定”按鈕后,網(wǎng)頁此時(shí)提示操作者輸入信息有誤,卻并未指出錯誤的哪里,操作者只好回到上一頁重新填寫,或直接放棄離開。這個問題就是典型的在軟件對操作互動方面未做完整的設(shè)計(jì)。

            6、使用性能不佳

            被測軟件功能正常,但使用性能不佳,這也是一個問題。此類缺陷通常是由于開發(fā)人員采用了錯誤的解決方案,或使用了不恰當(dāng)?shù)乃惴▽?dǎo)致的,在實(shí)際測試中有很多缺陷都是因?yàn)椴捎昧隋e誤的解決方法,需要加以注意!

            7、為做好錯誤處理

            軟件除了避免出錯之外,還要做好錯誤處理,許多軟件之所以會產(chǎn)生錯誤,就是因?yàn)槌绦虮旧韺τ阱e誤和異常處理的缺失。例如被測軟件讀取外部的信息文件并已做了一些分類整理,但剛好所讀取的外部信息文件內(nèi)容已被損毀。當(dāng)程序讀取這個損毀的信息文件時(shí),程序發(fā)現(xiàn)問題,此時(shí)操作系統(tǒng)不知該如何處理這個情況,為保護(hù)系統(tǒng)自身只好中斷程序。由此可見設(shè)立錯誤和異常處理機(jī)制的重要性!

            8、邊界錯誤

            緩沖區(qū)溢出問題在這幾年已成為網(wǎng)絡(luò)攻擊的常用方式,而這個缺陷就屬于邊界錯誤的一種。簡單來說,程序本身無法處理超越邊界所導(dǎo)致的錯誤。而這個問題,除了編程語言所提供的函數(shù)有問題之外,很多情況下是由于開發(fā)人員在聲明變量或使用邊界范圍時(shí)不小心引起的。

            下面是一個典型的緩沖區(qū)溢出的邊界錯誤:

           

          Void func (void)
          {
                  int I;
                  char buffer[256];      //Buffer定位為256
                  for (I=0;I<512;I++)     //越界
                  buffer[I]=’t’;
          ….}
           9、計(jì)算錯誤

            只要是計(jì)算機(jī)程序,就必定包括數(shù)學(xué)計(jì)算。軟件之所以會出現(xiàn)計(jì)算錯誤,大部分出錯的原因是由于采用了錯誤的數(shù)學(xué)運(yùn)算工時(shí)或未將累加器初始化為0.

            10、使用一段時(shí)間所產(chǎn)生的錯誤

            這類問題是程序開始運(yùn)行正常,但運(yùn)行一段時(shí)間后卻出現(xiàn)了故障。最典型的例子就是數(shù)據(jù)庫的查找功能。某些軟件在剛開始使用時(shí),所提供的信息查找功能運(yùn)作良好,但在使用一段時(shí)間后發(fā)現(xiàn),進(jìn)行信息查找所需的時(shí)間越來越長。經(jīng)分析查明,程序采用的信息查找方式是順序查找,隨著數(shù)據(jù)庫信息的增加,查找時(shí)間自然會變長。這就需要改變解決方案了!

            11、控制流程的錯誤

            控制流程的好壞,在于開發(fā)人員對軟件開發(fā)的態(tài)度及程序設(shè)計(jì)是否嚴(yán)謹(jǐn)。軟件在狀態(tài)間的轉(zhuǎn)變是否合理,要依據(jù)業(yè)務(wù)流程進(jìn)行控制。例如,用軟件安裝程序解釋這類問題最方便直觀。用戶在進(jìn)行軟件安裝時(shí),輸入用戶名和一些信息后,軟件就直接進(jìn)行了安裝,未提示用戶變更安裝路徑、目的地等。這就是軟件控制流程不完整導(dǎo)致的錯誤問題。

            12、在大數(shù)據(jù)量壓力下所產(chǎn)生的錯誤

            程序在處于大數(shù)據(jù)量狀態(tài)下運(yùn)行出現(xiàn)問題,就屬于這類軟件錯誤。大數(shù)據(jù)量壓力測試對于Server級的軟件是必須進(jìn)行的一項(xiàng)測試,因?yàn)榉?wù)器級的軟件對穩(wěn)定性的要求遠(yuǎn)比其它軟件要高。通常連續(xù)的大數(shù)據(jù)量壓力測試是必須實(shí)施的,如讓程序處理超過10萬筆數(shù)據(jù)信息,再來觀察程序運(yùn)行的結(jié)果。

            13、在不同硬件環(huán)境下產(chǎn)生的錯誤

            這類問題的產(chǎn)生與硬件環(huán)境的不同相關(guān)。如果軟件與硬件設(shè)備有直接關(guān)系,這樣的問題就是數(shù)量相當(dāng)多。例如有些軟件在特殊品牌的服務(wù)器上運(yùn)行就會出錯,這是由于不同的Server內(nèi)部硬件了不同的處理機(jī)制。

            14、版本控制不良導(dǎo)致的錯誤

            出現(xiàn)這樣的問題屬于項(xiàng)目管理的疏忽,當(dāng)然測試人員未能盡忠職守也是原因之一。例如一個軟件被反映有安全上的漏洞,后來軟件公司也很快將修復(fù)版本提供給用戶。但在一年后他們推出新版本時(shí),卻忘記將這個已解決的bug-fix加入到新版本中。所以對用戶來說,原本的問題已經(jīng)解決了,但想不到新版本升級之后,問題又出現(xiàn)了。這就是由于版本控制問題,導(dǎo)致不同基線的merge出現(xiàn)誤差,使得產(chǎn)品質(zhì)量也出現(xiàn)了偏差。

            15、軟件文檔的錯誤

            最后這類缺陷是軟件文檔錯誤。這里所提及的錯誤,除了軟件所附帶的使用手冊、說明文檔及其它相關(guān)的軟件文檔內(nèi)容錯誤之外,還包括軟件使用接口上的錯誤文字和錯誤用語、產(chǎn)品需求設(shè)計(jì)PD、UI Spec等的錯誤。錯誤的軟件文檔內(nèi)容除了降低產(chǎn)品質(zhì)量外,最主要的問題是會誤導(dǎo)用戶!

          版權(quán)聲明:本文出自 cmriqa 的51Testing軟件測試博客:http://www.51testing.com/?489136

          原創(chuàng)作品,轉(zhuǎn)載時(shí)請務(wù)必以超鏈接形式標(biāo)明本文原始出處、作者信息和本聲明,否則將追究法律責(zé)任。





          posted on 2012-11-06 10:02 順其自然EVO 閱讀(888) 評論(0)  編輯  收藏 所屬分類: 測試學(xué)習(xí)專欄defalut managerment system 缺陷管理系統(tǒng)

          <2012年11月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 镇沅| 成安县| 栾城县| 德清县| 齐齐哈尔市| 应用必备| 新余市| 洱源县| 连山| 灵川县| 赫章县| 织金县| 潼关县| 台东市| 昌江| 普定县| 临沂市| 竹山县| 建昌县| 称多县| 扶风县| 邛崃市| 休宁县| 杭锦旗| 通江县| 宝清县| 迁西县| 罗田县| 正镶白旗| 沾益县| 吉林市| 金溪县| 普洱| 松江区| 张掖市| 芜湖县| 许昌市| 河池市| 巴南区| 福泉市| 疏附县|