JIRA是一個(gè)流行的產(chǎn)品,除了其自身功能強(qiáng)伶唯,可擴(kuò)展性好以外觉既,JIRA還擁有一個(gè)龐大的生態(tài)圈。擁有眾多的插件開(kāi)發(fā)商乳幸、合作伙伴和用戶(hù)瞪讼。
從產(chǎn)品層面看,JIRA產(chǎn)品具備很強(qiáng)的擴(kuò)展能力粹断,例如對(duì)于問(wèn)題單類(lèi)型符欠、流程、表單瓶埋、字段希柿,報(bào)表,通知养筒,權(quán)限配置都是可以定制的曾撤,而且還內(nèi)置或者可以定制很多模板(Schemes)方便擴(kuò)展。
另外JIRA產(chǎn)品擁有支持Add-On(插件)的能力晕粪,圍繞Add-On能力Atlassian公司做了一個(gè)App市場(chǎng)挤悉,各種外圍合作方和供應(yīng)商可以通過(guò)App市場(chǎng)把他們開(kāi)發(fā)的第三方的插件開(kāi)放給所有JIRA產(chǎn)品的客戶(hù)購(gòu)買(mǎi)和使用。另外JIRA產(chǎn)品相關(guān)的相關(guān)的各種培訓(xùn)和論壇也都非澄紫妫活躍装悲。這些反過(guò)來(lái)也讓這個(gè)產(chǎn)品更受歡迎昏鹃。
Xray就是眾多這些插件應(yīng)用中的一個(gè),Xray是一個(gè)叫xpand的英國(guó)公司開(kāi)發(fā)的插件衅斩。據(jù)說(shuō)就個(gè)插件已經(jīng)在60多個(gè)國(guó)家被1K多的客戶(hù)在使用盆顾。因?yàn)槲覀冊(cè)谥暗囊粋€(gè)項(xiàng)目上用這個(gè)工具,所有有所了解畏梆。Xray在測(cè)試管理這個(gè)領(lǐng)域比較知名您宪,下面就用這個(gè)插件為例介紹下使用JIRA+Xray如何進(jìn)行測(cè)試管理。
核心概念和模型
概念/術(shù)語(yǔ) | 問(wèn)題類(lèi)型 | 描述 | 別名 |
---|---|---|---|
Test | 測(cè)試用例 | 一個(gè)測(cè)試用例奠涌∠芫蓿可能是手工或者自動(dòng)化的測(cè)試用例,由測(cè)試步驟溜畅,行為和預(yù)期結(jié)果構(gòu)成 | test case, test scenario, test template |
Pre-Condition | 前置條件 | 測(cè)試前置條件捏卓,一個(gè)測(cè)試前置條件可以被多個(gè)測(cè)試用例所引用 | |
Test Set | 測(cè)試集合 | 一組測(cè)試用例的集合。一個(gè)測(cè)試用例可能會(huì)屬于多個(gè)測(cè)試集合慈格。 | test group, test suite |
Test Plan | 測(cè)試計(jì)劃 | 一個(gè)正式的測(cè)試計(jì)劃通常被用于為某個(gè)給定的項(xiàng)目版本執(zhí)行 | |
Test Execution | 測(cè)試執(zhí)行 | 測(cè)試執(zhí)行是一個(gè)可分配的怠晴,可規(guī)劃的任務(wù),用于給一個(gè)指定的版本執(zhí)行一個(gè)或多個(gè)測(cè)試用例浴捆,并給出結(jié)果報(bào)告 | test cycle* |
Sub-Test Execution | 子測(cè)試執(zhí)行 | 一個(gè)“子測(cè)試執(zhí)行”同“測(cè)試執(zhí)行”擁有相同的功能蒜田,不同之處在于子測(cè)試執(zhí)行是一個(gè)可以在需求上下文中創(chuàng)建的子任務(wù)。在需求單的界面創(chuàng)建一個(gè)測(cè)試執(zhí)行可以讓用戶(hù)有能力在敏捷看板中跟蹤執(zhí)行的進(jìn)展选泻。 | |
test run | - | 測(cè)試運(yùn)行冲粤。一個(gè)測(cè)試運(yùn)行的實(shí)例包括執(zhí)行的狀態(tài)和執(zhí)行規(guī)格的快照。當(dāng)給一個(gè)測(cè)試執(zhí)行增加一個(gè)測(cè)試用例后页眯,一個(gè)測(cè)試運(yùn)行會(huì)在測(cè)試執(zhí)行的上線(xiàn)文中被內(nèi)建出來(lái)梯捕。一個(gè)測(cè)試用例可能會(huì)擁有多個(gè)測(cè)試運(yùn)行。 | |
test status | - | 測(cè)試狀態(tài)窝撵。大部分情況下傀顾,是一種測(cè)試運(yùn)行的狀態(tài)的速記。Xray提供了一個(gè)定制化的估算狀態(tài)“TestRunStatus”碌奉,這個(gè)狀態(tài)根據(jù)不同的規(guī)則可以被用于查詢(xún)等多個(gè)場(chǎng)景中短曾。 | .. |
requirement | Story, Requirement, .... | 需求是你希望從系統(tǒng)獲得的東西,或者叫特性道批。一個(gè)好的需求應(yīng)該解釋系統(tǒng)是如何實(shí)現(xiàn)來(lái)達(dá)到目標(biāo)的错英。 | |
test repository | - | 測(cè)試庫(kù)是在一個(gè)項(xiàng)目中所有的測(cè)試用例集合入撒。在Xray中, 測(cè)試庫(kù)只是測(cè)試問(wèn)題單的簡(jiǎn)單組合隆豹。 | |
test strategy | - | 測(cè)試策略描述了哪些需求需要驗(yàn)證,怎么驗(yàn)證茅逮,手工還是自動(dòng)方式璃赡,以及測(cè)試資源分配等主題 | |
testing lifecycle | - | 根據(jù)需求規(guī)格和修訂結(jié)果判哥,測(cè)試生命周期會(huì)涉及到測(cè)試計(jì)劃,測(cè)試設(shè)計(jì)碉考,測(cè)試執(zhí)行和測(cè)試報(bào)告塌计。 |
項(xiàng)目可以包括多個(gè)版本,每一個(gè)版本可以包括一個(gè)或多個(gè)需求侯谁,一個(gè)需求可能包括一或多個(gè)測(cè)試用例锌仅。實(shí)際上,一個(gè)需求甚至可以包括測(cè)試集合墙贱。測(cè)試計(jì)劃包括那些需要被跟蹤的測(cè)試用例热芹。測(cè)試執(zhí)行包括那些希望被執(zhí)行的測(cè)試用例。一個(gè)測(cè)試用例可以被包括在多個(gè)測(cè)試集合中惨撇,可以被多個(gè)測(cè)試計(jì)劃所使用伊脓,也可以被多個(gè)測(cè)試執(zhí)行所執(zhí)行。一個(gè)測(cè)試用例可以包括一或多個(gè)前置條件魁衙,一個(gè)前置條件也可以被多個(gè)測(cè)試用例所引用报腔。每次一個(gè)測(cè)試用例在測(cè)試執(zhí)行中被執(zhí)行后,一個(gè)測(cè)試運(yùn)行(Test Run)就會(huì)被創(chuàng)建剖淀。
測(cè)試流程
通常一個(gè)典型的測(cè)試生命周期如下纯蛾,在Xray基本都可以找到對(duì)應(yīng)的映射實(shí)體:每一個(gè)階段的測(cè)試一般都包括計(jì)劃,設(shè)計(jì)祷蝌,執(zhí)行和報(bào)告四個(gè)主要過(guò)程茅撞,Xray中可以通過(guò)創(chuàng)建特定的問(wèn)題單來(lái)對(duì)應(yīng)以上步驟。
- 計(jì)劃階段: “Test Plan”問(wèn)題單
- 設(shè)計(jì)階段: 通過(guò)創(chuàng)建“Pre-Condition”問(wèn)題單和“Test”問(wèn)題單(測(cè)試用例)解決. 另外還可以通過(guò)測(cè)試集合來(lái)組織這些測(cè)試用例巨朦。
- 執(zhí)行階段: Test Execution問(wèn)題單
- 報(bào)告階段: 通過(guò)使用JIRA內(nèi)置工具米丘,通過(guò)測(cè)試執(zhí)行問(wèn)題單可以產(chǎn)生需求覆蓋率及一些其它測(cè)試報(bào)告數(shù)據(jù)。
需求和測(cè)試用例關(guān)系
通常在使用一個(gè)Xray的測(cè)試項(xiàng)目之前糊啡,最好先創(chuàng)建一個(gè)需求相關(guān)的項(xiàng)目拄查,這樣通過(guò)和需求項(xiàng)目的關(guān)聯(lián),我們可以很容易知道測(cè)試的覆蓋率棚蓄。
使用JIRA內(nèi)置的Link類(lèi)型科平,可以把需求和測(cè)試用例鏈接起來(lái)褥紫,以上圖為例:
- 需求R "is tested by" 測(cè)試用例T (或者測(cè)試集合TS)
- 測(cè)試用例T (或者測(cè)試集合TS) "tests"需求R
- 缺陷D "is created by" 測(cè)試用例T
- 缺陷D "is tested by" 測(cè)試用例T (或者測(cè)試集合TS)
- 測(cè)試用例T "created" 缺陷D
- 測(cè)試用例T (或者測(cè)試集合TS) "tests" 缺陷D
如何使用Xray(操作介紹)
安裝Xray也很簡(jiǎn)單,通過(guò)JIRA內(nèi)置的Add-On市場(chǎng)找到Xray瞪慧,選擇安裝即可髓考,可以試用一個(gè)月,喜歡就可以直接購(gòu)買(mǎi)了弃酌。下面介紹下如何試用Xray一步步來(lái)做一個(gè)UAT測(cè)試的項(xiàng)目氨菇。
-
使用Xray的Template創(chuàng)建一個(gè)測(cè)試項(xiàng)目,創(chuàng)建完成后妓湘,會(huì)自動(dòng)用于Xray自帶的問(wèn)題單類(lèi)型门驾,流程,表單和字段設(shè)置Xray Test Project
-
完成測(cè)試項(xiàng)目創(chuàng)建后多柑,就可以直接開(kāi)始使用系統(tǒng)了奶是,可以創(chuàng)建一個(gè)測(cè)試用例試試看。Create a test
-
為需求單關(guān)聯(lián)一個(gè)測(cè)試用例竣灌,打開(kāi)需求單聂沙,點(diǎn)擊More,選擇Link初嘹,選擇測(cè)試用例即可及汉。Add a link
-
為缺陷單關(guān)聯(lián)一個(gè)測(cè)試用例,同樣的方法屯烦,如果需要為一個(gè)缺陷單關(guān)聯(lián)一個(gè)測(cè)試用例坷随,選擇link,選擇created by或者tested by選項(xiàng)驻龟,既可把缺陷單和測(cè)試用例關(guān)聯(lián)起來(lái)柏蘑。Link defect with test
-
執(zhí)行一個(gè)測(cè)試階段罚舱,首先去創(chuàng)建一個(gè)測(cè)試計(jì)劃,然后把需要測(cè)試的測(cè)試用例掛入測(cè)試計(jì)劃中去,接下來(lái)可以創(chuàng)建一到多個(gè)測(cè)試執(zhí)行延刘,測(cè)試過(guò)程如果發(fā)現(xiàn)問(wèn)題可以直接創(chuàng)建故障單尖阔。一個(gè)測(cè)試用例測(cè)試失敗后寡具,可以直接在當(dāng)前測(cè)試執(zhí)行中標(biāo)識(shí)為Fail读宙,等相關(guān)故障單修復(fù)完畢后,可以再次創(chuàng)建一個(gè)新的測(cè)試執(zhí)行懈词,后一次的測(cè)試結(jié)果如果是Pass蛇耀,整個(gè)測(cè)試用例的狀態(tài)也會(huì)被標(biāo)明為Pass。在下面這個(gè)例子中坎弯,一個(gè)測(cè)試計(jì)劃包括一個(gè)測(cè)試用例纺涤,這個(gè)測(cè)試用例產(chǎn)生了兩個(gè)測(cè)試執(zhí)行躁倒,第一次執(zhí)行失敗后創(chuàng)建了一種故障單,第二次執(zhí)行成功洒琢。Test samples
-
最后就是測(cè)試報(bào)告。這個(gè)通過(guò)JIRA內(nèi)置工具可以很方便的統(tǒng)計(jì)測(cè)試覆蓋率褐桌,如下:Overall Coverage requirements chartTest Plans Report
結(jié)語(yǔ)
總體而言衰抑,Xray是一種非常簡(jiǎn)單易用的插件產(chǎn)品。系統(tǒng)設(shè)計(jì)的思路很貼近業(yè)界最新的測(cè)試?yán)碚摵蛯?shí)踐荧嵌,例如自動(dòng)化測(cè)試的設(shè)計(jì)呛踊,支持敏捷/看板的實(shí)踐,另外可以很容易對(duì)接需求用例以及外圍系統(tǒng)啦撮。
在我們的一個(gè)項(xiàng)目中谭网,Xray被用于了UAT的測(cè)試過(guò)程,整個(gè)測(cè)試過(guò)程采用敏捷研發(fā)的方式赃春,系統(tǒng)按照產(chǎn)品分多個(gè)團(tuán)隊(duì)愉择,每個(gè)團(tuán)隊(duì)每?jī)芍芤粋€(gè)迭代,每個(gè)迭代一個(gè)測(cè)試計(jì)劃织中,每個(gè)測(cè)試計(jì)劃包括若干測(cè)試用例锥涕,每個(gè)迭代失敗的用例放入下一個(gè)迭代繼續(xù)測(cè)試。
測(cè)試用例結(jié)構(gòu)上分為Epic->Story->Test Case狭吼,其中Epic和Story來(lái)自需求和HLD层坠,Test case需要覆蓋所有Story。在用例執(zhí)行層面有Sprint-> Test Plan -> Test Execution刁笙,用以管理所有用例的執(zhí)行計(jì)劃和執(zhí)行結(jié)果破花。
整個(gè)使用過(guò)程很流暢,系統(tǒng)的概念清晰疲吸,內(nèi)置了流行的測(cè)試方法論座每,系統(tǒng)可擴(kuò)展性比較強(qiáng),另外JIRA內(nèi)置的強(qiáng)大JQL查詢(xún)能力和Dashboard的定制能力也讓人印象深刻摘悴。個(gè)人覺(jué)得Xray+JIRA是值得推薦的測(cè)試管理工具尺栖。