本文首發(fā)于公眾號「軟件測試藝術(shù)」店印,回復(fù)“軟件測試教程”獲雀栽凇:麥子學(xué)院、黑馬按摘、小強軟件測試全套學(xué)習(xí)教程!
當(dāng)我們買西瓜時纫谅,可以立即評估它的質(zhì)量:大小炫贤、形狀和成熟度,沒有明顯的破損付秕。但是只有你在吃第一口時兰珍,才能知道西瓜是否真的甜,即使非常好看的西瓜也許一點都不甜询吴。
這就類似于日常開發(fā)的任意產(chǎn)品或軟件掠河,看起來設(shè)計非常完美亮元,但是當(dāng)用戶在真實環(huán)境中使用的時候出現(xiàn)許多設(shè)計缺陷和明顯的錯誤,讓人難以忍受唠摹。
人為犯錯無法完全杜絕和避免爆捞,但是必須要想辦法減小錯誤的代價。軟件質(zhì)量在開發(fā)最終用戶產(chǎn)品的各個領(lǐng)域都非常重要勾拉,因此需要在產(chǎn)品開發(fā)過程中引入質(zhì)量管理活動煮甥,主要包括:質(zhì)量保證、質(zhì)量控制和測試藕赞。
質(zhì)量控制成肘、質(zhì)量保證和測試看起來非常類似,有時這三個術(shù)語通掣桑可互換使用双霍,他們共同的目標(biāo)是向終端用戶提供最佳質(zhì)量的產(chǎn)品。它們有著共同的特點批销,但也有一些區(qū)別店煞,為了避免混淆這些概念和減少誤解,下面我們就來說說這3個術(shù)語的含義风钻。?
質(zhì)量保證(Quality Assurance)是確定產(chǎn)品開發(fā)達(dá)到質(zhì)量要求實施的流程顷蟀、方法和標(biāo)準(zhǔn),通過持續(xù)改進(jìn)和維護(hù)流程骡技,使質(zhì)量控制工作成為可能鸣个。質(zhì)量保證專注于改進(jìn)開發(fā)產(chǎn)品的流程和方法,預(yù)防之前的錯誤再次發(fā)生布朦,如公司或部門制定和推廣的流程標(biāo)準(zhǔn)囤萤、流程文檔和項目內(nèi)審流程。
質(zhì)量控制(Quality Control)是驗證開發(fā)的產(chǎn)品符合質(zhì)量目標(biāo)開展的一系列活動是趴,提供產(chǎn)品質(zhì)量的最終反饋涛舍。質(zhì)量控制專注于識別缺陷和問題來改進(jìn)產(chǎn)品,如軟件測試流程唆途。
測試(Testing) 的目的是發(fā)現(xiàn)產(chǎn)品中的存在的潛在缺陷富雅,是軟件產(chǎn)品必經(jīng)的基本過程,主要評估產(chǎn)品的整體可用性肛搬、性能没佑、安全性和兼容性。它的關(guān)注點非常窄,由測試工程師在開發(fā)過程中或?qū)S脺y試階段(取決于軟件開發(fā)周期的方法)并行執(zhí)行温赔。
質(zhì)量保證和質(zhì)量控制的最終輸出是提供高質(zhì)量的產(chǎn)品蛤奢。主要區(qū)別是質(zhì)量保證活動是在軟件開發(fā)期間進(jìn)行的,在開發(fā)軟件后執(zhí)行的是質(zhì)量控制活動,而測試是質(zhì)量控制活動中的一個環(huán)節(jié)而已啤贩。
也許上面說了這么多待秃,還是對質(zhì)量保證和質(zhì)量控制的具體含義和很模糊。其實痹屹,映射到日常的項目開發(fā)工作中章郁,質(zhì)量保證就是按照既定流程來保障產(chǎn)品質(zhì)量,控制開發(fā)工作而不是解決具體存在的Bug痢掠,趨向于“開發(fā)過程管理驱犹,確保項目以一套成熟高效的做事方法開展和實施”;質(zhì)量控制檢查開發(fā)人員開發(fā)的產(chǎn)品是否滿足預(yù)期的質(zhì)量要求足画,并給出改進(jìn)建議雄驹,趨向于“需求確認(rèn),產(chǎn)品測試”淹辞;而測試是質(zhì)量控制的最后一道關(guān)卡医舆。
簡單來說質(zhì)量保證是針對項目實施過程的管理手段,質(zhì)量控制是針對項目產(chǎn)品的技術(shù)手段象缀。