利用Python對Jira缺陷進行管理操作


轉自:51testing

 1.1、概要

  本文主要內容是教大家學習如何利用Python對Jira缺陷進行管理操作。

  在平時的測試中,大家對於缺陷管理平台一定不陌生,平時的缺陷都要去平台進行操作。今天我們就來看看Python是怎么樣連接Jira進行操作的。

  1.2、獲取JIRA數據

  某天領導要看XX項目的目前缺陷情況,總共有多少bug,多少未處理的,未處理的bug中嚴重程度是怎么樣的,這些bug都屬於誰來負責修改等。這一串問題足以把任何一個測試人員擊垮,如果平時不做准備的話。

  如果你有一個定期統計缺陷信息的習慣的話,我相信你會很淡定的把結果展示給你的領導,像下圖這樣。

  圖表中的數據應該全部來源於缺陷管理平台,如果平時有一個定期統計信息的習慣的話,那么你會很清楚的掌握目前項目的缺陷情況。今天我們重點不是將如何做好項目缺陷的統計,但是自動化的獲取這些平台缺陷的信息的目的就是為了這些數據。

  首先Python操作Jira平台只需要利用Jira庫就可以了,安裝也很簡單

  控制台輸入:pip install jira

  當安裝好jira庫后,我們就可以連接Jira平台了,先來一個簡單的腳本:連接Jira並獲取當前平台所有的項目。

  from jira import JIRA

  jr=JIRA('http://jira地址',basic_auth=('登錄名','密碼'))

  #連接jira

  print u'當前登錄用戶 :'+jr.user(jr.current_user())

  #打印當前用戶,通過jr.user(用戶名)獲取用戶名稱

  print datetime.datetime.now().strftime('%Y年%m月%d日')

  print '============================================'

  for i in jr.projects():#jr.projects()獲取所有項目,返回項目字典

  print i,i.name

  輸出結果:

  好了,第一步通過jr.projects獲取到項目名稱后,我們就可以獲取該項目下的具體缺陷信息了。獲取項目下缺陷用到search_issues('project=項目name')方法,具體寫法:

  issue=jr.search_issues('project=APPBUG')

  for i in iss:

  print i,i.id

  issue返回的是項目下缺陷的list,其中包含每條缺陷的key,id值。當然我們獲取這個列表的長度就是項目目前缺陷總數了。我們看看返回結果:

  緊接着就是獲取某條缺陷的具體信息了,像我們平時錄入缺陷所要填的信息,比如:缺陷等級,缺陷狀態,缺陷類型,創建時間,缺陷概要,缺陷內容,缺陷創建人,缺陷指派人,附件,備注等等信息。我們通過上面獲取到的缺陷key值來獲取具體的缺陷上,腳本里這樣寫:

  isss=jr.issue('APPBUG-486')

  #傳入具體缺陷的key值

  print isss.fields.issuetype

  #打印缺陷的類型,類型根據自己jira平台設置的類型而定,如缺陷,改進等

  print isss.fields. summar

  #打印缺陷的主題即標題內容

  print isss.fields.description

  #打印缺陷的描述即具體內容

  print isss.fields. status

  #打印缺陷的當前狀態,如:已解決,關閉

  print isss.fields. resolution

  #打印缺陷的解決結果,此處是開發人員填寫

  print isss.fields. priority

  #打印缺陷的優先級,如:嚴重,重要,輕微等

  print isss.fields. reporter

  #打印缺陷的創建人名稱

  print isss.fields. assignee

  #打印缺陷的指派人名稱

  print isss.fields. created

  #打印缺陷的創建日期

  print isss.fields.updated

  #打印缺陷的修改日期

  print '%s'%isss.fields.comment.comments

  #打印缺陷的備注信息

  print isss.fields.attachment

  #打印缺陷的附件信息

  print '%s'%isss.fields.components

  #打印缺陷的所屬模塊信息

  print isss.fields.environment

  #打印缺陷的環境信息

  基本上以上這些缺陷信息都是一個缺陷的必備內容了。此時我們就可以做進一步的開發了,比如獲取項目中各種狀態的缺陷數,利用isss.fields. status獲取項目缺陷的狀態分別統計個數,如果加上isss.fields. priority優先級判斷,可以統計對應的狀態的缺陷優先級個數。如下圖


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM