軟件測(cè)試規(guī)范_第1頁(yè)
軟件測(cè)試規(guī)范_第2頁(yè)
軟件測(cè)試規(guī)范_第3頁(yè)
軟件測(cè)試規(guī)范_第4頁(yè)
軟件測(cè)試規(guī)范_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

《軟件測(cè)試規(guī)范》(草案)

ComputerSoftwareTestingCriterion

目的與合用范

1、目的

軟件測(cè)試是軟件工程的重要組成部分,測(cè)試工作的質(zhì)量直接影響軟件產(chǎn)品的生命力。測(cè)試工

作的標(biāo)準(zhǔn)化是軟件質(zhì)量保證(QualityAssurance)重要并且必須的環(huán)節(jié)。制定本標(biāo)準(zhǔn)的目的在于

使測(cè)試流程更標(biāo)準(zhǔn),測(cè)試過(guò)程更規(guī)范。從而使整個(gè)軟件生產(chǎn)納入更系統(tǒng)化、更專業(yè)化的軌道。

2、合用范圍

木標(biāo)準(zhǔn)合用于軟件測(cè)試流程的管理和測(cè)試的具體操作過(guò)程.木標(biāo)準(zhǔn)的使用者可以是公司內(nèi)部

的測(cè)試人員和開(kāi)發(fā)人員。

二、測(cè)試方法

軟件測(cè)試的方法和技術(shù)是多種多樣的。以下將介紹比較常用的一些測(cè)試方法:

1、靜態(tài)測(cè)試

靜態(tài)方法是指不運(yùn)營(yíng)被測(cè)程序自身,僅通過(guò)度析或檢查源程序的文法、結(jié)構(gòu)、過(guò)程、接II等

來(lái)檢查程序的對(duì)的性。靜態(tài)方法通過(guò)程序靜態(tài)特性的分析,找出欠缺和可疑之處,例如不匹

配的參數(shù)、不適當(dāng)?shù)难h(huán)嵌套和分支嵌套、不允許的遞歸、未使用過(guò)的變量、空指針的引用

和可疑的計(jì)算等。靜態(tài)測(cè)試結(jié)果可用于進(jìn)一步的查錯(cuò),并為測(cè)試用例選取提供指導(dǎo)。

2、動(dòng)態(tài)測(cè)試

動(dòng)態(tài)方法是指通過(guò)運(yùn)營(yíng)被測(cè)程序,檢查運(yùn)營(yíng)結(jié)果與預(yù)期結(jié)果的差異,并分析運(yùn)營(yíng)效率和健

壯性等性能,這種方法由三部分組成:構(gòu)造測(cè)試實(shí)例、執(zhí)行程序、分析程序的輸出結(jié)果。

3、黑盒測(cè)試

黑盒測(cè)試也稱功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試,它是在已知產(chǎn)品所應(yīng)具有的功能,通過(guò)測(cè)試來(lái)

檢測(cè)每個(gè)功能是否都能正常使用,在測(cè)試時(shí),把程序看作一個(gè)不能打開(kāi)的黑盆子,在完全不

考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,測(cè)試者在程序接口進(jìn)行測(cè)試,它只檢查程序功能是

否按照需求規(guī)格說(shuō)明書的規(guī)定正常使用,程序是否能適本地接受輸入數(shù)鋸而產(chǎn)生對(duì)的的輸出

信息,并且保持外部信息(如數(shù)據(jù)庫(kù)或文獻(xiàn))的完整性.黑盒測(cè)試方法重要有等價(jià)類劃分、

邊值分析、因一果圖、錯(cuò)誤推測(cè)等,重要用于軟件確認(rèn)測(cè)試。

“黑盒”法著眼于程序外部結(jié)構(gòu)、不考慮內(nèi)部邏輯結(jié)構(gòu)、針對(duì)軟件界面和軟件功能進(jìn)行測(cè)

試?!昂诤小狈ㄊ歉F舉輸入測(cè)試,只有把所有也許的輸入都作為測(cè)試情況使用,才干以這種方

法查出程序中所有的錯(cuò)誤,事實(shí)上測(cè)試情況有無(wú)窮多個(gè),人們不僅要測(cè)試所有合法的輸入,

并且還要對(duì)那些不合法但是也許的輸入進(jìn)行測(cè)試。

4、白盒測(cè)試

白盒測(cè)試也稱結(jié)構(gòu)測(cè)試或邏輯驅(qū)動(dòng)測(cè)試,它是知道產(chǎn)品內(nèi)部工作過(guò)程,可通過(guò)測(cè)試來(lái)檢

測(cè)產(chǎn)品內(nèi)部動(dòng)作是否按照規(guī)格說(shuō)明書的規(guī)定正常進(jìn)行,按照程序內(nèi)部的結(jié)構(gòu)測(cè)試程序,檢查

程序中的每條通路是否都有能按預(yù)定規(guī)定對(duì)的工作,而不顧它的功能,白盒測(cè)試的重要方法

有邏輯驅(qū)動(dòng)、基路測(cè)試等,重要用于軟件驗(yàn)證。

