Python用Jira庫來操作Jira
Jira簡(jiǎn)介
Jira是一款功能非常強(qiáng)大的管理工具,廣泛的用來 缺陷跟蹤、用例管理、需求收集、任務(wù)跟蹤、工時(shí)管理、項(xiàng)目計(jì)劃管理等工作領(lǐng)域。所以使用這款產(chǎn)品的公司很多,這篇博客講述在執(zhí)行自動(dòng)化測(cè)試用例過程中,將失敗的用例自動(dòng)在jira系統(tǒng)記錄bug。
提供了完善的RESTful API,如果不想直接請(qǐng)求API接口可以使用Python的Jira庫來操作Jira。
一、安裝
# 安裝第三方j(luò)ira庫 pip install jira
二、認(rèn)證
官網(wǎng)提供了4種認(rèn)證方式:
- Cookie Based Authentication(用戶名、密碼)
- HTTP BASIC(用戶名、密碼)
- OAuth
- Kerberos
我們選取一種認(rèn)證方式即可,下文以HTTP BASIC為例:
# jira訪問地址
server = 'http://jira.xxx.com.cn'
# 用戶名密碼以元祖的方式傳遞。uesrname、passwd填寫真實(shí)的賬號(hào)密碼
jiraClinet = JIRA(server=server, basic_auth=('username', 'passwd'))
三、創(chuàng)建issue
create_issue() 單個(gè)創(chuàng)建issue,傳入?yún)?shù)是字典
create_issues() 批量創(chuàng)建issues,傳入?yún)?shù)是列表
# 創(chuàng)建單個(gè)issue
issue_dict = {
# key 是項(xiàng)目空間的關(guān)鍵字,將issue記錄到此空間
'project': {'key': 'TOC'},
'issuetype': {'name': 'Bug'},
'summary': '測(cè)試自動(dòng)提交',
'description': '描述',
'reporter': {'name': '007'},
'assignee': {'name': '008'},
# 'priority': {'id': 3},
# 'customfield_10403':{'value':'研發(fā)中心'},
# 'customfield_11349':{'value':'業(yè)務(wù)需求'}
}
# 返回 issueId
jiraClinet.create_issue(issue_dict)
#批量創(chuàng)建issues
issue_list = [{
'project': {'key': 'TOC'},
'issuetype': {'name': 'Bug'},
'summary': '測(cè)試自動(dòng)提交01',
'description': '描述01',
'reporter': {'name': '007'},
'assignee': {'name': '008'},
},
{
'project': {'key': 'TOC'},
'issuetype': {'name': 'Bug'},
'summary': '測(cè)試自動(dòng)提交02',
'description': '描述02',
'reporter': {'name': '007'},
'assignee': {'name': '008'}
}]
# 返回 issue 列表
jiraClinet.create_issues(issue_list)
四、常用方法
JIRA類提供了很多方法,這里介紹幾個(gè)常用的
1)查詢 project
# 獲取所有項(xiàng)目空間列表
jiraClinet.projects()
# 獲取單個(gè)項(xiàng)目空間。參數(shù)為項(xiàng)目空間 id或key
# project = jiraClinet.project(100)
project = jiraClinet.project('xxx')
# 項(xiàng)目的 key
project.key
# 項(xiàng)目空間的 name
project.name
# 項(xiàng)目空間 description
project.description
# 項(xiàng)目空間 lead
project.lead
2)查詢 issue
# 查詢issue信息,傳入?yún)?shù)issueId
issue = jiraClinet.issue('xxx-679')
# 問題的 key
issue.key
# 問題的 id
issue.id
# 問題的配置域
issue.fields
# 問題標(biāo)題描述
issue.fields.summary
# 問題詳細(xì)描述
issue.fields.description
# 問題的類型
issue.fields.issuetype
#問題報(bào)告者
issue.fields.reporter
3)使用“JQL語句”查詢
# search_issues() 傳參是 jira 里的JQL語句,返回一個(gè) issue 列表
issue_list = jiraClinet.search_issues('JQL語句')
for issue in issue_list:
# 打印每個(gè) issue 的 key
print(issue.key)
以上就是Python用Jira庫來操作Jira的詳細(xì)內(nèi)容,更多關(guān)于python 操作Jira的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python報(bào)錯(cuò):TypeError:?‘xxx‘?object?is?not?subscriptable解決
這篇文章主要給大家介紹了關(guān)于Python報(bào)錯(cuò):TypeError:?‘xxx‘?object?is?not?subscriptable的解決辦法,TypeError是Python中的一種錯(cuò)誤,表示操作或函數(shù)應(yīng)用于不合適類型的對(duì)象時(shí)發(fā)生,文中將解決辦法介紹的非常詳細(xì),需要的朋友可以參考下2024-08-08
淺談Python數(shù)學(xué)建模之固定費(fèi)用問題
本文主要介紹了Python固定費(fèi)用問題的建模與求解。學(xué)習(xí) PuLP工具包中處理復(fù)雜問題的快捷使用方式2021-06-06
PyTorch之nn.ReLU與F.ReLU的區(qū)別介紹
這篇文章主要介紹了PyTorch之nn.ReLU與F.ReLU的區(qū)別介紹,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-06-06
python numpy中的polyfit函數(shù)用法
這篇文章主要介紹了python numpy中的polyfit函數(shù)用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
基于Python實(shí)現(xiàn)超級(jí)瑪麗游戲的示例代碼
這篇文章主要介紹了利用python實(shí)現(xiàn)超級(jí)瑪麗游戲的示例代碼,幫助大家更好的理解和使用python開發(fā)游戲,感興趣的朋友可以跟隨小編一起學(xué)習(xí)一下2022-05-05
Python實(shí)現(xiàn)兩個(gè)list對(duì)應(yīng)元素相減操作示例
這篇文章主要介紹了Python實(shí)現(xiàn)兩個(gè)list對(duì)應(yīng)元素相減操作,結(jié)合具體實(shí)例形式分析了list對(duì)應(yīng)元素操作的簡(jiǎn)單實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-06-06

