環(huán)境:python2.7?
1、安裝jira庫(kù)
pip install jira
2、python連接jira服務(wù)器
#coding: UTF-8
from jira import JIRA
username = raw_input('請(qǐng)輸入用戶名: ')
password = raw_input('輸入密碼: ')
options = {
'verify': False,
'server': 'https://jira.XXXXXXX.com'}
jira = JIRA(options, basic_auth=(username, password))
3、查詢issue
Jira 通過(guò)?JQL(JIRA Query Language,Jira 查詢語(yǔ)言)進(jìn)行搜索,語(yǔ)法類似于 SQL。可以通過(guò) JQL 搜索符合條件的 issues,如通過(guò)?
assignee = currentUser()
?查找經(jīng)辦人為當(dāng)前用戶的 issues。
def searchIssues(jql, max_results=100):
''' Search issues
@param jql: JQL, str
@param max_results: max results, int, default 100
@return issues: result, list
'''
try:
issues = jira.search_issues(jql, maxResults=max_results)
return issues
except Exception as e:
print(e)
jql = '''
assignee = currentUser()
'''
issues = searchIssues(jql)
for issue in issues:
print('{0}: {1}'.format(issue.key, issue.fields.summary))
4、獲取jira待修復(fù)缺陷數(shù)據(jù)
issues = jira.search_issues('project = XXX AND status = 待修復(fù)', maxResults=1000,
fields='assignee,summary,customfield_10121')
# 獲取缺陷信息
for u in issues:
# print u #打印缺陷的key值
issue = jira.issue(u) # 根據(jù)key獲取缺陷
ass = issue.fields.assignee # 獲取缺陷經(jīng)辦人
print ass
sec = issue.fields.customfield_10121 # 獲取缺陷嚴(yán)重性
print sec
sum = issue.fields.summary # 獲取缺陷摘要
print sum
獲取的待修復(fù)缺陷數(shù)據(jù)可以保存到excel文件中
#coding: UTF-8
from jira import JIRA
import xlwt
import os
path=os.getcwd()
#輸入jira賬號(hào)和密碼
def input_user():
# 主流程開(kāi)始
username = raw_input('請(qǐng)輸入用戶名: ')
password = raw_input('輸入密碼: ')
if (username == '' or password == ''):
print('用戶名和密碼不能為空')
exit
return username,password
#########################獲取jira待修復(fù)缺陷數(shù)據(jù)
def jira_data_repair():
options = {
'verify': False,
'server': 'https://jira.XXXXX.com'}
jira = JIRA(options, basic_auth=(username, password))
issues = jira.search_issues('project = XXXXX AND status = 待修復(fù)', maxResults=1000,
fields='assignee,summary,customfield_10121')
# 寫(xiě)excel
workbook = xlwt.Workbook(encoding='utf-8')
worksheet = workbook.add_sheet('test')
total = 0
# 獲取缺陷信息
for u in issues:
# print u #打印缺陷的key值
issue = jira.issue(u) # 根據(jù)key獲取缺陷
ass = issue.fields.assignee # 獲取缺陷經(jīng)辦人
sec = issue.fields.customfield_10121 # 獲取缺陷嚴(yán)重性
sum = issue.fields.summary # 獲取缺陷摘要
# 寫(xiě)入內(nèi)容
worksheet.write(total, 0, str(u))
worksheet.write(total, 1, str(ass))
worksheet.write(total, 2, str(sec))
total = total + 1
# 保存excel
workbook.save(path+'/output_data\\repair.xls')
if __name__ == '__main__':
username,password=input_user()
jira_data_repair()
?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

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