“白盒”法全面了解程序內(nèi)部邏輯結(jié)構(gòu)、對(duì)所有邏輯途徑進(jìn)行測(cè)試?!鞍缀小狈ㄊ歉F舉途徑

測(cè)試。在使用這一方案時(shí),測(cè)試者必須檢查程序的內(nèi)部結(jié)構(gòu),從檢查程序的邏輯著手,得出

測(cè)試數(shù)據(jù)。貫穿程序的獨(dú)立途徑數(shù)是天文數(shù)字。但即使每條途徑都測(cè)試了仍然也許有錯(cuò)誤。

第一,窮舉途徑測(cè)試決不能查出程序違反了設(shè)計(jì)規(guī)范,即程序自身是個(gè)錯(cuò)誤的程序。第二,

窮舉途徑測(cè)試不也許查出程序中因漏掉途徑而犯錯(cuò)。第三,窮舉途徑測(cè)試也許發(fā)現(xiàn)不了一些

與數(shù)據(jù)相關(guān)的錯(cuò)誤。

5、ALAC(Act-like.a?customer)測(cè)試

ALAC測(cè)試是一種基于客戶使用產(chǎn)品的知識(shí)開(kāi)發(fā)出來(lái)的測(cè)試方法。ALAC測(cè)試是基于

復(fù)雜的軟件產(chǎn)品有許多錯(cuò)誤的原則。最大的受益者是用戶,缺陷查找和改正將針對(duì)哪些客戶

最容易碰到的錯(cuò)誤。

6、單元測(cè)試方法

6.1單元測(cè)試任務(wù)

單元測(cè)試任務(wù)涉及:

U模塊接口測(cè)試;

U模塊局部數(shù)據(jù)結(jié)構(gòu)測(cè)試;

U模塊邊界條件測(cè)試;

u模塊中所有獨(dú)立執(zhí)行通路測(cè)試;

U模塊的各條錯(cuò)誤解決通路測(cè)試。

模塊接口測(cè)試是單元測(cè)試的基礎(chǔ)。只有在數(shù)據(jù)能對(duì)的流入、流出模塊的前提下,其

他測(cè)試才故意義。

6.2接口測(cè)試

測(cè)試接口對(duì)的與否應(yīng)當(dāng)考慮下列因素:

U輸入的實(shí)際參數(shù)與形式參數(shù)的個(gè)數(shù)是否相同;

U輸入的實(shí)際參數(shù)與形式參數(shù)的屬性是否匹配;

U輸入的實(shí)際參數(shù)與形式參數(shù)的量綱是否一致;

U調(diào)用其他模塊時(shí)所給實(shí)際參數(shù)的個(gè)數(shù)是否與被調(diào)模塊的形參個(gè)數(shù)相同;

U調(diào)用其他模塊時(shí)所給實(shí)際參數(shù)的屬性是否與被調(diào)模塊的形參屬性匹配;

U調(diào)用其他模塊時(shí)所給實(shí)際參數(shù)的量綱是否與被調(diào)模塊的形參量綱一致;

U調(diào)用預(yù)定義函數(shù)時(shí)所用參數(shù)的個(gè)數(shù)、屬性和順序是否對(duì)的;

U是否存在與當(dāng)前入口點(diǎn)無(wú)關(guān)的參數(shù)引用;

U是否修改了只讀型參數(shù);

U對(duì)全程變量的定義各模塊是否一致;

U是否把某些約束作為參數(shù)傳遞。

假如模塊內(nèi)涉及外部輸入輸出,還應(yīng)當(dāng)考慮下列因素:

U文獻(xiàn)屬性是否對(duì)的;

OPEN/CLOSE語(yǔ)句是否對(duì)的;

U表達(dá)式符號(hào)錯(cuò)。

比較判斷與控制流經(jīng)常緊密相關(guān),測(cè)試用例還應(yīng)致力于發(fā)現(xiàn)下列錯(cuò)誤:

U不同數(shù)據(jù)類型的對(duì)象之間進(jìn)行比較;

U錯(cuò)誤地使用邏輯運(yùn)算符或優(yōu)先級(jí);

U因計(jì)算機(jī)表達(dá)的局限性,盼望理論I?.相等而事實(shí)上不相等的兩個(gè)量相等;

U比較運(yùn)算或變量犯錯(cuò);

U循環(huán)終止條件或不也許出現(xiàn);

U迭代發(fā)散時(shí)不能退出;

U錯(cuò)誤地修改了循環(huán)變量。

6.5犯錯(cuò)解決測(cè)試

一個(gè)好的設(shè)計(jì)應(yīng)能預(yù)見(jiàn)各種犯錯(cuò)條件,并預(yù)設(shè)各種犯錯(cuò)解決通路,犯錯(cuò)解決通路同樣需要認(rèn)

真測(cè)試,測(cè)試應(yīng)著重檢查下列問(wèn)題:

U輸出的犯錯(cuò)信息難以理解;

U記錄的錯(cuò)誤與實(shí)際碰到的錯(cuò)誤不相符;

u在程序自定義的犯錯(cuò)解決段運(yùn)營(yíng)之前,系統(tǒng)已介入;

U異常解決不妥;

U錯(cuò)誤陳述中未能提供足夠的定位犯錯(cuò)信息。

