python 月报_python实践--月报分析之获取jira缺陷数据
首先安裝jira,同其他第三方庫(kù),直接可以 easy_install jira。
判斷jira是否按轉(zhuǎn)成功輸入:from jira import JIRA,如果沒(méi)有報(bào)錯(cuò)則說(shuō)明安裝成功;
#連接jira
jira = JIRA(“http://jira地址”,basic_auth = (“用戶(hù)名”,”密碼”))
#獲取當(dāng)前用戶(hù)
print u'當(dāng)前登錄用戶(hù):'+jira.user(jira.current_user())
#獲取當(dāng)前用戶(hù)所有項(xiàng)目,返回項(xiàng)目字典
for j in jira.projects():
print j, j.name #打印項(xiàng)目名稱(chēng);
2. 批量獲取項(xiàng)目缺陷數(shù)據(jù)
通過(guò)jira.projects()獲取項(xiàng)目名稱(chēng)后,接下來(lái)就可以獲取各個(gè)項(xiàng)目的具體缺陷信息了,批量獲取缺陷的具體方法是jira.search_issues(sql,maxResults),具體用法如下;
issues =jira.search_issues(sql, maxResults=maxnumber)
for u in issues:
print u #打印缺陷的key值
其中sql是指統(tǒng)計(jì)缺陷數(shù)的查詢(xún)語(yǔ)句,比如統(tǒng)計(jì)2018年1月份創(chuàng)建缺陷數(shù)的語(yǔ)句為:project= 項(xiàng)目鍵值 AND issuetype =缺陷 AND created >= 2018-01-01 AND created <=2018-02-01;
maxResults參數(shù)是設(shè)置返回?cái)?shù)據(jù)的最大值,默認(rèn)是50。issues返回的是項(xiàng)目的缺陷list,包含了缺陷的key,id值,通過(guò)計(jì)算issues的個(gè)數(shù)就可以統(tǒng)計(jì)目前項(xiàng)目缺陷總數(shù)。一下是不同維度統(tǒng)計(jì)缺陷的sql。
#驗(yàn)證缺陷
project =項(xiàng)目鍵值A(chǔ)ND issuetype = 缺陷 AND ( status changed FROM 待驗(yàn)證TO 關(guān)閉OR status changed FROM 待驗(yàn)證TO 待修復(fù) OR status changed FROM 待驗(yàn)證TO 待討論) AND 驗(yàn)證時(shí)間>=2018-01-01 AND 驗(yàn)證時(shí)間<=2018-02-01;
#打回缺陷
project =項(xiàng)目鍵值issuetype = 缺陷 AND ( status changed FROM 待驗(yàn)證TO 待修復(fù) OR (status changed FROM 待驗(yàn)證TO 待討論AND status changed FROM 待討論TO 待修復(fù))) AND 驗(yàn)證時(shí)間>=2018-01-01 AND 驗(yàn)證時(shí)間<=2018-02-01;
#未修復(fù)缺陷
project = AND issuetype =缺陷 AND status in (待修復(fù), 待討論) AND created <= 2018-01-01 AND created <= 2018-02-01;
3.獲取缺陷詳細(xì)信息
獲取jiar統(tǒng)計(jì)信息后,下一步就是得到每個(gè)缺陷的具體信息,比如摘要、重現(xiàn)步驟、解決方法、修復(fù)細(xì)節(jié),提出人員,提出版本等詳細(xì)信息。部分常用方法如下,更多方法可參看API說(shuō)明文檔http://jira.readthedocs.io/en/master/api.html。
#傳入具體的缺陷key值;
isss=jira.issue('APPBUG-486')
#獲取缺陷類(lèi)型,如缺陷,線上問(wèn)題、改進(jìn)等
print isss.fields.issuetype
#獲取缺陷的主題描述
print isss.fields.summary
#獲取缺陷的具體描述內(nèi)容
print isss.fields.deion
#獲取缺陷的狀態(tài)
print isss.fields. status
#獲取缺陷的解決結(jié)果
print isss.fields. resolution
#獲取缺陷的優(yōu)先級(jí)
print isss.fields. priority
由于jira具有可擴(kuò)展性,自定義字段。不同的項(xiàng)目組會(huì)根據(jù)需求去添加字段,那么如何去獲取自定義字段的內(nèi)容,具體方法如下;
首先,要獲取自定義字段的id號(hào)。
field= jira.fields()
foritem infield:
printjson.dumps(item,ensure_ascii=False)#批量打印字典內(nèi)容
然后,通過(guò)字段id號(hào)去獲取內(nèi)容;
isss=jira.issue('APPBUG-486',fields='summary,deio,customfield_10216,customfield_10309,customfield_10428')
print isss.fields.customfield_10216#獲取自定義字段的內(nèi)容
通過(guò)對(duì)項(xiàng)目缺陷統(tǒng)計(jì),可以統(tǒng)計(jì)開(kāi)發(fā)人員的人均缺陷數(shù),容易發(fā)現(xiàn)缺陷率、嚴(yán)重缺陷率、缺陷打回率、缺陷驗(yàn)證率、不規(guī)范缺陷數(shù)等等。通過(guò)這些數(shù)據(jù)可以量化的去評(píng)估開(kāi)發(fā)和測(cè)試的工作量,同時(shí)可以間接的反應(yīng)項(xiàng)目的質(zhì)量情況。
以上就是用python獲取jira信息的所有內(nèi)容,如果你的團(tuán)隊(duì)也在用jira,快用python自己寫(xiě)個(gè)統(tǒng)計(jì)腳本,看看你的項(xiàng)目數(shù)據(jù)吧,最后歡迎大家在飛測(cè)這個(gè)平臺(tái)來(lái)交流學(xué)習(xí) ,進(jìn)步!
總結(jié)
以上是生活随笔為你收集整理的python 月报_python实践--月报分析之获取jira缺陷数据的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 魅族Flyme5.x以上系统INSTAL
- 下一篇: php源码自动识别文本中的链接,自动加载