qileilove

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

          第三方測試保證什么?

            直至目前,我國還沒有適應(yīng)國情的、系列化協(xié)調(diào)配套的、工程化的軟件生產(chǎn)過程管理、軟件質(zhì)量評測、控制技術(shù)規(guī)范和法律規(guī)程指導(dǎo),為此,我國急需以大力發(fā)展軟件第三方測試工程為基礎(chǔ),建立、健全我國軟件工程監(jiān)理體制。

            第三方測試有別于開發(fā)人員或用戶進(jìn)行的測試,其目的是為了保證測試工作的客觀性。從國外的經(jīng)驗來看,測試逐漸由專業(yè)的第三方承擔(dān)。同時第三方測試還可適當(dāng)兼顧初級監(jiān)理的功能,其自身具有明顯的工程特性,為發(fā)展軟件工程監(jiān)理制奠定堅實的基礎(chǔ)。

            第三方測試工程主要包括需求分析審查、設(shè)計審查、代碼審查、單元測試功能測試性能測試、可恢復(fù)性測試、資源消耗測試、并發(fā)測試、健壯性測試、安全測試、安裝配置測試、可移植性測試、文檔測試以及最終的驗收測試等十余項。

            測試并不僅僅是為了要找出錯誤。測試方還需要對錯誤進(jìn)行歸類和總結(jié),通過分析錯誤產(chǎn)生的原因和錯誤的分布特征,可以幫助項目管理者發(fā)現(xiàn)當(dāng)前所采用的軟件過程的缺陷,以便改進(jìn),更好地幫助用戶。根據(jù)軟件工程的要求,測試工作應(yīng)貫穿開發(fā)的全過程,如右圖所示。

            從測試流程中可以看出,編碼和單元測試基本上屬于程序的調(diào)試,一般由開發(fā)方自己進(jìn)行。作為第三方測試,定位在系統(tǒng)測試和集成測試最為有效。但是,為了得到高質(zhì)量的軟件,第三方也要適當(dāng)介入編碼與單元測試,能夠更好地保證測試的有效性、準(zhǔn)確性和可信性。

            認(rèn)清“第三方”的責(zé)任

            第三方測試以合同的形式制約了測試方,使得它與開發(fā)方存在某種‘對立’的關(guān)系,所以它不會刻意維護(hù)開發(fā)方的利益,保證了測試工作在一開始就具有客觀性。第三方一般都不直接參加開發(fā)方系統(tǒng)的設(shè)計和編程,為了能夠深入理解系統(tǒng),發(fā)現(xiàn)系統(tǒng)中存在得問題,第三方測試必須按軟件工程的要求辦事,以軟件工程的標(biāo)準(zhǔn)要求開發(fā)方和用戶進(jìn)行配合,從而較好地體現(xiàn)軟件工程的理念。引入第三方測試后,由于測試方相對的客觀位置,由用戶、開發(fā)方、測試方三方組成的三角關(guān)系也便于處理以往用戶、開發(fā)方雙方糾纏不清的矛盾,使得許多問題能得到比較客觀的處理。

            第三方測試不同于開發(fā)方的自測試。由開發(fā)人員承擔(dān)的測試存在很多弊病,除去自身利益驅(qū)使帶來的問題外,還有許多不客觀的毛病,主要表現(xiàn)在思維的定勢上。由于他熟悉設(shè)計和編程等,往往習(xí)慣于按一定的“程式”考慮問題,以至思路比較局限,難于發(fā)現(xiàn)“程式”外存在的問題。因為第三方測試的目的就是為盡量多地發(fā)現(xiàn)程序中的錯誤而運行程序的過程,可以更多的發(fā)現(xiàn)問題。此外,隨著系統(tǒng)越做越大,客觀上講開發(fā)人員也無精力參與測試,同時也不符合大生產(chǎn)專業(yè)分工的原則。

            第三方測試不同于用戶的自測試。用戶是應(yīng)用軟件需求的提出者,對于軟件應(yīng)該完成的功能是非常清楚的,是進(jìn)行功能驗證的最佳人選。客觀情況是,大部分的用戶都不是計算機的專業(yè)人士,很難對系統(tǒng)的內(nèi)部實現(xiàn)過程進(jìn)行深入的分析。對系統(tǒng)的全面測試,功能測試僅僅是一個方面,還要包括并發(fā)能力、性能等多種技術(shù)測試。這些測試對技術(shù)有很高的要求,必須由計算機的專業(yè)人員才能完成。

            第三方測試一般還兼顧初級監(jiān)理的職能,不但要對應(yīng)用進(jìn)行各種測試,還進(jìn)行需求分析的評審、設(shè)計評審、用戶類文檔的評審等,這些工作對用戶進(jìn)行系統(tǒng)的驗收以及推廣應(yīng)用都非常有意義。

            如何組織管理

            在測試的過程中,用戶、開發(fā)方與測試方形成了一個三角關(guān)系,從最終目標(biāo)來講,三方是完全一致的,都是希望保證系統(tǒng)穩(wěn)定運行。但在測試過程中,三方的關(guān)系卻是既對立又合作。對立是指各自堅持自己的職責(zé),合作是指每一方的工作都需要其它兩方的支持和幫助。

          軟件測試的過程

            為了保證測試的順利進(jìn)行,測試方必須強化內(nèi)部的組織管理。根據(jù)我們的經(jīng)驗,完整的測試機構(gòu)必須包括業(yè)務(wù)分析部門、技術(shù)支持部門、規(guī)劃設(shè)計部門和綜合后勤部門。例如在中國現(xiàn)代化支付系統(tǒng)第三方測試項目當(dāng)中,信息化工程總體研究中心的人員分工大致是:部分人員專攻支付業(yè)務(wù),部分人員專攻技術(shù)支持,部分人員負(fù)責(zé)測試規(guī)劃與綜合案例的設(shè)計,部分人員負(fù)責(zé)現(xiàn)場情景調(diào)度,部分人員從事案例的細(xì)化與運行。測試結(jié)果表明,總體上達(dá)到了各司其職、忙而有序。


           “第三方”測試什么

            根據(jù)軟件的特性,第三方軟件測試工程可劃分為三種類型四個層次。

            (1) 第一類是系統(tǒng)軟件、環(huán)境軟件和各類工具軟件等的測評。這類軟件多作為計算機的環(huán)境或作 “公用” 支撐軟件,產(chǎn)品類型多、市場銷量大、生產(chǎn)廠商多,產(chǎn)品的特點大都有企業(yè)、甚至國際的產(chǎn)品質(zhì)量標(biāo)準(zhǔn),用戶選擇使用時大都希望進(jìn)行產(chǎn)品功能、性能的對比測試;對于這類軟件的評測重點是軟件產(chǎn)品的功能、性能和特點評測。

            (2)第二類是面向應(yīng)用軟件系統(tǒng)的測評。這類軟件,具有很強的行業(yè)應(yīng)用特性,往往是要由用戶與開發(fā)商簽定項目合同,開發(fā)商負(fù)責(zé)開發(fā),用戶負(fù)責(zé)驗收。對這類軟件的評測,根據(jù)用戶對第三方的依賴程度,又可分為兩個層次。

            ① 第一個層次只對應(yīng)用軟件系統(tǒng)進(jìn)行綜合性功能、性能測試。大體是在軟件系統(tǒng)級進(jìn)行“黑盒”測試,并不對軟件過程進(jìn)行控制、監(jiān)督。

            ② 第二個層次是對應(yīng)用軟件系統(tǒng)進(jìn)行質(zhì)量監(jiān)理與評測。不僅承擔(dān)第一個層次的任務(wù)還要對軟件過程進(jìn)行監(jiān)控,具備初級軟件工程監(jiān)理的職責(zé)。

            承擔(dān)該類軟件質(zhì)量監(jiān)理評測的第三方,承擔(dān)軟件過程質(zhì)量監(jiān)理的責(zé)任,在軟件生命周期過程中,從軟件定義開始,要對軟件過程從質(zhì)量保證角度進(jìn)行規(guī)范化的監(jiān)督、管理和控制。評測工作不僅包括軟件生命周期各階段的評審,而且還要對程序系統(tǒng),進(jìn)行包括模塊白盒測試在內(nèi)的系統(tǒng)集成、系統(tǒng)驗收等測試。第三方實際上是軟件業(yè)主授權(quán)的初級的軟件工程監(jiān)理。

            (3)第三類是對軟件企業(yè)的CMM評估認(rèn)證,也是最高層次的軟件評測。

            了解測試評估

            測試評估是軟件測試的一個階段性的結(jié)論,用所生成的測試評估報告,來確定測試是否達(dá)到完全和成功的標(biāo)準(zhǔn)。在測度評估階段向用戶提供強有力的支持,包括通過測試報告,驗證測試結(jié)果是否符合測試計劃中制定的測試標(biāo)準(zhǔn);根據(jù)缺陷報告提供的測試結(jié)果數(shù)據(jù),給出軟件質(zhì)量和測試完整性的評估報告;特別在以下幾方面對測試的過程進(jìn)行評測:

            (1)評估測試用例覆蓋:測試的目標(biāo)是確保100%的測試用例全部成功地執(zhí)行。如果這個目標(biāo)可行或不可能達(dá)到,則要根據(jù)不同的情況制定不同的測試覆蓋標(biāo)準(zhǔn)。主要考慮風(fēng)險和嚴(yán)重性、可接受的覆蓋百分比。

            (2)評估代碼覆蓋:需要斷定測試目標(biāo)期望的總的測試代碼行數(shù),在測試中真正執(zhí)行的代碼行數(shù)及其百分比,將此結(jié)果記錄在測試評估報告中。

            (3)分析缺陷:對缺陷進(jìn)行分析,應(yīng)遵照缺陷分析策略中制定的分析標(biāo)準(zhǔn)。

            最常用的缺陷分析標(biāo)準(zhǔn)有三種:缺陷分布——缺陷數(shù)量作為隨缺陷屬性變化的函數(shù)(如狀態(tài)和級別);缺陷趨勢——缺陷數(shù)量作為以時間為條件的函數(shù);缺陷滯留——特殊的缺陷密度報告,缺陷數(shù)量與缺陷在某一狀態(tài)保留的時間長短有關(guān)。

            (4)確定測試是否達(dá)到完全和成功的標(biāo)準(zhǔn)在此階段將判定測試是否已達(dá)到完全并可接受,生成測試結(jié)果報告。

          posted on 2011-11-17 15:58 順其自然EVO 閱讀(152) 評論(0)  編輯  收藏 所屬分類: 測試學(xué)習(xí)專欄

          <2011年11月>
          303112345
          6789101112
          13141516171819
          20212223242526
          27282930123
          45678910

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 凤翔县| 东乌珠穆沁旗| 馆陶县| 沙河市| 姚安县| 漳浦县| 昌宁县| 江西省| 康马县| 大丰市| 秭归县| 彭山县| 图木舒克市| 海伦市| 乌拉特前旗| 常德市| 淳安县| 肥乡县| 特克斯县| 太保市| 揭东县| 胶州市| 凌源市| 萨嘎县| 桂平市| 呼和浩特市| 交口县| 阿坝县| 寿阳县| 华蓥市| 深泽县| 新密市| 黄平县| 宜兴市| 遂昌县| 青岛市| 九寨沟县| 图木舒克市| 广灵县| 喀喇沁旗| 武义县|