6.6邊界條件測(cè)試

邊界條件測(cè)試是單元測(cè)試中最后,也是最重要的一項(xiàng)任務(wù)。眾的周知,軟件經(jīng)常在邊界上失

效,采用邊界值分析技術(shù),針對(duì)邊界值及其左、右設(shè)計(jì)測(cè)試用例,很有也許發(fā)現(xiàn)新的錯(cuò)誤。

7、集成測(cè)試的基本方法

某設(shè)計(jì)人員習(xí)慣于把所有模塊按設(shè)計(jì)規(guī)定一次所有組裝起來(lái),然后進(jìn)行整體測(cè)試,

這稱為非增量式集成。這種方法容易出現(xiàn)混亂。由于測(cè)試時(shí)也許發(fā)現(xiàn)?大堆錯(cuò)誤,為每個(gè)錯(cuò)

誤定位和糾正非常困難,并且在改正一個(gè)錯(cuò)誤的同時(shí)又也許引入新的錯(cuò)誤,新舊錯(cuò)誤混雜,

更難斷定犯錯(cuò)的因素和位置。與之相反的是增量式集成方法,程序一段一段地?cái)U(kuò)展,測(cè)試的

范圍?步一步地增大,錯(cuò)誤易于定位和糾正,界面的測(cè)試亦可做到完全徹底。下面討論兩種

增量式集成方法。

7.1自頂向下集成

自頂向下集成是構(gòu)造程序結(jié)構(gòu)的一種增量式方式,它從主控模塊開(kāi)始,按照軟件的

控制層次結(jié)構(gòu),以深度優(yōu)先或廣度優(yōu)先的策略,逐步把各個(gè)模塊集成在一起。深度優(yōu)先策略

一方面是把主控制途徑上的模塊集成在一起,至于選擇哪一條途徑作為主控制途徑,這多少

帶有隨意性,一般根據(jù)問(wèn)題的特性擬定。

自頂向下集成測(cè)試的具體環(huán)節(jié)為:

U以主控模塊作為測(cè)試驅(qū)動(dòng)模塊,把對(duì)主控模塊進(jìn)行單元測(cè)試時(shí)引入的所有樁模塊用實(shí)

際模塊替代;

U依據(jù)所選的集成策略(深度優(yōu)先或廣度優(yōu)先),每次只替代一個(gè)樁模塊;

U每集成一個(gè)模塊立即測(cè)試一遍;

u只有每組測(cè)試完畢后,才著手替換下一個(gè)樁模塊;

U為避免引入新錯(cuò)誤,須不斷地進(jìn)行回歸測(cè)試(即所有或部分地反復(fù)已做過(guò)的測(cè)試);

U從第二步開(kāi)始,循環(huán)執(zhí)行上述環(huán)節(jié),直至整個(gè)程序結(jié)構(gòu)構(gòu)造完畢。

自頂向下集成的優(yōu)點(diǎn)在于能盡早地對(duì)程序的重要控制和決策機(jī)制進(jìn)行檢查,因此較

早地發(fā)現(xiàn)錯(cuò)誤。缺陷是在測(cè)試較高層模塊時(shí),低層解決采用樁模塊替代,不能反映真實(shí)情況,

重要數(shù)據(jù)不能及時(shí)回送到上層模塊,因此測(cè)試并不充足。解決這個(gè)問(wèn)題有幾種辦法,第一種

是把某些測(cè)試推遲到用真實(shí)模塊替代樁模塊之后進(jìn)行,第二種是開(kāi)發(fā)能模擬真實(shí)模塊的樁模

塊;第三種是自底向上集成模塊。第一種方法又回退為豐增量式的集成方法,使錯(cuò)誤難于定

位和糾正,并且失去了在組裝模塊時(shí)進(jìn)行一些特定測(cè)試的也許性;第二種方法無(wú)疑要大大增

長(zhǎng)開(kāi)銷;第三種方法比較切實(shí)可行。

7.2自底向上集成

自底向上測(cè)試是從“原子”模塊(即軟件結(jié)構(gòu)最低層的模塊)開(kāi)始組裝測(cè)試,因測(cè)試

到較高層模塊時(shí),所需的下層模塊功能均已具有,所以不再需要樁模塊。

自底向上綜合測(cè)試的環(huán)節(jié)分為:

u把低層模塊組織成實(shí)現(xiàn)某個(gè)子功能的模塊群(cluster);

u開(kāi)發(fā)?個(gè)測(cè)試驅(qū)動(dòng)模塊,控制測(cè)試數(shù)據(jù)的輸入和測(cè)試結(jié)果的輸出;

u對(duì)每個(gè)模塊群進(jìn)行測(cè)試;

U刪除測(cè)試使用的驅(qū)力模塊,用較高層模塊把模塊群組織成為完畢更大功能的新模塊群;

U從第一步開(kāi)始循環(huán)執(zhí)行上述各環(huán)節(jié),直至整個(gè)程序構(gòu)造完畢。

自底向上集成方法不用樁模塊,測(cè)試用例的設(shè)t-亦相對(duì)簡(jiǎn)樸,但缺陷是程序最后一

