函數(shù):為什么它們很酷?
在 JIRA 中,字段存貯了與問題相關的數(shù)據(jù)。問題字段包含了:優(yōu)先性、問題關鍵、問題詳情等。函數(shù)本身有很多強大的功能,可以包含很多復雜的邏輯,但是這些復雜邏輯可以通過簡單的方式表達出來。函數(shù)可以有選擇地接收輸入內容,并返回結果。比如,JIRA支持一個叫做membersof()的函數(shù),如果用戶是小組的一部分將會返回True,反之返回False。 ?
project = pwc AND assignee in membersof(‘test-engineering’)
該查詢將返回所有分配給測試工程師(test-engineering)的問題。你可以在JIRA里重新定義“組”,也可以使用公司已有的目錄服 務器里的“組”。函數(shù)功能很強大是因為它們可以動態(tài)反映環(huán)境的變化。如果用戶被加入了測試工程師小組,查詢就會自動更新這個信息。這比使 用?assignee in (user1, user2, user3)更加的靈活。讓我們來看看自上次發(fā)布之后新更新的是什么內容。
project = PWC AND assignee = jsmith
這將返回所有在特定版本中解決的問題。如果我們想要一個清單,它每次運行都顯示自上次發(fā)布之后所有解決的問題,我們該怎么做呢?下面這個函數(shù)可以很簡單地解決這個問題。
status in (resolved, closed) and fixVersion = latestReleasedVersion(PWC)
上面2個函數(shù)有什么區(qū)別呢?最終開發(fā)團隊將會涵蓋B,C,D這些sprint,第一個查詢語句只能返回在A sprint解決的問題,第二個查詢語句能得到PWC這個項目中的最新發(fā)布版本。當B,C,D s print發(fā)布之后,這個查詢條件將會把這些新的數(shù)據(jù)進行更新。是不是很酷呢?
? ?更新歷史:之后發(fā)生了什么?
? ?? ?JIRA5 JQL的語言邁進了一大步。在的一個問題的生命周期中,有兩種類型的數(shù)據(jù)能推動項目的發(fā)展。我們之前討論的所有查詢語句,得到的數(shù)據(jù)反饋的都是當前運行時 間下的結果,在下面的圖表里面我們可以看到一些歷史問題的狀態(tài),他們能帶給我們一些有意思的數(shù)據(jù)信息。JIRA可以存儲問題生命周期中的每一步變化,也就 是我們所說的“一個問題的歷史記錄”。
如果你想看到在項目PWC中所有分配給John Smith的問題,一個簡單的查詢語句就可以幫你找到相關的信息:
status in (resolved, closed) and fixVersion = latestReleasedVersion(PWC)
使用JIRA5的JQL,我們可以查詢一個問題的歷史記錄。我們從而可以使用JQL來看我們的項目的修改歷史。比如,如果我們想看在PWC項目中John Smith解決的bug,我們可以使用JQL進行如下的查詢:
project = PWC AND status CHANGED FROM “In Progress” TO “Resolved” BY jsmith
有的時候,審核失敗或重新開放的問題可以告訴我們?yōu)槭裁磫栴}沒有達到既定目標,我們可以使用這個查詢語句來找到這些bug:
status CHANGED FROM “In Progress” TO “Open”
想找到這星期正在進行中的問題,我們可以使用如下的JQL:
status was (“In Progress”) DURING (startofweek(), endofweek());
年末時查看一年中你解決了多少問題,我們只需要一點點JQL:
resolution changed to “Fixed” by currentUser() during (startOfYear(), endOfYear())
劃定范圍和排序:你可以的!
時間很寶貴,JQL真正的能力是幫助你縮小搜索范圍,可以幫助你在項目中做出正確的選擇。搜索一個重要的部分就是要知道怎么從JIRA得到你想要的數(shù)據(jù),而另一個部分就是怎么用搜索結果幫助你和你的客戶。讓我們首先介紹兩個表現(xiàn)數(shù)據(jù)的重要概念。
范圍界定 —— 聚焦查詢,得到恰當數(shù)額的數(shù)據(jù),使用戶只看到和目前的項目有關的信息。
排序 —— 按照關鍵度排列數(shù)據(jù),最重要的放在最前面。
范圍界定
讓我們看下面這個形象圖,它代表從JIRA中的到的一系列問題。
當你剛開始進行 JIRA 搜索的時候,非常容易得到太多的數(shù)據(jù)結果。上面這個例子左右兩個圖有相同數(shù)量的我們關注的問題(問題A),但是第一個圖不夠 具體。在現(xiàn)實生活中,開發(fā)經(jīng)理總是需要在他們的項目中找到有風險的部分,一個好的搜索語句能夠不斷優(yōu)化結果,讓我們找找我們的項目PWC中的有風險的區(qū) 域。
從開放的問題開始:
project = pwc AND status = open
我們發(fā)現(xiàn),該查詢返回的問題太多,因為它包括了積壓的問題和正在進行的問題。我們可以縮小一下范圍,排除積壓問題。
project = pwc AND status = open AND fixVersion = “Current Sprint”
這樣的結果是更好的,但我真的很想知道,哪些問題是上一個sprint沒完成擠到這個sprint的。
project = pwc AND status = open AND fixVersion = “Current Sprint” AND fixVersion WAS “Last Sprint”
現(xiàn)在我非常關心的問題出現(xiàn)了,我可以查看重點的問題,了解為什么他們在上一個sprint沒有被完成。是因為估計不當、要求改變還是別的問題。這些 問題出現(xiàn)在第一個搜索語句,但是對我來講手動查詢太麻煩了。一個好的搜索語句是一個互動的過程:查詢,檢查,看你是不是能找到結果的重點。你做的越多,得 到準確的結果就越簡單。
排序
讓我們再看一看JIRA返回的問題。這一次我們的問題范圍是恰當劃分的。
這兩個圖有相同數(shù)量的問題。按照剛才我們給出的指南,很容易得到正確數(shù)量的問題。數(shù)據(jù)對你來說越容易理解,做出下一步的決定和行動就越高效。如果我們想看到在某一sprint團隊需要解決的所有bug,我們應該使用下面的搜索語句:
project = pwc AND fixVersion = “Current Sprint” AND status = open
我們試圖從這些數(shù)據(jù)中搜集什么? 如果我們想確保團隊或者工程師的任務適當?shù)娜蝿諗?shù)量,我們可能希望看到按優(yōu)先級和工程師責任人排序的列表,這樣我們可以簡單地知道一個工程師是不是有兩個高優(yōu)先性的bug 。JQL有一個叫做ORDERBY的關鍵詞,可以讓JIRA自動排序結果。下面的這個搜索語句可以在原來的基礎上增加排序的內容:
project = pwc AND fixVersion = “Current Sprint” AND status = open ORDER BY priority, assignee
JIRA會在同等優(yōu)先性的問題中首先按照有限性,然后按照被分配人進行排序。讓我們舉另一個例子,在這里我們想看看項目中現(xiàn)有的bug。我們想看那些最近產(chǎn)生的critical或者blocking的bug,從而知道最近的代碼檢查的穩(wěn)定性是不是降低了。
project = pwc AND priority in (blocker, critical) AND created > -2w ORDER BY created DESC
檢索可以控制優(yōu)先性,限定創(chuàng)建時間等條件,我們只關心最近發(fā)生的重要問題,排序可以最先顯示最重要的問題。我們使用DESC這個關鍵詞來從最新到最 舊進行篩選。這樣的話我們就能首先關注到最重要的事情。并不是每個人都有時間看你報告的全部內容,所以你應該每次給你的搜索排序,首先顯示最重要的問題。
點擊查看更多
>>
JIRA
中文資源
?
更多文章、技術交流、商務合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
