王 妍
(曲阜師范大學(xué) 軟件學(xué)院,山東 曲阜273165)
軟件測(cè)試是從測(cè)試立項(xiàng)工作開(kāi)始的,然后詳擬測(cè)試計(jì)劃,分配測(cè)試任務(wù),執(zhí)行測(cè)試到測(cè)試完結(jié)生成質(zhì)量報(bào)告,這一過(guò)程稱為軟件測(cè)試過(guò)程。自動(dòng)化測(cè)試管理可以大大簡(jiǎn)化這一復(fù)雜的過(guò)程,一般需要對(duì)測(cè)試需求分析、測(cè)試計(jì)劃制定、測(cè)試設(shè)計(jì)與開(kāi)發(fā)、測(cè)試執(zhí)行與缺陷跟蹤、測(cè)試評(píng)估等5個(gè)階段進(jìn)行有效管理。對(duì)此可做研究分述如下。
測(cè)試活動(dòng)總是從研究需求分析開(kāi)始的,需求分析是開(kāi)展測(cè)試活動(dòng)的基礎(chǔ)和依據(jù),軟件需求分析可以告訴研究者需要“測(cè)什么”。測(cè)試人員需要將測(cè)試與需求對(duì)應(yīng)起來(lái),以便為之后的測(cè)試情況確定測(cè)試需求覆蓋率。測(cè)試需求分析階段要求測(cè)試人員首先要理解并重構(gòu)系統(tǒng)的業(yè)務(wù)流程;然后對(duì)系統(tǒng)的具體功能需求、性能需求以及安全性需求進(jìn)行有效分析;最后對(duì)界面的美觀性及易操作性進(jìn)行分析。
測(cè)試計(jì)劃是測(cè)試者用來(lái)執(zhí)行測(cè)試用例的依據(jù),測(cè)試計(jì)劃由測(cè)試用例組成。測(cè)試計(jì)劃要注重過(guò)程的安排,從編寫(xiě)測(cè)試計(jì)劃過(guò)渡到計(jì)劃測(cè)試任務(wù),重點(diǎn)是詳盡的計(jì)劃安排。在TestLink系統(tǒng)中,一個(gè)完整的測(cè)試計(jì)劃要包括各階段測(cè)試的名稱。
測(cè)試用例是指測(cè)試過(guò)程中為了發(fā)現(xiàn)缺陷而向系統(tǒng)提供的數(shù)據(jù)、操作及預(yù)期結(jié)果。測(cè)試用例是執(zhí)行測(cè)試的最小實(shí)體,是軟件在某個(gè)具體的測(cè)試場(chǎng)景下能夠正常執(zhí)行并達(dá)到預(yù)期結(jié)果的過(guò)程。TestLink支持2層測(cè)試用例管理:測(cè)試用例集、測(cè)試用例,另外還可以提供管理測(cè)試需求與測(cè)試用例對(duì)應(yīng)關(guān)系的功能。
執(zhí)行測(cè)試用例是為了發(fā)現(xiàn)軟件缺陷。執(zhí)行測(cè)試用例的過(guò)程,實(shí)際上是對(duì)比實(shí)際輸出結(jié)果和預(yù)期結(jié)果是否一致,凡不一致的作為軟件缺陷處理。TestLink可以集成Mantis對(duì)軟件缺陷進(jìn)行自動(dòng)化的管理,可以對(duì)大量原始測(cè)試數(shù)據(jù)進(jìn)行有效管理,另外對(duì)于發(fā)現(xiàn)的缺陷,可以實(shí)現(xiàn)跟蹤管理和監(jiān)控,直到缺陷被修改并且關(guān)閉。
測(cè)試結(jié)果分為4種情況:通過(guò)、失敗、鎖定、尚未執(zhí)行。整個(gè)測(cè)試過(guò)程結(jié)束后,可以通過(guò)測(cè)試覆蓋率、測(cè)試執(zhí)行率、測(cè)試執(zhí)行通過(guò)率、測(cè)試缺陷解決率等指標(biāo)來(lái)對(duì)測(cè)試結(jié)果進(jìn)行評(píng)估。TestLink根據(jù)測(cè)試過(guò)程中記錄的數(shù)據(jù),提供了多種度量統(tǒng)計(jì)功能,可以從測(cè)試進(jìn)度、失敗的測(cè)試用例、鎖定的測(cè)試用例及尚未執(zhí)行的測(cè)試用例等幾個(gè)方面進(jìn)行分析總結(jié)。
在TestLink系統(tǒng)中,每個(gè)用戶都可以維護(hù)自己的私有信息,初次登錄可以使用admin用戶名,然后可以創(chuàng)建新用戶。TestLink提供了6種不同的權(quán)限級(jí)別,不同的權(quán)限級(jí)別可以工作的權(quán)限不同,詳見(jiàn)表1。
TestLink可以對(duì)整個(gè)測(cè)試過(guò)程進(jìn)行合理的管理,一般從創(chuàng)建項(xiàng)目開(kāi)始,然后創(chuàng)建測(cè)試需求,創(chuàng)建測(cè)試用例,測(cè)試計(jì)劃與測(cè)試需求連接,為需求指派用例,在計(jì)劃中添加測(cè)試用例,指派分配測(cè)試任務(wù)到不同角色,執(zhí)行測(cè)試,分析測(cè)試結(jié)果。整個(gè)流程采取自上而下的順序執(zhí)行,前一步是后一步的前提,后一步是前一步的結(jié)果。
表1 TestLink用戶角色及權(quán)限Tab.1 User roles and permissions of TestLink
TestLink是一款開(kāi)源的軟件自動(dòng)化測(cè)試軟件,采用PHP開(kāi)發(fā),是一個(gè)B/S模式的測(cè)試管理平臺(tái)。該平臺(tái)可以對(duì)測(cè)試流程的各個(gè)階段進(jìn)行有效的組織和管理,包括創(chuàng)建測(cè)試腳本、制定測(cè)試計(jì)劃、執(zhí)行測(cè)試和跟蹤測(cè)試結(jié)果,還可以動(dòng)態(tài)收集和組織測(cè)試用例,根據(jù)測(cè)試用例覆蓋率和通過(guò)率產(chǎn)生測(cè)試報(bào)告及圖表。其主界面如圖1所示。
圖1 TestLink主界面Fig.1 Main interface of TestLink
該軟件的優(yōu)點(diǎn)是提供Web訪問(wèn)方式,用戶可以自定義角色,測(cè)試可以根據(jù)優(yōu)先級(jí)指派測(cè)試員,還可以自定義里程碑等等。
3.2.1 測(cè)試需求管理
在線考試系統(tǒng)是一個(gè)B/S架構(gòu)的系統(tǒng),分為前臺(tái)操作和后臺(tái)管理兩個(gè)大模塊,分析其業(yè)務(wù)流程,分為登錄驗(yàn)證、學(xué)生注冊(cè)、成績(jī)查詢、在線考試、答題、查詢成績(jī)共6個(gè)子模塊。通過(guò)TestLink的需求規(guī)約管理,建立需求規(guī)格樹(shù),如圖2所示。
圖2 TestLink需求規(guī)約樹(shù)Fig.2 Requirements specification tree of TestLink
3.2.2 測(cè)試用例管理
根據(jù)在線考試系統(tǒng)的需求規(guī)約設(shè)計(jì)測(cè)試用例,其中前臺(tái)功能測(cè)試需要3個(gè)測(cè)試用例,在線考試需要3個(gè)測(cè)試用例,后臺(tái)功能測(cè)試需要1個(gè)測(cè)試用例,創(chuàng)建好的測(cè)試用例樹(shù)如圖3所示。
圖3 測(cè)試用例樹(shù)Fig.3 Test case tree
測(cè)試用例和系統(tǒng)需求之間是n對(duì)n的關(guān)系。TestLink允許在需求和測(cè)試用例之間建立關(guān)系,一個(gè)需求可以被指派給零個(gè)或多個(gè)測(cè)試用例上,反之亦如此。
3.2.3 測(cè)試計(jì)劃管理
在TestLink中可以通過(guò)測(cè)試計(jì)劃管理對(duì)測(cè)試的過(guò)程進(jìn)行有效管理。測(cè)試計(jì)劃一般包括計(jì)劃名稱、計(jì)劃描述、計(jì)劃開(kāi)始時(shí)間、計(jì)劃預(yù)計(jì)完成時(shí)間、測(cè)試用例狀態(tài)描述、版本信息等內(nèi)容。TestLink提供了測(cè)試計(jì)劃創(chuàng)建、角色分配、測(cè)試用例分配、測(cè)試用例添加、刪除等操作。
3.2.4 測(cè)試結(jié)果分析
TestLink可以根據(jù)測(cè)試過(guò)程中記錄的數(shù)據(jù),進(jìn)行多種分析和度量,可以自動(dòng)生成測(cè)試計(jì)劃報(bào)告、測(cè)試報(bào)告、測(cè)試總體計(jì)劃進(jìn)度。通過(guò)TestLink對(duì)在線考試系統(tǒng)的測(cè)試過(guò)程進(jìn)行管理,共指派8個(gè)測(cè)試用例,測(cè)試需求覆蓋率100%,通過(guò)率74.8%,其中鎖定比例 12.6%,失敗率 12.6%。
另外,TestLink還可以生成圖表形式等比較直觀的報(bào)告,以在線考試系統(tǒng)為例,可以產(chǎn)生測(cè)試結(jié)果的餅狀圖,如圖4所示。
圖4 總體測(cè)試結(jié)果餅狀圖Fig.4 Pie chart of overall test results
由此可見(jiàn),TestLink已經(jīng)創(chuàng)造了良好的測(cè)試管理?xiàng)l件,其配置及使用都非常方便,并且是開(kāi)源的測(cè)試工具,基于B/S架構(gòu)的模式使得其操作更加靈活。但是TestLink也存在一些缺點(diǎn),比如返回需要重新鏈接,TestLink和缺陷管理工具需要手工整合等等。就測(cè)試過(guò)程的自動(dòng)化管理效果來(lái)看,TestLink可以有效管理測(cè)試過(guò)程,分角色權(quán)限管理軟件測(cè)試,是一個(gè)非常好的軟件測(cè)試管理平臺(tái)。