個(gè)模塊加入時(shí)才具有整體形象。它與自頂向綜合測(cè)試方法優(yōu)缺陷正好相反。因此,在測(cè)試軟

件系統(tǒng)時(shí),應(yīng)根據(jù)軟件的特點(diǎn)和工程的進(jìn)度,選用適當(dāng)?shù)臏y(cè)試策略,有時(shí)混和使用兩種策略

更為有效,上層模塊用自頂向下的方法,下層模塊用自底向上的方法。

此外,在集成測(cè)試中特別要注意關(guān)鍵模塊,所謂關(guān)鍵模塊一般都具有下述一或多個(gè)

特性:①相應(yīng)幾條需求;②具有高層控制功能;③復(fù)雜、易犯錯(cuò);④有特殊的性能規(guī)定。關(guān)

犍模塊應(yīng)盡早測(cè)試,并反要進(jìn)行回歸測(cè)試。

8、確認(rèn)測(cè)試的基本方法

8.1確認(rèn)測(cè)試標(biāo)準(zhǔn)

實(shí)現(xiàn)軟件確認(rèn)要通過(guò)一系列黑盒測(cè)試。確認(rèn)測(cè)試同樣需要制訂測(cè)試計(jì)劃和過(guò)程,

測(cè)試計(jì)劃應(yīng)規(guī)定測(cè)試的種類和測(cè)試進(jìn)度,測(cè)試過(guò)程則定義一些特殊的測(cè)試用例,旨在說(shuō)明軟

件與需求是否一致。無(wú)論是計(jì)劃還是過(guò)程,都應(yīng)當(dāng)著重考慮軟件是否滿足協(xié)議規(guī)定的所有功

能和性能,文檔資料是否完整、準(zhǔn)確,人機(jī)界面和其他方面(例如,可移植性、兼容性、錯(cuò)

誤恢復(fù)能力和可維護(hù)性等)是否令用戶滿意。

確認(rèn)測(cè)試的結(jié)果有兩種也許,一種是功能和性能指標(biāo)滿足軟件需求說(shuō)明的規(guī)定,

用戶可以接受;另一種是軟件不滿足軟件需求說(shuō)明的規(guī)定,用戶無(wú)法接受。項(xiàng)目進(jìn)行到這個(gè)

階段才發(fā)現(xiàn)嚴(yán)重錯(cuò)誤和偏差?般很難在預(yù)定的工期內(nèi)改正,因此必須與用戶協(xié)商,尋求?個(gè)

妥善解決問(wèn)題的方法。

8.2配置復(fù)審

確認(rèn)測(cè)試的另一個(gè)重要環(huán)節(jié)是配置復(fù)審。復(fù)審的目的在于保證軟件配置齊全、

分類有序,并且涉及軟件維護(hù)所必須的細(xì)節(jié)。

8.3a、0測(cè)試

事實(shí)上,軟件開(kāi)發(fā)人員不也許完全預(yù)見(jiàn)用戶實(shí)際使用程序的情況。例如,用戶也許

錯(cuò)誤的理解命令,或提供一些奇怪的數(shù)據(jù)組合,亦也許對(duì)設(shè)計(jì)者自認(rèn)明了的輸出信息迷惑不

解,等等。因此,軟件是否真正滿足最終用戶的規(guī)定,應(yīng)由用戶進(jìn)行一系列“驗(yàn)收測(cè)試”。驗(yàn)

收測(cè)試既可以是非正式的則試,也可以有計(jì)劃、有系統(tǒng)的測(cè)試。有時(shí),驗(yàn)收測(cè)試長(zhǎng)達(dá)數(shù)周甚

至數(shù)月,不斷暴露錯(cuò)誤,導(dǎo)致開(kāi)發(fā)延期。一個(gè)軟件產(chǎn)品,也許擁有眾多用戶,不也許由每個(gè)

用戶驗(yàn)收,此時(shí)多采用稱為a、p測(cè)試的過(guò)程,以期發(fā)現(xiàn)那些似乎只有最終用戶才干發(fā)現(xiàn)的

問(wèn)題。

a測(cè)試是指軟件開(kāi)發(fā)公司組織內(nèi)部人員模擬各類用戶行對(duì)即將面市軟件產(chǎn)品(稱為

a版本)進(jìn)行測(cè)試,試圖發(fā)現(xiàn)錯(cuò)誤并修正。a測(cè)試的關(guān)鍵在于盡也許逼真地模擬實(shí)際運(yùn)營(yíng)環(huán)

境和用戶對(duì)軟件產(chǎn)品的操作并盡最大努力涵蓋所有也許的用戶操作方式。通過(guò)a測(cè)試調(diào)整

的軟件產(chǎn)品稱為0版本。緊隨其后的。測(cè)試是指軟件開(kāi)發(fā)公司組織各方面的典型用戶在平常

工作中實(shí)際使用P版本,并規(guī)定用戶報(bào)告異常情況、提出批評(píng)意見(jiàn)。然后軟件開(kāi)發(fā)公司再對(duì)

。版本進(jìn)行改錯(cuò)和完善。

9、系統(tǒng)測(cè)試的基本方法

9.1恢復(fù)測(cè)試

恢復(fù)測(cè)試重要檢杳系統(tǒng)的容錯(cuò)能力。當(dāng)系統(tǒng)犯錯(cuò)時(shí),能否在指定期間間隔內(nèi)修正錯(cuò)

誤并重新啟動(dòng)系統(tǒng)?;謴?fù)測(cè)試一方面要采用各種辦法逼迫系統(tǒng)失敗,然后驗(yàn)證系統(tǒng)是否能盡

快恢復(fù).對(duì)于自動(dòng)恢復(fù)需驗(yàn)證重新初始化(reinitialization),檢查點(diǎn)

(checkpointingmechanisms)數(shù)據(jù)恢復(fù)(datarecovery)和重新啟動(dòng)(restart)等機(jī)制的對(duì)的性;

對(duì)于人工干預(yù)的恢復(fù)系統(tǒng),還需估測(cè)平均修復(fù)時(shí)間,擬定其是否在可接受的范圍內(nèi)。

9.2安全測(cè)試

安全測(cè)試檢查系統(tǒng)對(duì)非法侵入的防范能力。安全測(cè)試期間,測(cè)試人員假扮非法入

侵者,采用各種辦法試圖突破防線。例如,①想方設(shè)法截取或破譯II令;②專門定做軟件破

壞系統(tǒng)的保護(hù)機(jī)制;③故意導(dǎo)致系統(tǒng)失敗,企圖趁恢復(fù)之機(jī)非法進(jìn)入;④試圖通過(guò)瀏覽非保

密數(shù)據(jù),推導(dǎo)所需信息,等等。理論上講,只要有足夠的時(shí)間和資源,沒(méi)有不可進(jìn)入的系統(tǒng)。

因此系統(tǒng)安全設(shè)計(jì)的準(zhǔn)則是,使非法侵入的代價(jià)超過(guò)被保護(hù)信息的價(jià)值。此時(shí)非法侵入者已

無(wú)利可圖。

9.3強(qiáng)度測(cè)試

強(qiáng)度測(cè)試檢查程序?qū)Ξ惓G闆r的抵抗能力。強(qiáng)度測(cè)試總是迫使系統(tǒng)在異常的資源

配置F運(yùn)營(yíng)。例如,①當(dāng)中斷的正常頻率為每秒一至兩個(gè)時(shí),運(yùn)營(yíng)每秒產(chǎn)生十個(gè)中斷的測(cè)試

用例;②定量地增長(zhǎng)數(shù)據(jù)輸入率,檢查輸入子功能的反映能力;③運(yùn)營(yíng)需要最大存儲(chǔ)空間(或

其他資源)的測(cè)試用例;④運(yùn)營(yíng)也許導(dǎo)致虛存操作系統(tǒng)崩潰或磁盤數(shù)據(jù)劇烈抖動(dòng)的測(cè)試用例,

等等。

9.4性能測(cè)試

對(duì)于那些實(shí)時(shí)和嵌入式系統(tǒng),軟件部分即使?jié)M足功能規(guī)定,也未必可以滿足性能

規(guī)定,雖然從單元測(cè)試起,每一測(cè)試環(huán)節(jié)都包含性能測(cè)試,但只有當(dāng)系統(tǒng)真正集成之后,在

真實(shí)環(huán)境中才干全面、可靠地測(cè)試運(yùn)營(yíng)性能系統(tǒng)性能測(cè)試是為了完畢這?任務(wù)。性能測(cè)試有

時(shí)與強(qiáng)度測(cè)試相結(jié)合,經(jīng)常需要其他軟硬件的配套支持.

10、回歸測(cè)試方法

回歸測(cè)試的價(jià)值在于它是一個(gè)可以檢測(cè)到回歸錯(cuò)誤的受控實(shí)驗(yàn)。當(dāng)測(cè)試組選擇縮減的回歸測(cè)

試時(shí),有也許刪除了將揭示回歸錯(cuò)誤的測(cè)試用例,消除了發(fā)現(xiàn)回歸錯(cuò)誤的機(jī)會(huì)。然而,假如

采用了代碼相依性分析等安全的縮減技術(shù),就可以決定哪些測(cè)試用例可以被刪除而不會(huì)讓回

歸測(cè)試的意圖遭到破壞。

選擇回歸測(cè)試策略應(yīng)當(dāng)兼顧效率和有效性兩個(gè)方面。常用的選擇回歸測(cè)試的方式涉及:

10」再測(cè)試所有用例:

選擇基線測(cè)試用例庫(kù)中的所有測(cè)試用例組成回歸測(cè)試包,這是一種比較安全的方法,再測(cè)試

所有用例具有最低的漏掉回歸錯(cuò)誤的風(fēng)險(xiǎn),但測(cè)試成本最高。所有再測(cè)試幾乎可以應(yīng)用到任

何情況下,基本上不需要進(jìn)行分析和重新開(kāi)發(fā),但是,隨著開(kāi)發(fā)工作的進(jìn)展,測(cè)試用例不斷

增多,反復(fù)原先所有的測(cè)試將帶來(lái)很大的工作量,往往超過(guò)了我們的預(yù)算和進(jìn)度。

10.2基于風(fēng)險(xiǎn)選擇測(cè)試:

