(1)單元測試
軟件單元定義了一個(gè)軟件很底層的塊,用PB開發(fā)的客戶機(jī)/服務(wù)器的軟件系統(tǒng)中,一個(gè)窗口、函數(shù)、菜單、報(bào)表或一個(gè)存儲(chǔ)過程都可以作為一個(gè)單元進(jìn)行測試。單元測試是測試的第一步。
1)人員安排:對(duì)于一個(gè)完整的軟件單元,沒有人比它的開發(fā)者更熟悉它,因此,開發(fā)者自己對(duì)其進(jìn)行測試是最合適的。
2)單元測試計(jì)劃:測試計(jì)劃必須在單元測試之前被設(shè)計(jì)和記錄好。大量的文檔說明必須足夠詳細(xì),以備當(dāng)單元開發(fā)者調(diào)離、提升或其他原因離開其崗位時(shí),其他人員也能對(duì)相應(yīng)的單元進(jìn)行測試。此外,在集成測試和系統(tǒng)測試階段,清晰、詳細(xì)、易于理解的單元測試文檔對(duì)于測試者也將發(fā)揮巨大作用。
單元測試的測試計(jì)劃由單元的開發(fā)者(也是該單元的測試者)編制,但在測試計(jì)劃執(zhí)行前必須進(jìn)行審查。這些審查由開發(fā)者以外的人進(jìn)行,第一遍審查由開發(fā)者的直接上司去做,其目的在于找出測試計(jì)劃中的錯(cuò)誤、缺點(diǎn)和疏漏之處。第二遍審查由測試該單元所屬系統(tǒng)的測試人員進(jìn)行,其目的在于確認(rèn)測試計(jì)劃符合公布的標(biāo)準(zhǔn)。如果測試計(jì)劃在任何方面有問題,都將被立即退回到開發(fā)者手中。
3)進(jìn)行單元測試的時(shí)間:在客戶機(jī)/服務(wù)器的開發(fā)過程中,單元測試是測試的第一步。經(jīng)驗(yàn)表明,單元測試執(zhí)行得越快,它的結(jié)果就越有價(jià)值,在開發(fā)周期中錯(cuò)誤發(fā)現(xiàn)得越早,糾正它們所花的代價(jià)就越小。一般來講,單元編碼完成后,就對(duì)其進(jìn)行單元測試。另外,單元測試可以并行進(jìn)行。對(duì)于彼此獨(dú)立的單元,進(jìn)行并行測試可以加速測試的進(jìn)程。
4)單元測試階段的測試類型:在單元測試階段一般采用白盒測試法。深入到代碼層去充分地測試它們是必要的。在這一階段,必須進(jìn)行的測試有:路徑測試、聲明測試、循環(huán)測試、邊值測試、接口測試、數(shù)據(jù)確認(rèn)、事務(wù)測試等。
5)單元測試的特殊考慮:在PB環(huán)境下,開發(fā)的軟件是以窗口為主線將軟件的功能聯(lián)系起來,軟件系統(tǒng)表現(xiàn)為各種各樣的窗口,因此,對(duì)窗口中各控件的各事件的描述的測試是這類軟件測試的中心。
a.控件的測試:一個(gè)空間可以看成是由相關(guān)聯(lián)的一組事件的描述組成的,完成一個(gè)相對(duì)獨(dú)立的功能。對(duì)每一個(gè)事件的Script分別進(jìn)行測試就完成了對(duì)一個(gè)控件的測試。與傳統(tǒng)的軟件相比,PB開發(fā)的軟件風(fēng)格表現(xiàn)在各事件獨(dú)立存在,因此對(duì)它的測試相對(duì)容易。一般來講,先按設(shè)計(jì)的規(guī)格說明對(duì)其代碼進(jìn)行審核;然后,用白盒法對(duì)其進(jìn)行測試,可以達(dá)到較好的效果。
b.窗口的測試:宏觀上看,很像是集成測試。其實(shí),所謂單元測試和集成測試也都是相對(duì)而言的,在有些情況下不易分得很清楚。在單元測試階段,對(duì)窗口的測試主要是測試窗口上各控件是否能按設(shè)計(jì)要求正常工作。在軟件開發(fā)過程中,制定了一系列的標(biāo)準(zhǔn)文件,包括設(shè)計(jì)文檔標(biāo)準(zhǔn),界面標(biāo)準(zhǔn),測試大綱等。對(duì)窗口和控件的測試過程中,界面標(biāo)準(zhǔn)和測試大綱是測試的依據(jù)。
(2)集成測試
在將所有的單元經(jīng)過測試以后,接著進(jìn)行集成測試。集成測試也稱綜合測試,即將已分別通過測試的單元按要求組合起來再進(jìn)行的測試,以檢查這些單元之間的接口是否存在問題。
1)人員安排:綜合測試既要求參與的人熟悉單元的內(nèi)部細(xì)節(jié),又要求他們能夠從足夠高的層次上觀察整個(gè)系統(tǒng)。一般由有經(jīng)驗(yàn)的測試人員和主要的軟件開發(fā)者來完成集成測試的計(jì)劃。
2)測試計(jì)劃:集成測試計(jì)劃由系統(tǒng)設(shè)計(jì)人員在設(shè)計(jì)階段制定,它是和設(shè)計(jì)規(guī)格說明同時(shí)完成的。在這份計(jì)劃里主要包含的內(nèi)容有:測試的描述和范圍、測試環(huán)境、時(shí)間表、集成次序、測試用例、測試的預(yù)期結(jié)果、測試的實(shí)際結(jié)果等。
3)測試內(nèi)容:在經(jīng)過了單元測試后,需要將所有單元集成到一起,組成一個(gè)完整的軟件系統(tǒng)。需重點(diǎn)測試:各單元的接口是否吻合、代碼是否符合規(guī)定的標(biāo)準(zhǔn)、界面標(biāo)準(zhǔn)是否同一等。
4)集成策略:在PB環(huán)境下開發(fā)的軟件系統(tǒng)進(jìn)行測試按自底向上集成的方式比較自然。這種方法是將底層的單元分組集成測試,然后再逐步向上將軟件集成起來,直到最后所有的單元都在一個(gè)組中。測試可按下列步驟進(jìn)行:
a.將最底層的窗口分組,原則是將那些與上層某個(gè)窗口相關(guān)聯(lián)的窗口為一組。
b.對(duì)每一組分別進(jìn)行測試,各組測試可并行展開,這樣可以加快測試的進(jìn)程。
c.沿軟件的結(jié)構(gòu),逐級(jí)向上集成,直到所有的單元都組合到一起,這樣就完成了集成測試的任務(wù)。
5)測試方法:集成測試階段是以黑盒法為主,在自底向上集成的早期,白盒法測試占一定的比例,隨著集成測試的不斷深入,這種比例在測試過程中將越來越少,漸漸地,黑盒法測試占據(jù)主導(dǎo)地位。
(3)系統(tǒng)測試
從技術(shù)角度看,系統(tǒng)測試是整個(gè)測試階段的最后一步,所有的開發(fā)和測試在這一點(diǎn)上集中表現(xiàn)為生成一個(gè)具有一定功能的軟件系統(tǒng)。該階段主要對(duì)系統(tǒng)的準(zhǔn)確性及完整性等方面進(jìn)行測試。主要進(jìn)行:功能確認(rèn)測試、運(yùn)行測試、強(qiáng)度測試、恢復(fù)測試、安全性測試等。系統(tǒng)測試的測試人員由測試組成員(或質(zhì)量保證人員)或測試組成員與用戶共同測試。在整個(gè)系統(tǒng)開發(fā)完成,即將交付用戶使用前進(jìn)行。在這一階段,完全采用黑盒法對(duì)整個(gè)系統(tǒng)進(jìn)行測試。
相關(guān)推薦:考試吧策劃:2010年軟件水平考試完全指南北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |