《软件测试》第八章 配置测试
《軟件測試》第八章 配置測試
- 8.0 前言
- 8.1 配置測試綜述
- 8.1.1 分離配置缺陷
- 8.1.2 計(jì)算工作量
- 8.2 執(zhí)行任務(wù)
- 8.2.1 確定所需的硬件類型
- 8.2.2 確定有哪些廠商的硬件、型號(hào)和驅(qū)動(dòng)程序可用
- 8.2.3 確定可能的硬件特性、模式和選項(xiàng)
- 8.2.4 將確定后的硬件配置縮減為可控制的范圍
- 8.2.5 明確與硬件配置有關(guān)的軟件唯一特性
- 8.2.6 設(shè)計(jì)在每種配置中執(zhí)行的測試用例
- 8.2.7 在每種配置中執(zhí)行測試
- 8.2.8 反復(fù)測試直到小組對(duì)結(jié)果滿意為止
- 8.3 獲得硬件
- 8.4 明確硬件標(biāo)準(zhǔn)
- 8.5 對(duì)其他硬件進(jìn)行配置測試
8.0 前言
如果剛準(zhǔn)備開始從事軟件測試工作,首先的一個(gè)任務(wù)是配置測試。要保證被測試的軟件在盡可能多的硬件平臺(tái)上運(yùn)行。假如不是為PC和Mac機(jī)測試軟件——只測試專用系統(tǒng)——也仍然要考慮一些配置問題。運(yùn)用本章所學(xué)可以輕松定制符合具體情況的測試。
本章重點(diǎn)包括:
- 為什么配置測試必不可少
- 為什么配置測試可能是艱巨的任務(wù)
- 配置測試的基本方法
- 如何找到需要測試的硬件
- 如果不是在為臺(tái)式機(jī)測試軟件怎么辦
8.1 配置測試綜述
配置測試是指使用各種硬件來測試軟件運(yùn)行的過程。看看在家用和商用領(lǐng)域基于標(biāo)準(zhǔn)Windows的PC有哪些配置可能性:
-
個(gè)人計(jì)算機(jī)。
-
部件。大多數(shù)PC是模塊化的,由各種系統(tǒng)主板、部件板卡和其他內(nèi)部設(shè)備,如磁盤驅(qū)動(dòng)器、CD-ROM驅(qū)動(dòng)器、DVD讀寫器、視頻卡、聲卡、調(diào)制調(diào)解器、網(wǎng)卡等構(gòu)成。
-
外設(shè)。外設(shè)是指打印機(jī)、掃描儀、鼠標(biāo)、鍵盤、顯示器、數(shù)碼相機(jī)、游戲桿以及其他可以插在主板上從外部操縱PC的設(shè)備。
-
接口。如下圖所示,部件和外設(shè)是通過各種接口適配器連入PC的。這些接口可以是PC內(nèi)部的,也可以是PC外部的。
-
可選項(xiàng)和內(nèi)存。許多部件和外設(shè)具有不同硬件可選項(xiàng)和內(nèi)存容量供購買時(shí)選擇。
-
設(shè)備驅(qū)動(dòng)程序。所有部件和外設(shè)通過稱為設(shè)備驅(qū)動(dòng)程序的底層軟件與操作系統(tǒng)和軟件應(yīng)用程序通信。這些驅(qū)動(dòng)程序通常由硬件設(shè)備生產(chǎn)廠商提供,在安裝硬件時(shí)一并安裝。盡管從技術(shù)上來講它們是軟件,但是出于測試的目的,可以認(rèn)為它們是硬件配置。
如果準(zhǔn)備開始進(jìn)行軟件的配置測試,就要考慮哪些配置與程序的關(guān)系最密切。對(duì)圖像要求很高的計(jì)算機(jī)游戲要多加注意視頻和聲音部分。賀卡程序容易受到打印問題的困擾。傳真或通信程序需要在多種調(diào)制調(diào)解器和網(wǎng)絡(luò)配置下測試。
8.1.1 分離配置缺陷
如果在玩游戲或者使用圖形程序時(shí),顏色突然變花或者無法拖動(dòng)部分窗口,就可能發(fā)現(xiàn)了顯示適配器配置缺陷。如果花費(fèi)數(shù)小時(shí)(或者數(shù)天)才使老程序正常使用新打印機(jī),這可能就是配置缺陷。
判斷缺陷是配置問題而不僅僅是普通缺陷最可靠的方法是,在另外一臺(tái)有完全不同配置的計(jì)算機(jī)上一步步執(zhí)行導(dǎo)致問題的相同操作。如果缺陷沒有產(chǎn)生,就極有可能是特定的配置問題,在獨(dú)特的硬件配置下才會(huì)暴露出來。
假設(shè)在一個(gè)獨(dú)特的配置中測試軟件時(shí)發(fā)現(xiàn)了一個(gè)問題,誰應(yīng)該來修復(fù)缺陷——開發(fā)小組還是硬件廠商?這可能發(fā)展為一個(gè)代價(jià)極其高昂的問題。
首先,要找出問題所在。這通常是動(dòng)態(tài)白盒測試員和程序員調(diào)試的工作。一個(gè)配置問題產(chǎn)生的原因不少,全都要求有人在不同的配置中運(yùn)行軟件時(shí)仔細(xì)檢查代碼,以找出缺陷:
- 軟件可能包含在多種配置中都會(huì)出現(xiàn)的缺陷。一個(gè)例子是賀卡程序使用激光打印機(jī)時(shí)工作正常,而使用噴墨打印機(jī)時(shí)工作異常。
- 軟件可能包含只在某一個(gè)特殊配置中出現(xiàn)的缺陷。
- 硬件設(shè)備或者其驅(qū)動(dòng)程序可能包含僅由軟件揭示的缺陷。也許只有被測試的軟件才使用到顯示卡的某種設(shè)置。也許當(dāng)被測試的軟件使用某種視頻卡時(shí),系統(tǒng)就會(huì)崩潰。
- 硬件設(shè)備或者其設(shè)備驅(qū)動(dòng)程序可能包含一個(gè)借助許多其他軟件才能看出來的缺陷——盡管它可能對(duì)測試的軟件特別明顯。一個(gè)例子是某種打印機(jī)驅(qū)動(dòng)程序總是默認(rèn)地采用草稿模式,而照片打印軟件不得不在每次打印時(shí)設(shè)為高品質(zhì)輸出模式。
在前兩種情況下,很顯然要由項(xiàng)目小組負(fù)責(zé)修復(fù)缺陷。這是項(xiàng)目小組的事,項(xiàng)目小組應(yīng)修復(fù)缺陷。在后兩種情況下,責(zé)任不那么清晰。假定缺陷是打印機(jī)問題,而該打印機(jī)時(shí)流行機(jī)型,被廣泛采用。軟件顯然應(yīng)該要求能夠使用該打印機(jī)。打印機(jī)銷售商修復(fù)問題可能會(huì)花費(fèi)數(shù)月,所以開發(fā)小組需要針對(duì)缺陷對(duì)軟件做修改,即使軟件的運(yùn)行是正確的。
歸根結(jié)底,無論問題出在哪里,解決問題都是開發(fā)小組的責(zé)任。
8.1.2 計(jì)算工作量
如果決定進(jìn)行完整、全面的配置測試,檢查所有可能的制造者和型號(hào)組合,就會(huì)面臨巨大的工作量。減少麻煩的答案是等價(jià)劃分。需要找出一個(gè)方法把巨大無比的配置可能性減少到盡可能控制的范圍。由于沒有完全測試,因此存在一定的風(fēng)險(xiǎn),但這正是軟件測試的特點(diǎn)。
8.2 執(zhí)行任務(wù)
以下幾個(gè)小節(jié)給出了在計(jì)劃配置測試時(shí)應(yīng)該采用的一般過程。
8.2.1 確定所需的硬件類型
應(yīng)用程序需要打印嗎?如果是,就需要測試打印機(jī)。如果應(yīng)用程序需要發(fā)出聲音,就需要測試聲卡。如果是照片或者圖形處理程序,還可能需要測試掃描儀和數(shù)碼相機(jī)。仔細(xì)查看軟件的特性,確保測試全面、徹底。把軟件安裝盤放在桌子上,想一想需要哪些硬件來使它工作。
在選擇用哪些硬件來測試時(shí)容易忽略的一個(gè)特性例子是聯(lián)機(jī)注冊(cè)。當(dāng)今許多程序允許用戶在安裝過程中通過調(diào)制調(diào)解器和寬帶連接來注冊(cè)軟件。用戶輸入自己的姓名、地址和其他個(gè)人數(shù)據(jù),單擊某個(gè)按鈕,調(diào)制調(diào)解器就會(huì)與軟件公司的計(jì)算機(jī)建立撥號(hào)連接,下載必要信息,完成注冊(cè)。軟件在聯(lián)機(jī)通信時(shí)不用做什么。但是,如果軟件有聯(lián)機(jī)注冊(cè)功能,就需要把調(diào)制調(diào)解器和網(wǎng)絡(luò)通信考慮在配置測試之中。
8.2.2 確定有哪些廠商的硬件、型號(hào)和驅(qū)動(dòng)程序可用
與銷售和市場人員一起制定要測試的硬件清單。如果他們不行或幫不上忙,就找?guī)妆窘诔霭娴摹禤C Magazine》或者《Mac World》,看有哪些硬件可用,哪些正在(曾經(jīng))流行。研究一下看是否有某些設(shè)備是相互翻版、大同小異——屬于同一個(gè)等價(jià)劃分。
確定要測試的設(shè)備驅(qū)動(dòng)程序,一般選擇操作系統(tǒng)附帶的驅(qū)動(dòng)程序、硬件附帶的驅(qū)動(dòng)程序或者硬件或操作系統(tǒng)公司網(wǎng)站上提供的最新的驅(qū)動(dòng)程序。這三種驅(qū)動(dòng)程序通常是不同的。想一想用戶有哪一種,或者能夠獲得哪一種。
8.2.3 確定可能的硬件特性、模式和選項(xiàng)
每一種設(shè)備都有選項(xiàng),軟件沒有必要全部支持。計(jì)算機(jī)游戲就是一個(gè)好例子。許多游戲要求最小顏色數(shù)和顯示分辨率。如果配置低于該要求,游戲就不能運(yùn)行。
8.2.4 將確定后的硬件配置縮減為可控制的范圍
一種方法是把所有配置信息放在電子表格中,列出生產(chǎn)商、型號(hào)、驅(qū)動(dòng)程序版本和可選項(xiàng)。
軟件測試員和開發(fā)小組可以審查這張表,確定要測試哪些配置。用于把眾多配置等價(jià)劃分為較小范圍的決定過程最終取決于軟件測試員和開發(fā)小組。這沒有一個(gè)定式。每一個(gè)軟件工程都不相同,都有不同的選擇標(biāo)準(zhǔn)。一定要保證項(xiàng)目小組的每一個(gè)人(特別是項(xiàng)目經(jīng)理),搞清楚什么配置要測試(什么不測試),選擇它們引起的變化有哪些。
8.2.5 明確與硬件配置有關(guān)的軟件唯一特性
這里的關(guān)鍵詞是唯一。不應(yīng)該也沒有必要在每一種配置中完全測試軟件。只需測試那些與硬件交互時(shí)互不相同(不同等價(jià)劃分)的特性即可。
選擇唯一特性進(jìn)行嘗試并不是說說那么容易。首先應(yīng)該進(jìn)行黑盒測試,通過查看產(chǎn)品找出明顯的特性;然后與小組其他成員(特別是程序員)交談,了解其內(nèi)部的白盒情況。最后會(huì)驚奇地發(fā)現(xiàn)這些特性與配置有一些緊密的關(guān)聯(lián)。
8.2.6 設(shè)計(jì)在每種配置中執(zhí)行的測試用例
測試所有配置的步驟可以簡化為如下形式:
8.2.7 在每種配置中執(zhí)行測試
軟件測試員需要執(zhí)行測試用例,仔細(xì)記錄并向開發(fā)小組報(bào)告結(jié)果,必要時(shí)還要向硬件生產(chǎn)廠商報(bào)告。軟件測試員需要與程序員和白盒測試員緊密合作,分離問題原因,判斷所發(fā)現(xiàn)的軟件缺陷是軟件的原因還是硬件的原因。
如果軟件缺陷是硬件的原因,就利用生產(chǎn)廠商的網(wǎng)站向他們報(bào)告問題。一定要指明自己的軟件測試員的身份以及所在的公司。許多公司有專人幫助軟件公司編寫和硬件配合的軟件。他們可能要求發(fā)送測試軟件的副本、測試用例和相關(guān)細(xì)節(jié),以便幫助他們分離問題。
8.2.8 反復(fù)測試直到小組對(duì)結(jié)果滿意為止
配置測試一般不會(huì)貫穿整個(gè)項(xiàng)目期間。最初可能會(huì)嘗試一些配置,接著整個(gè)測試通過,然后在越來越小的范圍內(nèi)確認(rèn)缺陷的修復(fù)。最后達(dá)到?jīng)]有未解決的缺陷或缺陷限于不常見或者不可能的配置上。
8.3 獲得硬件
- 只買可以或者將會(huì)經(jīng)常使用的配置。小組中每個(gè)測試員都配備不同的硬件是個(gè)非常好的主意,這是保持總有不同的配置來進(jìn)行測試的有效途徑。
- 與硬件生產(chǎn)廠商聯(lián)系,看他們是否能夠租借甚至贈(zèng)送某些硬件。如果說明自己正在測試新軟件,以確保能夠在他們的硬件上運(yùn)行,很多人就會(huì)這樣做。他們也希望知道結(jié)果,因此告訴他們你可以提供測試的結(jié)果,如果有可能,還可以贈(zèng)送一份最終軟件的拷貝。建立這些關(guān)系大有好處,特別是如果發(fā)現(xiàn)一個(gè)軟件缺陷,需要與硬件公司的人員聯(lián)系報(bào)告時(shí)。
- 向全公司的人發(fā)送備忘或者電子郵件,問他們辦公室甚至家里有什么硬件——以及能否允許對(duì)其進(jìn)行一些測試。
- 如果預(yù)算充足,就和項(xiàng)目經(jīng)理一起與專業(yè)配置和兼容性測試實(shí)驗(yàn)室聯(lián)系外協(xié)測試。這些公司專門進(jìn)行配置測試,擁有幾乎所有知名的PC硬件。也許沒有那么多,但是真的不少。
8.4 明確硬件標(biāo)準(zhǔn)
如果喜歡進(jìn)行一點(diǎn)靜態(tài)黑盒分析——審查硬件公司用于制造產(chǎn)品的說明書——可以到幾個(gè)地方去找。了解硬件說明書的一些細(xì)節(jié),有助于做出更多清晰的等價(jià)劃分決定。
對(duì)于Apple機(jī)硬件,訪問Apple硬件網(wǎng)站:http://developer.apple.com/hardware。從中會(huì)找到在Apple機(jī)上進(jìn)行軟件開發(fā)、硬件及其設(shè)備驅(qū)動(dòng)程序測試的信息和鏈接。另外一個(gè)Apple鏈接http://developer.apple.com/testing提供特定的測試信息,包括到進(jìn)行配置測試的測試實(shí)驗(yàn)室的鏈接。
對(duì)于PC,最好的鏈接是http://WWW.microsoft.com/whdc/system/platform。該網(wǎng)站為設(shè)計(jì)在Windows上運(yùn)行的硬件的開發(fā)人員和測試人員提供技術(shù)實(shí)現(xiàn)指導(dǎo)、技巧和工具。
Microsoft公司發(fā)布了一套軟件和硬件接受Windows徽標(biāo)的標(biāo)準(zhǔn)。詳情見http://msdn.microsoft.com/certification/和http://www.Microsoft.com/whdc/whql。
8.5 對(duì)其他硬件進(jìn)行配置測試
如果要測試工業(yè)控制器、網(wǎng)絡(luò)、醫(yī)療設(shè)備或者電話系統(tǒng)軟件,考慮的問題與測試臺(tái)式機(jī)軟件是相同的:
- 何種外部硬件運(yùn)行該軟件?
- 硬件有哪些型號(hào)和版本可用?
- 硬件支持哪些特性或者可選項(xiàng)?
根據(jù)從設(shè)備使用者、項(xiàng)目經(jīng)理或者銷售人員那里獲得的信息來建立硬件的等價(jià)劃分,開發(fā)測試用例,收集所選硬件,執(zhí)行測試。
總結(jié)
以上是生活随笔為你收集整理的《软件测试》第八章 配置测试的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python程序设计与算法基础教程第四章
- 下一篇: VS2017 打包 从与我的应用程序相