可以基于一定的風(fēng)險(xiǎn)標(biāo)準(zhǔn)來(lái)從基線測(cè)試用例庫(kù)中選擇I可歸測(cè)試包。一方面運(yùn)營(yíng)最重要的、關(guān)

健的和可疑的測(cè)試,而跳過(guò)那些非關(guān)鍵的、優(yōu)先級(jí)別低的或者高穩(wěn)定的測(cè)試用例,這些用例

即便也許測(cè)試到缺陷,這些缺陷的嚴(yán)重性也僅有三級(jí)或四級(jí)。一般而言,測(cè)試從重要特性到

次要特性

10.3基于操作剖面選擇測(cè)試:

假如基線測(cè)試用例庫(kù)的測(cè)試用例是基于軟件操作剖面開(kāi)發(fā)的,測(cè)試用例的分布情況反映了系

統(tǒng)的實(shí)際使用情況C回歸測(cè)試所使用的測(cè)試用例個(gè)數(shù)可以由測(cè)試預(yù)算擬定.回歸測(cè)試可以優(yōu)

先選擇那些針對(duì)最重要或最頻繁使用功能的測(cè)試用例,釋放和緩解最高級(jí)別的風(fēng)險(xiǎn),有助于

盡早發(fā)現(xiàn)那些對(duì)可靠性有最大影響的故障。這種方法可以在?個(gè)給定的預(yù)算下最有效的提高

系統(tǒng)可靠性,但實(shí)行起來(lái)有一定的難度。

10.4再測(cè)試修改的部分:

當(dāng)測(cè)試者對(duì)修改的局部化有足夠的信心時(shí),可以通過(guò)相依性分析辨認(rèn)軟件的修改情況并分析

修改的影響,將回歸測(cè)試局限于被改變的模塊和它的接口上。通常,一個(gè)回歸錯(cuò)誤一定涉及

一個(gè)新的、修改的或刪除的代碼段。在允許的條件下,回歸測(cè)試盡也許覆蓋受到影響的部分。

再測(cè)試所有用例的策略是最安全的策略,但已經(jīng)運(yùn)營(yíng)過(guò)許多次的回歸測(cè)試不太也許揭示新的

錯(cuò)誤,并且很多時(shí)候,由于時(shí)間、人員、設(shè)備和經(jīng)費(fèi)的因素,不允許選擇再測(cè)試所有用例的

回歸測(cè)試第略,此時(shí),可以選擇適當(dāng)?shù)牡诼赃M(jìn)行縮減的回歸測(cè)試.

三、測(cè)試階段的劃分

根據(jù)開(kāi)發(fā)過(guò)程和實(shí)際需求將測(cè)試階段劃分為:設(shè)計(jì)階段、代碼檢測(cè)單元測(cè)試階段、集

成測(cè)試階段、系統(tǒng)測(cè)試階段、驗(yàn)收測(cè)試階段、回歸測(cè)試(復(fù)測(cè))階段。各階段中使用的測(cè)試

方法詳見(jiàn)本規(guī)范的測(cè)試方法。

1、設(shè)計(jì)階段

核心工作是對(duì)軟件產(chǎn)品功能說(shuō)明書進(jìn)行檢杳,軟件產(chǎn)品功能說(shuō)明書是對(duì)軟件產(chǎn)品最終

需要實(shí)現(xiàn)的功能的描述。編寫軟件測(cè)試計(jì)劃。

2、單元測(cè)試階段

單元測(cè)試完畢對(duì)軟件最小的結(jié)構(gòu)的測(cè)試,一般用來(lái)驗(yàn)證模塊的功能屬性,它運(yùn)用設(shè)計(jì)文檔作

為指導(dǎo),重要使用白盒測(cè)試技術(shù);但也可以測(cè)試其它項(xiàng)目,如性能、可用性等等,可使用“黑

盒''或“白盒”方法進(jìn)行。在單元測(cè)試中,檢查出模塊內(nèi)部的錯(cuò)誤是單元測(cè)試的重要工作。該

階段的測(cè)試丁作.由編程組內(nèi)部人員進(jìn)行交叉測(cè)試(避免編程人員測(cè)試自己的程序)C

單元測(cè)試過(guò)程:一般認(rèn)為單元測(cè)試應(yīng)緊接在編碼之后,當(dāng)源程序編制完畢并通過(guò)復(fù)

審和編譯檢查,便可開(kāi)始單元測(cè)試。測(cè)試用例的設(shè)計(jì)應(yīng)與復(fù)審工作相結(jié)合,根據(jù)設(shè)計(jì)信息選

取測(cè)試數(shù)據(jù),將增大發(fā)現(xiàn)二述各類錯(cuò)誤的也許性。在擬定測(cè)試用例的同時(shí),應(yīng)給出盼望結(jié)果。

提高模塊的內(nèi)聚度可簡(jiǎn)化單元測(cè)試,假如每個(gè)模塊只能完畢?個(gè),所需測(cè)試用例數(shù)目將

顯著減少,模塊中的錯(cuò)誤也更容易發(fā)現(xiàn)。

3、集成測(cè)試階段

