崔華龍
關(guān)鍵詞 軟件測(cè)試 測(cè)試用例 黑盒測(cè)試 軟件缺陷
1軟件測(cè)試中功能測(cè)試的基本方法
不同類(lèi)型的軟件產(chǎn)品的測(cè)試重點(diǎn)不同,測(cè)試方法也不盡相同。對(duì)于同一類(lèi)型的軟件產(chǎn)品而言,不同的公司會(huì)開(kāi)發(fā)不同的測(cè)試程序。盡管詳細(xì)的測(cè)試步驟因軟件而異,但基本的功能測(cè)試方法是相同的[1] 。
1.1分析測(cè)試對(duì)象需求
在制定測(cè)試計(jì)劃之前,測(cè)試人員需要對(duì)測(cè)試對(duì)象進(jìn)行詳細(xì)分析,從而對(duì)測(cè)試軟件產(chǎn)品有一個(gè)清晰、合理的認(rèn)識(shí),進(jìn)而明確測(cè)試工作的主要任務(wù)、范圍和重點(diǎn)。此外,在分析需求的過(guò)程中可以獲得一些可靠的測(cè)試數(shù)據(jù),既為測(cè)試方案提供基礎(chǔ)依據(jù),也為后續(xù)的回歸測(cè)試奠定良好的基礎(chǔ)。
測(cè)試需求分析還用于對(duì)軟件需求進(jìn)行測(cè)試,以發(fā)現(xiàn)軟件需求中不合理之處。例如,是否涵蓋客戶(hù)提出的所有需求;措辭是否清晰,語(yǔ)義是否含糊;是否清楚地描述了軟件需要做什么,不需要做什么;是否描述了軟件的測(cè)試環(huán)境,包括軟件和硬件環(huán)境;編號(hào)是否合理;要求是否一致,不沖突;是否對(duì)軟件系統(tǒng)的性能需求進(jìn)行了清晰地描述;是否對(duì)需求進(jìn)行了合理排序;是否對(duì)各種約束條件進(jìn)行了描述等。此外,我們還需制作分析測(cè)試需求表,對(duì)每個(gè)描述項(xiàng)和對(duì)應(yīng)的檢查結(jié)果進(jìn)行編號(hào),使分析測(cè)試表一目了然。
我們應(yīng)該注意到被識(shí)別的測(cè)試需求必須是可驗(yàn)證的,并且測(cè)試需求必須具有可觀(guān)察和可測(cè)量的結(jié)果。不能驗(yàn)證的需求不是測(cè)試需求。測(cè)試需求分析還應(yīng)與客戶(hù)進(jìn)行溝通,以澄清任何混淆,并確保測(cè)試人員和客戶(hù)盡早在項(xiàng)目的同一頁(yè)上。
1.2制定測(cè)試計(jì)劃
測(cè)試計(jì)劃一般包括以下工作安排。
(1)定義測(cè)試的范圍:確定哪些對(duì)象需要測(cè)試,哪些對(duì)象不需要測(cè)試。
(2)制定測(cè)試策略:測(cè)試策略是測(cè)試計(jì)劃中最重要的部分。它優(yōu)先考慮要測(cè)試的內(nèi)容,并關(guān)注測(cè)試。根據(jù)測(cè)試模塊的特點(diǎn)和測(cè)試類(lèi)型(如性能測(cè)試、功能測(cè)試)選擇測(cè)試環(huán)境和測(cè)試方法(如自動(dòng)化測(cè)試、手動(dòng)測(cè)試)。
(3)安排測(cè)試資源:根據(jù)測(cè)試難度、時(shí)間、工作量等因素合理安排測(cè)試資源,包括人員配置、工具配置等。
( 4)計(jì)劃測(cè)試:根據(jù)軟件開(kāi)發(fā)計(jì)劃和產(chǎn)品的總體計(jì)劃,考慮工作各部分的變化,并計(jì)劃測(cè)試工作。在安排工作時(shí),在測(cè)試之間留出緩沖時(shí)間以響應(yīng)安排的變化是一個(gè)好主意。
1.3設(shè)計(jì)測(cè)試用例
測(cè)試用例是指測(cè)試團(tuán)隊(duì)設(shè)計(jì)的一組詳細(xì)的測(cè)試場(chǎng)景,包括測(cè)試環(huán)境描述、測(cè)試數(shù)據(jù)統(tǒng)計(jì)、計(jì)劃測(cè)試過(guò)程以及收集預(yù)期結(jié)果。不同的公司擁有不同的測(cè)試用例模板,盡管它們?cè)陲L(fēng)格和樣式上不同,但測(cè)試法則本質(zhì)上是相同的,即涵蓋測(cè)試用例的所有元素。結(jié)合實(shí)踐,編寫(xiě)最終測(cè)試用例的原則是用盡可能少的測(cè)試用例實(shí)現(xiàn)軟件應(yīng)用程序的最大測(cè)試覆蓋率。
1.4測(cè)試執(zhí)行
測(cè)試執(zhí)行是指根據(jù)測(cè)試用例的規(guī)范執(zhí)行測(cè)試的過(guò)程,這是測(cè)試人員在相關(guān)活動(dòng)中最重要的測(cè)試階段。同時(shí),根據(jù)測(cè)試用例優(yōu)先級(jí)執(zhí)行測(cè)試。
在測(cè)試的執(zhí)行過(guò)程中,測(cè)試人員應(yīng)密切跟蹤測(cè)試過(guò)程,記錄“缺陷”,制作表單報(bào)告等,這是測(cè)試人員將來(lái)進(jìn)行總結(jié)的最重要的階段。
1.5編寫(xiě)測(cè)試報(bào)告
一份完整的測(cè)試報(bào)告必須包括以下幾點(diǎn):(1)導(dǎo)言,即撰寫(xiě)測(cè)試報(bào)告的目的以及對(duì)專(zhuān)業(yè)術(shù)語(yǔ)進(jìn)行解釋?zhuān)⒏綆⒖假Y料;(2)測(cè)試摘要,即描述項(xiàng)目背景、測(cè)試時(shí)間、測(cè)試地點(diǎn)和測(cè)試人員;(3)測(cè)試內(nèi)容及實(shí)現(xiàn),即描述模塊的測(cè)試版本、測(cè)試類(lèi)型,利用覆蓋方法設(shè)計(jì)測(cè)試用例。根據(jù)測(cè)試用例的測(cè)試結(jié)果進(jìn)行評(píng)估,并提出建議,以提高測(cè)試執(zhí)行效率,為后續(xù)測(cè)試執(zhí)行活動(dòng)提供參考;(4)統(tǒng)計(jì)與分析“缺陷”,即統(tǒng)計(jì)本次測(cè)試中發(fā)現(xiàn)的“缺陷”數(shù)量和類(lèi)型,分析“缺陷”產(chǎn)生的原因并提出避免“缺陷”的建議,記錄剩余“缺陷”和未解決的問(wèn)題;(5)測(cè)試結(jié)論及建議,即從需求合規(guī)性、功能正確性、性能指標(biāo)等維度對(duì)版本質(zhì)量進(jìn)行全面評(píng)估,并給出具體結(jié)論。
需注意的是,檢測(cè)報(bào)告中的數(shù)據(jù)是真實(shí)的,每一個(gè)結(jié)論都應(yīng)該基于評(píng)估而得出,而不是主觀(guān)的。
2軟件測(cè)試功能之測(cè)試應(yīng)用實(shí)戰(zhàn)
2.1分析測(cè)試需求
如圖1 所示,本文以“滴滴青桔”APP 的開(kāi)鎖用車(chē)業(yè)務(wù)流程為例,對(duì)軟件測(cè)試需求進(jìn)行分析。
針對(duì)“滴滴青桔”APP 的用車(chē)功能,我們需要測(cè)試三個(gè)內(nèi)容:(1)掃描二維碼開(kāi)鎖;(2)輸入車(chē)輛編號(hào)開(kāi)鎖;(3)調(diào)取手機(jī)手電筒。
2.2制定測(cè)試計(jì)劃
“滴滴青桔”APP 的功能測(cè)試計(jì)劃如表1 所示。
2.3設(shè)計(jì)測(cè)試用例
我們利用黑盒測(cè)試技術(shù)中的等價(jià)劃分法,設(shè)計(jì)了“分析+設(shè)計(jì)”的測(cè)試用例表(表2)。具體為:白天需掃描二維碼解鎖、手動(dòng)輸入車(chē)號(hào)解鎖;夜晚需掃描二維碼及打開(kāi)手電筒解鎖、手動(dòng)輸入車(chē)號(hào)解鎖。其中,需要注意“滴滴青桔”APP 開(kāi)鎖模塊與其他模塊的關(guān)聯(lián)。開(kāi)鎖時(shí),如果有正在運(yùn)行的訂單或未支付的訂單,則無(wú)法開(kāi)鎖。
2.4測(cè)試執(zhí)行
測(cè)試人員執(zhí)行測(cè)試用例并記錄和跟蹤測(cè)試過(guò)程。在測(cè)試中,若發(fā)現(xiàn)“缺陷”需將其分類(lèi)至“缺陷報(bào)告”,如表3 所示。
2.5測(cè)試結(jié)果
“滴滴青桔”APP 功能測(cè)試的結(jié)果是:在夜晚掃碼開(kāi)鎖時(shí),該版本無(wú)法啟動(dòng)手電筒功能,導(dǎo)致掃碼不成功而無(wú)法完成開(kāi)鎖。其屬于功能類(lèi)型“缺陷”,測(cè)試用例發(fā)現(xiàn)APP 中的錯(cuò)誤是執(zhí)行程序的過(guò)程。我們選擇了軟件測(cè)試中黑盒測(cè)試技術(shù)的等效分類(lèi)方法來(lái)設(shè)計(jì)測(cè)試用例,并將測(cè)試時(shí)間分為兩類(lèi),即白天測(cè)試和夜晚測(cè)試。參考資料為《軟件測(cè)試技術(shù)基礎(chǔ)課程》(“十三五”職業(yè)教育國(guó)家規(guī)劃教材)。
3軟件測(cè)試之功能測(cè)試應(yīng)用策略分析
根據(jù)測(cè)試的通過(guò)條件,本項(xiàng)目全面覆蓋了測(cè)試用例執(zhí)行過(guò)程。由于本次測(cè)試活動(dòng)是在冬季進(jìn)行的,可能并不完全具備代表性,所以建議下次測(cè)試活動(dòng)在春節(jié)或夏季進(jìn)行。此測(cè)試將作為后續(xù)測(cè)試活動(dòng)的參考。在該測(cè)試中,我們僅發(fā)現(xiàn)一個(gè)“缺陷”。該“缺陷”屬于功能性“缺陷”,即“缺陷”源于“滴滴青桔”APP 的解鎖功能與手電筒功能不兼容,建議更換其他型號(hào)的手機(jī)進(jìn)行測(cè)試。
4結(jié)語(yǔ)
測(cè)試報(bào)告中的數(shù)據(jù)真實(shí)有效,每一個(gè)結(jié)論都有依據(jù);本項(xiàng)目可以滿(mǎn)足客戶(hù)和市場(chǎng)的需求;所有的測(cè)試用例都已經(jīng)被評(píng)審并成功執(zhí)行;測(cè)試覆蓋率達(dá)到要求;所有“缺陷”都記錄在“缺陷管理”系統(tǒng)中。