登錄

軟件測(cè)試

百科 > 軟件 > 軟件測(cè)試

1.什么是軟件測(cè)試

  軟件測(cè)試指的是軟件產(chǎn)品在投放市場(chǎng)前,對(duì)于軟件產(chǎn)品所進(jìn)行的需求的分析,設(shè)計(jì)的規(guī)格和編碼等內(nèi)容的復(fù)審,是確保軟件產(chǎn)品質(zhì)量的關(guān)鍵性步驟。

2.軟件測(cè)試的特點(diǎn)[1]

  在實(shí)際的操作過(guò)程當(dāng)中軟件測(cè)試難度比較大,而且環(huán)節(jié)也比較復(fù)雜。同時(shí)它還具有比較可觀的經(jīng)濟(jì)性。隨著軟件的大規(guī)?;瘯?huì)有不斷增長(zhǎng)的復(fù)雜的測(cè)試要求等待測(cè)試工程師去完成。

  它是一個(gè)微妙的、高技術(shù)含量的測(cè)試工作。測(cè)試過(guò)程中出現(xiàn)差錯(cuò)就會(huì)考慮不周到產(chǎn)生不必要的誤差。這種誤差可能造成軟件徹底的崩潰。常見的問(wèn)題根源可以有以下兩種分析。

  1.完全測(cè)試是不現(xiàn)實(shí)的

  測(cè)試軟件的過(guò)程中。不可能完完全全的檢測(cè)到所有的漏洞和不足,在實(shí)際工作中,往往不能做到全面而且徹底的檢測(cè)。我們采取相應(yīng)的手段和方法來(lái)完成盡可能多的測(cè)試數(shù)據(jù)和軟件結(jié)構(gòu)。

  在人們考慮的所有情況下,為了保證其穩(wěn)定性,就會(huì)讓所有執(zhí)行的代碼全部進(jìn)行測(cè)試,但是這種方式也存在一定的問(wèn)題,比如大量的輸入,大量的輸出以及執(zhí)行的路程比較復(fù)雜,都會(huì)引起最終的測(cè)試效果。

  2.軟件測(cè)試的風(fēng)險(xiǎn)性

  軟件測(cè)試的具體目的合理的軟件測(cè)試可以節(jié)省大量的時(shí)間人員和資源,但是軟件測(cè)試過(guò)程中存在著很大的困難和風(fēng)險(xiǎn)。盡人皆知,軟件測(cè)試有很多種風(fēng)險(xiǎn)??梢苑譃榄h(huán)境不達(dá)標(biāo)、人員技術(shù)不夠和管理時(shí)間混亂。風(fēng)險(xiǎn)表現(xiàn)為測(cè)試環(huán)境不到位和測(cè)試時(shí)間和人員冗余太多。在控制軟件測(cè)試的風(fēng)險(xiǎn)時(shí)候,開發(fā)人員采取以下方法:與用戶相互協(xié)商,降低對(duì)優(yōu)先級(jí)不高的特性和功能,將以后的冗余的功能去除,增加測(cè)試人員和測(cè)試工具;控制軟件發(fā)布的時(shí)間,時(shí)間允許的情況下,推遲軟件發(fā)布的時(shí)間,刪除影響風(fēng)險(xiǎn)發(fā)生的不必要的功能和環(huán)境;增加測(cè)試資源,通過(guò)事先準(zhǔn)備好的所有條目,設(shè)置好測(cè)試環(huán)境,按照列出的條目逐個(gè)逐個(gè)的進(jìn)行檢查和測(cè)試。要想真正的回避風(fēng)險(xiǎn)是不能的,必須制定一個(gè)合理的測(cè)試項(xiàng)目的管理方案,針對(duì)常見的風(fēng)險(xiǎn)進(jìn)行分類匯總,建立防患于未然和預(yù)防為主的管理意識(shí)。

3.軟件測(cè)試的目的

  軟件測(cè)試的具體目的決定著如何來(lái)組織進(jìn)行測(cè)試工作。通常情況下軟件測(cè)試工作的目的主要有:

  一是為發(fā)現(xiàn)程序的錯(cuò)誤從而進(jìn)行測(cè)試,

  二是測(cè)試用以證明軟件的程序存在錯(cuò)誤,并非證明該程序不存在錯(cuò)誤;

  三是好測(cè)試其功能在于可以發(fā)現(xiàn)以前沒(méi)有發(fā)現(xiàn)的一些錯(cuò)誤等等。因此,必須關(guān)注測(cè)試的具體目的,進(jìn)行測(cè)試用例的選擇時(shí)要遵循經(jīng)濟(jì)性原則。

4.軟件測(cè)試的分類

  軟件測(cè)試通??梢苑譃?a href="/wiki/%E9%BB%91%E7%9B%92%E5%BC%8F%E6%B5%8B%E8%AF%95" title="黑盒式測(cè)試">黑盒式測(cè)試與白盒式測(cè)試兩種類型。黑盒式測(cè)試就是將軟件系統(tǒng)當(dāng)作黑盒子而不去考慮相關(guān)程序內(nèi)在的邏輯,按照需求規(guī)格的說(shuō)明書要求對(duì)程序功能進(jìn)行檢查,看能否達(dá)到功能說(shuō)明的要求。白盒式測(cè)試就是允許實(shí)施測(cè)試的人員根據(jù)程序內(nèi)部的邏輯結(jié)構(gòu)和相關(guān)信息進(jìn)行測(cè)試用例的設(shè)計(jì)與選擇,測(cè)試程序邏輯的路徑。按照前后的過(guò)程分類,測(cè)試步驟可分成:單元測(cè)試,組裝(集成)測(cè)試,確認(rèn)測(cè)試及系統(tǒng)測(cè)試等。

5.軟件測(cè)試的要求[2]

  1.客觀性

  對(duì)軟件測(cè)試和軟件中的錯(cuò)誤必須持客觀的態(tài)度,避免先入為主,盡量讓第三方或者獨(dú)立的部門進(jìn)行測(cè)試,這樣既能以揭露軟件中錯(cuò)誤的態(tài)度工作,也能不受發(fā)現(xiàn)的錯(cuò)誤的影響。經(jīng)濟(jì)上的獨(dú)立性使測(cè)試有更充分的條件按測(cè)試要求去完成。

  2.專業(yè)性

  軟件測(cè)試是技術(shù)含量很高的工作,既要有軟件相關(guān)知識(shí),還要具備相關(guān)管理能力,這就需要有專業(yè)隊(duì)伍,并經(jīng)過(guò)大量的測(cè)試實(shí)踐。專業(yè)化分工是提高測(cè)試水平、保證測(cè)試質(zhì)量、充分發(fā)揮測(cè)試效應(yīng)的必然途徑。

  3.權(quán)威性

  由于專業(yè)優(yōu)勢(shì),獨(dú)立測(cè)試工作形成的測(cè)試結(jié)果更具信服力,而測(cè)試結(jié)果常常與軟件的質(zhì)量評(píng)價(jià)聯(lián)系在一起,專業(yè)化的獨(dú)立測(cè)試機(jī)構(gòu)的評(píng)價(jià)更客觀、公正和具有權(quán)威性。

  4.資源保證

  獨(dú)立測(cè)試機(jī)構(gòu)的主要任務(wù)是進(jìn)行獨(dú)立測(cè)試工作,這使得測(cè)試工作在經(jīng)費(fèi)、人力和時(shí)間等方面更有保證,不會(huì)因?yàn)殚_發(fā)的壓力而減少對(duì)測(cè)試的投入,進(jìn)而降低測(cè)試的有效性??梢员苊忾_發(fā)單位側(cè)重軟件開發(fā)而對(duì)測(cè)試工作產(chǎn)生不利的影響。

6.軟件測(cè)試的內(nèi)容[2]

  軟件測(cè)試主要工作內(nèi)容是驗(yàn)證和確認(rèn)。驗(yàn)證是保證軟件正確地實(shí)現(xiàn)了一些特定功能的一系列活動(dòng),即保證軟件做了你所期望的事情。驗(yàn)證確定軟件生存周期中的一個(gè)給定階段的產(chǎn)品是否達(dá)到前階段確立的需求的過(guò)程;驗(yàn)證程序正確性的形式證明,即采用形式理論證明程序符號(hào)設(shè)計(jì)規(guī)約規(guī)定的過(guò)程;評(píng)市、審查、測(cè)試、檢查、審計(jì)等各類活動(dòng),或?qū)δ承┓?wù)或文件等是否和規(guī)定的需求相一致進(jìn)行判斷和提出報(bào)告。

  確認(rèn)是一系列的活動(dòng)和過(guò)程,目的是想證實(shí)在一個(gè)給定的外部環(huán)境中軟件的邏輯正確性。即保證軟件以正確的方式來(lái)做了這個(gè)事件:靜態(tài)確認(rèn),不在計(jì)算機(jī)上實(shí)際執(zhí)行程序,通過(guò)人工或程序分析來(lái)證明軟件的正確性;動(dòng)態(tài)確認(rèn),通過(guò)執(zhí)行程序做分析,測(cè)試程序的動(dòng)態(tài)行為,以證實(shí)軟件是否存在問(wèn)題。軟件測(cè)試的對(duì)象不僅僅是程序測(cè)試,軟件測(cè)試應(yīng)該包括整個(gè)軟件開發(fā)期間各個(gè)階段所產(chǎn)生的文檔,如需求規(guī)格說(shuō)明、概要設(shè)計(jì)文檔、詳細(xì)設(shè)計(jì)文檔,當(dāng)然軟件測(cè)試的主要對(duì)象還是源程序。

  軟件測(cè)試,按照測(cè)試過(guò)程可分為單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試及系統(tǒng)測(cè)試等;按照測(cè)試內(nèi)容分可分為功能測(cè)試、性能測(cè)試、界面測(cè)試、鏈接測(cè)試等。