時(shí)常有這樣的情況發(fā)生,每個(gè)模塊都能單獨(dú)工作,但這些模塊集成在一起之后卻不能

正常工作。重要因素是,模塊互相調(diào)用時(shí)接口會(huì)引入許多新問(wèn)題。例如,數(shù)據(jù)通過(guò)接口也許

去失:一個(gè)模塊對(duì)另一模塊也許導(dǎo)致不應(yīng)有的影響:幾個(gè)子功能組合起來(lái)不能實(shí)現(xiàn)主功能:

誤差不斷積累達(dá)成不可接受的限度:全局?jǐn)?shù)據(jù)結(jié)構(gòu)出現(xiàn)錯(cuò)誤,等等。集成測(cè)試是組裝軟件的

系統(tǒng)測(cè)試技術(shù),按設(shè)計(jì)規(guī)定把通過(guò)單元測(cè)試的各個(gè)模塊組裝在一起之后,進(jìn)行集成測(cè)試以便

發(fā)現(xiàn)與接口有關(guān)的各種錯(cuò)誤。

4、確認(rèn)測(cè)試階段

確認(rèn)測(cè)試的目的是向未來(lái)的用戶表白系統(tǒng)可以像預(yù)定規(guī)定那樣工作。經(jīng)集成測(cè)試后,

已經(jīng)按照設(shè)計(jì)把所有的模塊組裝成一個(gè)完整的軟件系統(tǒng),接11錯(cuò)誤也己經(jīng)基本排除了,接著

就應(yīng)當(dāng)進(jìn)一步驗(yàn)證軟件的有效性,這就是確認(rèn)測(cè)試的任務(wù),即軟件的功能和性能如同用戶所

合理期待的那樣。

5、系統(tǒng)測(cè)試階段

計(jì)算機(jī)軟件是基于計(jì)算機(jī)系統(tǒng)的一個(gè)重要組成部分,軟件開(kāi)發(fā)完畢后應(yīng)與系統(tǒng)中其它成分集

成在一起,此時(shí)需要進(jìn)行一系列系統(tǒng)測(cè)試。涉及恢復(fù)測(cè)試、安全測(cè)試、強(qiáng)度測(cè)試和性能測(cè)試

等。在系統(tǒng)測(cè)試之前,軟件工程師應(yīng)完畢下列工作:

(I)為測(cè)試軟件系統(tǒng)的輸入信息設(shè)計(jì)犯錯(cuò)解決通路;

(2)設(shè)計(jì)測(cè)試用例,模擬錯(cuò)誤數(shù)據(jù)和軟件界面也許發(fā)生的錯(cuò)誤,記錄測(cè)試結(jié)果,

為系統(tǒng)測(cè)試提供經(jīng)驗(yàn)和幫助;

(3)參與系統(tǒng)測(cè)試的規(guī)劃和設(shè)計(jì),保證軟件測(cè)試的合理性。

系統(tǒng)測(cè)試應(yīng)當(dāng)由若干個(gè)不同測(cè)試組成,目的是充足運(yùn)營(yíng)系統(tǒng),驗(yàn)證系統(tǒng)各部件是否

都能工作并完畢所賦予的任務(wù)。

6、回歸測(cè)試(復(fù)測(cè))階段

回歸測(cè)試就是漏洞修復(fù)完畢后再對(duì)軟件進(jìn)行測(cè)試,以保證軟件沒(méi)有產(chǎn)生"回歸”或因修復(fù)而變

得更糟,這種測(cè)試一般要重新運(yùn)營(yíng)最初發(fā)現(xiàn)問(wèn)題的原始測(cè)試程序。有關(guān)回歸測(cè)試有兩個(gè)焦點(diǎn):

有沒(méi)有產(chǎn)生新的漏洞,修豆是否的確使缺陷消除。

回歸測(cè)試的過(guò)程:

有了測(cè)試用例庫(kù)的維護(hù)方法和回歸測(cè)試包的選擇策略,回歸測(cè)試可遵循下述過(guò)程進(jìn)行:

U辨認(rèn)出軟件中被修改的部分

U從原基線測(cè)試用例庫(kù)中排除所有不再合用的測(cè)試用例,擬定那些對(duì)新的軟件版本仍然

有效的測(cè)試用例

U假如必要,生成新的測(cè)試用例集,用于測(cè)試本來(lái)測(cè)試用例集無(wú)法充足測(cè)試的部分

U依據(jù)一定的策略選攔測(cè)試用例測(cè)試被修改的軟件。

U進(jìn)行測(cè)試,并記錄測(cè)試結(jié)果到測(cè)試報(bào)告

U分析測(cè)試報(bào)告

U修正和測(cè)試工作

U完畢測(cè)試產(chǎn)品提交配置

四、測(cè)試類型的劃分

I、功能測(cè)試:對(duì)軟件功能進(jìn)行的測(cè)試,重要檢查軟件功能是否實(shí)現(xiàn)了軟件功能說(shuō)明書(軟

件需求)上的功能規(guī)定。

2、界面測(cè)試:對(duì)軟件的用戶界面進(jìn)行的測(cè)試,重要檢查用戶界面的美觀度、統(tǒng)一性、易用

性等方面的內(nèi)容。

