<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團(tuán)論壇軟硬件測試專題軟件測試 → 軟件測試常識


      共有7201人關(guān)注過本帖樹形打印

    主題:軟件測試常識

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個性首頁 | 博客 | 信息 | 搜索 | 郵箱 | 主頁 | UC


    加好友 發(fā)短信
    等級:青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊:2010-11-12 11:08:23
    軟件測試常識  發(fā)帖心情 Post By:2010-12-15 14:38:16

    軟件開發(fā)和使用的歷史已經(jīng)留給了我們很多由于軟件缺陷而導(dǎo)致的巨大財力、物力損失的經(jīng)驗教訓(xùn)。這些經(jīng)驗教訓(xùn)迫使我們這些測試工程師們必須采取強(qiáng)有力的檢測措施來檢測未發(fā)現(xiàn)的隱藏的軟件缺陷。

    生產(chǎn)軟件的最終目的是為了滿足客戶需求,我們以客戶需求作為評判軟件質(zhì)量的標(biāo)準(zhǔn),認(rèn)為軟件缺陷( Software Bug )的具體含義包括下面幾個因素:

    ?  軟件未達(dá)到客戶需求的功能和性能;

    ?  軟件超出客戶需求的范圍;

    ?  軟件出現(xiàn)客戶需求不能容忍的錯誤;

    ?  軟件的使用未能符合客戶的習(xí)慣和工作環(huán)境。

    考慮到設(shè)計等方面的因素,我們還可以認(rèn)為軟件缺陷還可以包括軟件設(shè)計不符合規(guī)范,未能在特定的條件(資金、范圍等)達(dá)到最佳等。可惜的是,我們中的很多人更傾向于把軟件缺陷看成運行時出現(xiàn)問題上來,認(rèn)為軟件測試僅限于程序提交之后。

    在目前的國內(nèi)環(huán)境下,我們幾乎看不到完整準(zhǔn)確的客戶需求說明書,加以客戶的需求時時在變,追求完美的測試變得不太可能。因此作為一個優(yōu)異的測試人員,追求軟件質(zhì)量的完美固然是我們的宗旨,但是明確軟件測試現(xiàn)實與理想的差距,在軟件測試中學(xué)會取舍和讓步,對軟件測試是有百益而無一弊的。

    下面是一些軟件測試的常識,對這些常識的理解和運用將有助于我們在進(jìn)行軟件測試時能夠更好的把握軟件測試的尺度。

    ?  測試是不完全的(測試不完全)

    很顯然,由于軟件需求的不完整性、軟件邏輯路徑的組合性、輸入數(shù)據(jù)的大量性及結(jié)果多樣性等因素,哪怕是一個極其簡單的程序,要想窮盡所有邏輯路徑,所有輸入數(shù)據(jù)和驗證所有結(jié)果是非常困難的一件事情。我們舉一個簡單的例子,比如說求兩個整數(shù)的最大公約數(shù)。其輸入信息為兩個正整數(shù)。但是如果我們將整個正整數(shù)域的數(shù)字進(jìn)行一番測試的話,從其數(shù)目的無限性我們便可證明是這樣的測試在實際生活中是行不通的,即便某一天我們能夠窮盡該程序,只怕我們乃至我們的子孫都早已作古了。為此作為軟件測試,我們一般采用等價類和邊界值分析等措施來進(jìn)行實際的軟件測試,尋找最小用例集合成為我們精簡測試復(fù)雜性的一條必經(jīng)之道。

    ?  測試具有免疫性(軟件缺陷免疫性)

    軟件缺陷與病毒一樣具有可怕的 “ 免疫性 ” ,測試人員對其采用的測試越多,其免疫能力就越強(qiáng),尋找更多軟件缺陷就更加困難。由數(shù)學(xué)上的概率論我們可以推出這一結(jié)論。假設(shè)一個 50000 行的程序中有 500 個軟件缺陷并且這些軟件錯誤分布時均勻的,則每 100 行可以找到一個軟件缺陷。我們假設(shè)測試人員用某種方法花在查找軟件缺陷的精力為 X 小時 /100 行。照此推算,軟件存在 500 個缺陷時,我們查找一個軟件缺陷需要 X 小時,當(dāng)軟件只存在 5 個錯誤時,我們每查找一個軟件缺陷需要 100X 小時。實踐證明,實際的測試過程比上面的假設(shè)更為苛刻,為此我們必須更換不同的測試方式和測試數(shù)據(jù)。該例子還說明了在軟件測試中采用單一的方法不能高效和完全的針對所有軟件缺陷,因此軟件測試應(yīng)該盡可能的多采用多種途徑進(jìn)行測試。

    ?  測試是 “ 泛型概念 ” (全程測試)

    我一直反對軟件測試僅存在于程序完成之后。如果單純的只將程序設(shè)計階段后的階段稱之為軟件測試的話,需求階段和設(shè)計階段的缺陷產(chǎn)生的放大效應(yīng)會加大。這非常不利于保證軟件質(zhì)量。需求缺陷、設(shè)計缺陷也是軟件缺陷,記住 “ 軟件缺陷具有生育能力 ” 。軟件測試應(yīng)該跨越整個軟件開發(fā)流程。需求驗證(自檢)和設(shè)計驗證(自檢)也可以算作軟件測試(建議稱為:需求測試和設(shè)計測試)的一種。軟件測試應(yīng)該是一個泛型概念,涵蓋整個軟件生命周期,這樣才能確保周期的每個階段禁得起考驗。同時測試本身也需要有第三者進(jìn)行評估(信息系統(tǒng)審計和軟件工程監(jiān)理),即測試本身也應(yīng)當(dāng)被測試,從而確保測試自身的可靠性和高效性。否則自身不正,難以服人。

    另外還需指出的是軟件測試是提高軟件產(chǎn)品質(zhì)量的必要條件而非充分條件,軟件測試是提高產(chǎn)品質(zhì)量最直接、最快捷的手段,但決不是一個根本手段。

    ?  80-20 原則

    80% 的軟件缺陷常常生存在軟件 20% 的空間里。這個原則告訴我們,如果你想使軟件測試有效地話,記住常常光臨其高危多發(fā) “ 地段 ” 。在那里發(fā)現(xiàn)軟件缺陷的可能性會大的多。這一原則對于軟件測試人員提高測試效率及缺陷發(fā)現(xiàn)率有著重大的意義。聰明的測試人員會根據(jù)這個原則很快找出較多的缺陷而愚蠢的測試人員卻仍在漫無目的地到處搜尋。

    80-20 原則的另外一種情況是,我們在系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實現(xiàn)階段的復(fù)審,測試工作中能夠發(fā)現(xiàn)和避免 80% 的軟件缺陷,此后的系統(tǒng)測試能夠幫助我們找出剩余缺陷中的 80% ,最后的 5% 的軟件缺陷可能只有在系統(tǒng)交付使用后用戶經(jīng)過大范圍、長時間使用后才會曝露出來。因為軟件測試只能夠保證盡可能多地發(fā)現(xiàn)軟件缺陷,卻無法保證能夠發(fā)現(xiàn)所有的軟件缺陷。

    80-20 原則還能反映到軟件測試的自動化方面上來,實踐證明 80% 的軟件缺陷可以借助人工測試而發(fā)現(xiàn), 20% 的軟件缺陷可以借助自動化測試能夠得以發(fā)現(xiàn)。由于這二者間具有交叉的部分,因此尚有 5% 左右的軟件缺陷需要通過其他方式進(jìn)行發(fā)現(xiàn)和修正。

    ?  為效益而測試

    為什么我們要實施軟件測試,是為了提高項目的質(zhì)量效益最終以提高項目的總體效益。為此我們不難得出我們在實施軟件測試應(yīng)該掌握的度。軟件測試應(yīng)該在軟件測試成本和軟件質(zhì)量效益兩者間找到一個平衡點。這個平衡點就是我們在實施軟件測試時應(yīng)該遵守的度。單方面的追求都必然損害軟件測試存在的價值和意義。一般說來,在軟件測試中我們應(yīng)該盡量地保持軟件測試簡單性,切勿將軟件測試過度復(fù)雜化,拿物理學(xué)家愛因斯坦的話說就是: Keep it simple but not too simple 。

    ?  缺陷的必然性

    軟件測試中,由于錯誤的關(guān)聯(lián)性,并不是所有的軟件缺陷都能夠得以修復(fù)。某些軟件缺陷雖然能夠得以修復(fù)但在修復(fù)的過程中我們會難免引入新的軟件缺陷。很多軟件缺陷之間是相互矛盾的,一個矛盾的消失必然會引發(fā)另外一個矛盾的產(chǎn)生。比如我們在解決通用性的缺陷后往往會帶來執(zhí)行效率上的缺陷。更何況在缺陷的修復(fù)過程中,我們常常還會受時間、成本等方面的限制因此無法有效、完整地修復(fù)所有的軟件缺陷。因此評估軟件缺陷的重要度、影響范圍,選擇一個折中的方案或是從非軟件的因素(比如提升硬件性能)考慮軟件缺陷成為我們在面對軟件缺陷時一個必須直面的事實。

    ?  軟件測試必須有預(yù)期結(jié)果

    沒有預(yù)期結(jié)果的測試是不可理喻的。軟件缺陷是經(jīng)過對比而得出來的。這正如沒有標(biāo)準(zhǔn)無法進(jìn)行度量一樣。如果我們事先不知道或是無法肯定預(yù)期的結(jié)果,我們必然無法了解測試正確性。這很容易然人感覺如盲人摸象一般,不少測試人員常常憑借自身的感覺去評判軟件缺陷的發(fā)生,其結(jié)果往往是把似是而非的東西作為正確的結(jié)果來判斷,因此常常出現(xiàn)誤測的現(xiàn)象。

    ?  軟件測試的意義 - 事后分析

    軟件測試的目的單單是發(fā)現(xiàn)缺陷這么簡單嗎?如果是 “ 是 ” 的話,我敢保證,類似的軟件缺陷在下一次新項目的軟件測試中還會發(fā)生。古語說得好, “ 不知道歷史的人必然會重蹈覆轍 ” 。沒有對軟件測試結(jié)果進(jìn)行認(rèn)真的分析,我們就無法了解缺陷發(fā)生的原因和應(yīng)對措施,結(jié)果是我們不得不耗費的大量的人力和物力來再次查找軟件缺陷。很可惜,目前大多測試團(tuán)隊都沒有意識到這一點,測試報告中缺乏測試結(jié)果分析這一環(huán)節(jié)。

    結(jié)論:

    軟件測試是一個需要 “ 自覺 ” 的過程,作為一個測試人員,遇事沉著,把持尺度,從根本上應(yīng)對軟件測試有著正確的認(rèn)識,希望本文對讀者對軟件測試的認(rèn)識有所幫助

    支持(0中立(0反對(0單帖管理 | 引用 | 回復(fù) 回到頂部

    返回版面帖子列表

    軟件測試常識








    簽名
    主站蜘蛛池模板: 成人乱码一区二区三区AV| 成人一级片在线观看| 欧美性猛交xxxx乱大交极品| 污视频网站在线| 波多野结衣一区二区三区高清av | 国内一卡2卡三卡四卡在线| 在线观看国产亚洲| 在线观看日本中文字幕| 国产综合免费视频| 国产欧美精品午夜在线播放| 国产剧情av麻豆香蕉精品| 午夜欧美日韩在线视频播放| 免费看男阳茎进女阳道动态图| 伊人久久精品亚洲午夜| 亚洲成a人片在线观看久| 久久青草精品38国产| 久久久精品免费| 一区二区三区午夜| 57pao成人国产永久免费视频| 色婷婷亚洲十月十月色天| 男人女人真曰批视频大全免费观看| 欧美高清性XXXXHDVIDEOSEX| 日韩视频在线免费| 少妇无码太爽了在线播放| 国产精品天天干| 国产三级免费观看| 人善交video欧美| 九月婷婷人人澡人人添人人爽 | 免费无码成人AV片在线在线播放| 亚洲欧洲另类春色校园网站| 久久国产精品-国产精品| jizzjizzjizz国产| 靠逼软件app| 男人桶女人的肌肌30分| 最美情侣中文字幕电影| 性xxxfreexxxx性欧美| 国农村精品国产自线拍| 国产在线色视频| 人妻熟妇乱又伦精品视频| 久久综合久久综合久久| www.日本高清视频|