7.軟件測(cè)試的步驟[2]

  (1)測(cè)試計(jì)劃。根據(jù)用戶需求報(bào)告中關(guān)于功能要求和性能指標(biāo)的規(guī)格說(shuō)明書,定義相應(yīng)的測(cè)試需求報(bào)告,即制訂黑盒測(cè)試的最高標(biāo)準(zhǔn);同時(shí),適當(dāng)選擇測(cè)試內(nèi)容,合理安排測(cè)試人員、測(cè)試時(shí)間及測(cè)試資源等。

  (2)測(cè)試設(shè)計(jì)。將測(cè)試計(jì)劃階段制訂的測(cè)試需求分解、細(xì)化為若干個(gè)可執(zhí)行的測(cè)試過(guò)程,并為每個(gè)測(cè)試過(guò)程選擇適當(dāng)?shù)?a href="/wiki/%E6%B5%8B%E8%AF%95%E7%94%A8%E4%BE%8B" title="測(cè)試用例">測(cè)試用例。

  (3)測(cè)試開發(fā)。建立可重復(fù)使用的自動(dòng)測(cè)試過(guò)程。

  (4)測(cè)試執(zhí)行。執(zhí)行測(cè)試開發(fā)階段建立的自動(dòng)測(cè)試過(guò)程,并對(duì)所發(fā)現(xiàn)的缺陷進(jìn)行跟蹤管理。測(cè)試人員應(yīng)本著科學(xué)負(fù)責(zé)的態(tài)度,一步一個(gè)腳印地進(jìn)行測(cè)試。

  (5)測(cè)試評(píng)估。結(jié)合量化的測(cè)試覆蓋域及缺陷跟蹤報(bào)告,對(duì)于應(yīng)用軟件的質(zhì)量和開發(fā)團(tuán)隊(duì)的工作進(jìn)度及工作效率進(jìn)行綜合評(píng)價(jià)。

8.軟件測(cè)試的過(guò)程[1]

  軟件的測(cè)試過(guò)程根據(jù)階段的不同可以分為以下幾種測(cè)試階段:

  (1)單元測(cè)試:這個(gè)測(cè)試過(guò)程是測(cè)試的最初階段,測(cè)試的主要對(duì)象就是單元。通過(guò)單元的測(cè)試可以將每個(gè)模塊的的性能摸查清楚。在實(shí)際的操作過(guò)程中為了提高測(cè)試的有效性,一般采用多種單元測(cè)試的方式,比如最常使用的就是選取白盒的測(cè)試方法。

  (2)集成測(cè)試:也稱組裝測(cè)試。這一步測(cè)試是在單元測(cè)試過(guò)程之后來(lái)進(jìn)行,屬于測(cè)試的關(guān)鍵環(huán)節(jié)。各個(gè)測(cè)試結(jié)束的模塊進(jìn)行綜合分析,組裝成比較大的模塊進(jìn)行系統(tǒng)集成分析測(cè)試。各個(gè)系統(tǒng)之間的接口和連接代碼可以被檢測(cè)和分析,最常見的方式就是黑盒測(cè)試。

  (3)確認(rèn)測(cè)試:這個(gè)測(cè)試階段是軟件測(cè)試的比較核心的一個(gè)模塊,這一測(cè)試過(guò)程是發(fā)生在集成測(cè)試之后的測(cè)試過(guò)程,這一測(cè)試過(guò)程被用來(lái)仿真軟件的功能和參數(shù)以及某些特點(diǎn)能不能實(shí)現(xiàn)使用者的特殊要求通過(guò)確認(rèn)測(cè)試可以確定用戶的工作開展與否。

  (4)系統(tǒng)測(cè)試:也稱為產(chǎn)品測(cè)試。確認(rèn)測(cè)試在滿足用戶的要求之后,系統(tǒng)測(cè)試要進(jìn)行檢測(cè)實(shí)際環(huán)境和軟件能夠很好的結(jié)合協(xié)調(diào)工作。這種測(cè)試過(guò)程,有必要進(jìn)行相應(yīng)的硬件平臺(tái)搭建和模擬仿真實(shí)驗(yàn)。與此同時(shí),相應(yīng)的軟件系統(tǒng)和客戶應(yīng)該參與進(jìn)來(lái)進(jìn)行測(cè)試和評(píng)估。綜合可以說(shuō),如果軟件測(cè)試通過(guò)以上幾種測(cè)試最終達(dá)到了系統(tǒng)測(cè)試,那么這個(gè)產(chǎn)品基本就符合要求了。

  (5)驗(yàn)收測(cè)試:測(cè)試過(guò)程的最后一個(gè)階段。這一階段主要檢測(cè)軟件安裝之后,用戶能否使用該軟件以及軟件的所有功能。軟件和硬件能夠使用戶放心使用和持續(xù)運(yùn)行是檢驗(yàn)驗(yàn)收效果的關(guān)鍵。軟件設(shè)計(jì)者也應(yīng)該參與這一步的測(cè)試和分析。

評(píng)論  |   0條評(píng)論