3、數(shù)據(jù)解決測(cè)試:對(duì)軟件數(shù)據(jù)接口進(jìn)行的測(cè)試,重要檢查軟件數(shù)據(jù)解決中輸入、解決、輸

出數(shù)據(jù)過(guò)程。

4、流程測(cè)試:按操作流程進(jìn)行的測(cè)試,重要有業(yè)務(wù)流程、數(shù)據(jù)流程、邏輯流程、正反流程,

檢查軟件在按流程操作時(shí)是否可以對(duì)的解決。

5、極限測(cè)試:在軟件的極限條件下進(jìn)行的測(cè)試,重要有對(duì)數(shù)據(jù)的極限值、邊界值操作,對(duì)

軟件進(jìn)行致命操作等。

6、并發(fā)測(cè)試:在網(wǎng)絡(luò)環(huán)境、并發(fā)環(huán)境、多用戶條件下對(duì)軟件進(jìn)行的測(cè)試。

7、安全測(cè)試:對(duì)軟件安全性方面的測(cè)試,重要檢測(cè)軟件中加密、解密、數(shù)據(jù)備份、恢復(fù)、

病毒檢測(cè)等問(wèn)題。

8、性能測(cè)試:對(duì)軟件整體性能的測(cè)試,測(cè)試內(nèi)容有適應(yīng)性、健壯性、可恢復(fù)性、劫難恢復(fù)

能力等

9、安裝測(cè)試:在不同PC條件、操作系統(tǒng)、模擬客戶機(jī)等條件下進(jìn)行軟件的安裝測(cè)試,重

要檢查軟件打包或發(fā)布之后存在的問(wèn)題。

五、測(cè)試模式

V型模型,實(shí)現(xiàn)測(cè)試與軟件開(kāi)發(fā)的同步進(jìn)行。

需求分析蛉收測(cè)試

六、測(cè)試一開(kāi)發(fā)工作流程

91能改EUG竊舲開(kāi)笈在務(wù)

版本更新定期編譯

七、測(cè)試工作流程

測(cè)試操作流程圖

說(shuō)明:

設(shè)計(jì)測(cè)試用例、執(zhí)行測(cè)試用例詳見(jiàn)《測(cè)試用例》。

描述軟件錯(cuò)誤即填寫bug登記表,詳見(jiàn)《BUG標(biāo)準(zhǔn)》

八、附錄

附錄一、測(cè)試文檔

I測(cè)試計(jì)劃

1?引言

1.1編寫目的

【闡明編寫測(cè)試計(jì)劃的目的,指明讀者對(duì)象?!?/p>

1.2項(xiàng)目背景

【說(shuō)明項(xiàng)目的來(lái)源、委托單位及主管部門。】

1.3定義

【列出測(cè)試計(jì)劃中所用到的專門術(shù)語(yǔ)的定義和縮寫詞的原意?!?/p>

1.4參考資料

【列出有關(guān)資料的作者、標(biāo)題、編號(hào)、發(fā)表日期、出版單位或資料來(lái)源,可涉及:

a.項(xiàng)目的計(jì)劃任務(wù)書、協(xié)議或批文;

b.項(xiàng)目開(kāi)發(fā)計(jì)劃;

c.需求規(guī)格說(shuō)明書;

d.概要設(shè)計(jì)說(shuō)明書;

e.具體設(shè)計(jì)說(shuō)明書;

f.用戶操作手冊(cè):

g.本測(cè)試計(jì)劃中引用的其他資料、采用的軟件開(kāi)發(fā)標(biāo)準(zhǔn)或規(guī)范

2.任務(wù)概述

2.1目的

2.2運(yùn)營(yíng)環(huán)境

2.3需求概述

2.4條件與限制

3.計(jì)劃

3.1測(cè)試方案

【說(shuō)明擬定測(cè)試方法和選取測(cè)試用例的原則?!?/p>

3.2測(cè)試項(xiàng)目

【列出組裝測(cè)試和確認(rèn)測(cè)試中每一項(xiàng)測(cè)試的內(nèi)容、名稱、目的和進(jìn)度?!?/p>

3.3測(cè)試準(zhǔn)備

3.4測(cè)試機(jī)構(gòu)及人員

【測(cè)試機(jī)構(gòu)名稱、負(fù)責(zé)人和職責(zé)

4.測(cè)試項(xiàng)目說(shuō)明

【按順序逐個(gè)對(duì)測(cè)試項(xiàng)目做出說(shuō)明:】

4.1測(cè)試項(xiàng)目名稱及測(cè)試內(nèi)容

4.2測(cè)試用例

4.2.1輸入

【輸入的數(shù)據(jù)和輸入命令門

4.2.2輸出

【預(yù)期的輸出數(shù)據(jù)。】

4.2.3環(huán)節(jié)及操作

4.2.4允許偏差

【給出實(shí)測(cè)結(jié)果與預(yù)期結(jié)果之間允許偏差的范圍?!?/p>

4.3進(jìn)度

4.4條件

【給出測(cè)試對(duì)資源的特殊規(guī)定,如設(shè)備、軟件、人員等,】

4.5測(cè)試資料

【說(shuō)明測(cè)試所需的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論