楊沁曉,郝小敏,嚴(yán)航
(成都久信信息技術(shù)股份有限公司,四川成都,610000)
測(cè)試用例在軟件開(kāi)發(fā)生命周期始終占據(jù)重要位置。很多因素都會(huì)影響手機(jī)軟件測(cè)試的結(jié)果,例如開(kāi)發(fā)手機(jī)軟件的復(fù)雜程度、開(kāi)發(fā)人員的編碼能力、測(cè)試人員技能、測(cè)試方法和素養(yǎng)等等。進(jìn)行測(cè)試時(shí),手機(jī)測(cè)試用例作為測(cè)試的標(biāo)準(zhǔn)和依據(jù),測(cè)試人員必須嚴(yán)格按照測(cè)試用例的操作步驟進(jìn)行測(cè)試,然后把測(cè)試結(jié)果記錄在用例管理工具中,可以手動(dòng)或自動(dòng)生成測(cè)試結(jié)果文檔,為提高和維護(hù)軟件測(cè)試質(zhì)量穩(wěn)定打下堅(jiān)實(shí)基礎(chǔ)。
完成軟件測(cè)試工作后,對(duì)軟件測(cè)試結(jié)果進(jìn)行評(píng)估,完成測(cè)試報(bào)告編寫(xiě)。判斷軟件測(cè)試是否完成、測(cè)試質(zhì)量是否達(dá)標(biāo),需要采用一些量化的結(jié)果進(jìn)行評(píng)估,例如測(cè)試用例執(zhí)行覆蓋率,測(cè)試用例通過(guò)合格率等等。采用測(cè)試用例作為度量基準(zhǔn)會(huì)更加準(zhǔn)確、有效。代碼質(zhì)量高不高,衡量的標(biāo)準(zhǔn)應(yīng)該是測(cè)試用例覆蓋率、測(cè)試用例通過(guò)率、提交軟件缺陷數(shù)決定的。
通過(guò)收集軟件缺陷,對(duì)比測(cè)試用例庫(kù)和缺陷問(wèn)題庫(kù),分析驗(yàn)證是漏測(cè)還是缺陷復(fù)現(xiàn)。漏測(cè)反映了測(cè)試用例設(shè)計(jì)的不完善和未全面覆蓋測(cè)試需求點(diǎn),每輪測(cè)試完成后,根據(jù)測(cè)試需求點(diǎn)補(bǔ)齊測(cè)試用例,測(cè)試用例執(zhí)行通過(guò)率達(dá)到測(cè)試用例通過(guò)標(biāo)準(zhǔn),不僅能提高軟件產(chǎn)品質(zhì)量,還可以保障穩(wěn)定運(yùn)行。好的測(cè)試用例會(huì)使測(cè)試成本大大降低。
測(cè)試用例設(shè)計(jì)方法包括白盒測(cè)試法和黑盒測(cè)試法兩種。
白盒測(cè)試也稱(chēng)為透明盒測(cè)試、結(jié)構(gòu)測(cè)試、邏輯驅(qū)動(dòng)測(cè)試或基于代碼的測(cè)試。不用考慮外部結(jié)構(gòu),通過(guò)檢查軟件內(nèi)部程度編碼的邏輯結(jié)構(gòu),對(duì)軟件中的邏輯路徑進(jìn)行覆蓋測(cè)試。白盒測(cè)試的主要方法包括語(yǔ)句覆蓋、判定覆蓋、條件覆蓋、判定條件覆蓋、條件組合覆蓋、路徑覆蓋。
黑盒測(cè)試也叫功能測(cè)試或數(shù)據(jù)驅(qū)動(dòng)測(cè)試,把程序看成一個(gè)不用打開(kāi)的盒子,不考慮程序的內(nèi)部結(jié)構(gòu)與特性,只需根據(jù)軟件《需求規(guī)格說(shuō)明書(shū)》設(shè)計(jì)測(cè)試用例,檢查程序功能是否正常使用。黑盒測(cè)試方法包括等價(jià)類(lèi)劃分法、邊界值分析法、正交性設(shè)計(jì)實(shí)驗(yàn)法等等。
(1)等價(jià)類(lèi)劃分法
等價(jià)類(lèi)劃分法是指某個(gè)輸入域的子集,在該輸入域子集合中,把全部輸入數(shù)據(jù)合理劃分成有效和無(wú)效若干等價(jià)類(lèi),在每個(gè)等價(jià)類(lèi)中選擇一個(gè)具有典型代表性數(shù)據(jù)作為測(cè)試用例,從而保證設(shè)計(jì)出來(lái)的測(cè)試用例具有完整性和代表性。有效等價(jià)類(lèi)是指對(duì)于程序的功能來(lái)說(shuō)是指合理、有意義的輸入數(shù)據(jù)所構(gòu)成的等價(jià)類(lèi)集合。無(wú)效等價(jià)類(lèi)是指對(duì)于程序的功能來(lái)說(shuō)不合理、無(wú)意義的輸入數(shù)據(jù)所構(gòu)成的等價(jià)類(lèi)集合。
例如:用戶(hù)密碼長(zhǎng)度6-12位,必須含有字母(不區(qū)分大小寫(xiě))、數(shù)字、下劃線(xiàn)的組合,采用等價(jià)類(lèi)劃分法設(shè)計(jì)測(cè)試用例。見(jiàn)表1。
表1 測(cè)試用例
(2)邊界值分析法
邊界值分析法就是對(duì)輸入、輸出的邊界值進(jìn)行測(cè)試用例設(shè)計(jì)的一種方法。測(cè)試過(guò)程中軟件功能出現(xiàn)大量的缺陷往往就發(fā)生在輸入輸出的邊界值上,而不是發(fā)生在輸入輸出范圍的內(nèi)部。使用邊界值分析方法設(shè)計(jì)測(cè)試用例,首選應(yīng)當(dāng)確定邊界值情況,選取等于、大于或小于邊界的值,而不是選取中間值作為測(cè)試數(shù)據(jù)。
例如備注輸入長(zhǎng)度不能超過(guò)300個(gè)字符串,采用邊界值分析法設(shè)計(jì)測(cè)試用例,見(jiàn)表2。
表2 測(cè)試用例
(3)正交實(shí)驗(yàn)設(shè)計(jì)法
正交試驗(yàn)法是研究多因素、多水平的一種試驗(yàn)法,它是利用正交表來(lái)對(duì)試驗(yàn)進(jìn)行設(shè)計(jì),通過(guò)少數(shù)的試驗(yàn)替代全面試驗(yàn),根據(jù)正交表的“均勻分散,整齊可比”的特點(diǎn),從全面試驗(yàn)(測(cè)試用例)中挑選適量的、有代表性的點(diǎn)(測(cè)試用例)進(jìn)行設(shè)計(jì)測(cè)試用例。正交表一般使用公式Ln(mk)即:L行數(shù)(水平數(shù)因子數(shù))表示,L代表是正交表符號(hào),n代表正交表行數(shù),m代表每列因素水平數(shù),K代表正交表列數(shù),且有n=k*(m-1)+1。正交試驗(yàn)法特點(diǎn)是簡(jiǎn)單易行、計(jì)算表格化,使測(cè)試人員能夠在短時(shí)間內(nèi)可以掌握的一種高效、快速、經(jīng)濟(jì)的實(shí)驗(yàn)設(shè)計(jì)方法。
隨著現(xiàn)代社會(huì)生活水平不斷提高,人們對(duì)當(dāng)下手機(jī)提出了更高的要求,希望手機(jī)軟件能夠帶來(lái)更多符合個(gè)性化的服務(wù)。對(duì)比傳統(tǒng)手機(jī),智能手機(jī)以智能化、便攜、上網(wǎng)快等特點(diǎn),可以最大滿(mǎn)足消費(fèi)者對(duì)移動(dòng)互聯(lián)網(wǎng)時(shí)代實(shí)時(shí)新聞、娛樂(lè)游戲、商務(wù)咨詢(xún)及手機(jī)服務(wù)等應(yīng)用功能的體驗(yàn)和需求。所以在設(shè)計(jì)手機(jī)軟件功能的時(shí)候,既要考慮到手機(jī)軟件在智能手機(jī)上的安裝操作兼容性,也要考慮用戶(hù)的使用習(xí)慣和體驗(yàn)感。
如果設(shè)計(jì)的測(cè)試用例顆粒度很細(xì),設(shè)計(jì)測(cè)試用例工作量會(huì)變得艱巨而繁重,雖然能在一定程度上可以降低或減少手軟件質(zhì)量風(fēng)險(xiǎn),但是會(huì)降低測(cè)試工作效率,執(zhí)行測(cè)試時(shí)缺少思考空間,導(dǎo)致測(cè)試人員反應(yīng)遲鈍且慢。測(cè)試用例設(shè)計(jì)顆粒度較粗,執(zhí)行測(cè)試任務(wù)的工作效率會(huì)較高,但是會(huì)增加軟件缺陷遺留的幾率,引起軟件質(zhì)量高風(fēng)險(xiǎn)。
用例評(píng)審由公司產(chǎn)品經(jīng)理、開(kāi)發(fā)人員、測(cè)試人員針對(duì)測(cè)試用例是否符合、覆蓋到測(cè)試需求點(diǎn)、是否能用于測(cè)試執(zhí)行而做的工作。用例評(píng)審可以避免產(chǎn)品人員、開(kāi)發(fā)人員和測(cè)試人員對(duì)測(cè)試需求理解不同而造成的誤差,測(cè)試人員設(shè)計(jì)的測(cè)試用例,經(jīng)過(guò)開(kāi)發(fā)人員和產(chǎn)品人員評(píng)審后,測(cè)試人員需要再次對(duì)測(cè)試用例進(jìn)行修改。測(cè)試人員執(zhí)行測(cè)試用例可以節(jié)約時(shí)間、人力成本,也可以提高工作效率。
執(zhí)行完一輪迭代的測(cè)試用例后,需要根據(jù)手機(jī)軟件的測(cè)試需求進(jìn)行新增、修改或刪除測(cè)試用例,至少保證下一次測(cè)試時(shí)執(zhí)行用例是完整、全面的覆蓋產(chǎn)品。在手機(jī)軟件測(cè)試過(guò)程當(dāng)中,當(dāng)發(fā)現(xiàn)一個(gè)好的測(cè)試用例,根據(jù)已發(fā)現(xiàn)的缺陷問(wèn)題,定時(shí)更新和完善測(cè)試用例,好的測(cè)試用例隨時(shí)變化,不是一成不變。只有動(dòng)態(tài)的測(cè)試用例才能跟上手機(jī)軟件需求的變更或變動(dòng),發(fā)現(xiàn)手機(jī)軟件隱藏的缺陷問(wèn)題。
軟件測(cè)試既包括手動(dòng)測(cè)試,也包括自動(dòng)化測(cè)試,二者結(jié)合使用,缺一不可。執(zhí)行功能性測(cè)試用例屬于手動(dòng)測(cè)試,執(zhí)行性能測(cè)試、安全性測(cè)試、Web頁(yè)面等測(cè)試用例屬于自動(dòng)化測(cè)試。手工和自動(dòng)化測(cè)試用例結(jié)合使用,可以提升整體測(cè)試用例的全面性,也能快速地發(fā)現(xiàn)更多軟件缺陷,進(jìn)一步提升手機(jī)軟件功能使用性、安裝兼容性、信息安全性、性能及運(yùn)行效率。
手機(jī)軟件測(cè)試用例設(shè)計(jì)不僅需要借鑒傳統(tǒng)軟件測(cè)試用例設(shè)計(jì)方法和技巧、設(shè)計(jì)思路和測(cè)試策略,還需要考慮手機(jī)在不同操作系統(tǒng)、硬件環(huán)境、手機(jī)類(lèi)型測(cè)試也不相同。所以只有設(shè)計(jì)完整、覆蓋全面的測(cè)試用例,發(fā)現(xiàn)手機(jī)軟件隱藏的缺陷,才能保證手機(jī)軟件質(zhì)量。