今天就跟大家聊聊有关Python中的Jira怎么利用Jira库来操作,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
Jira是一款功能非常强大的管理工具,广泛的用来 缺陷跟踪、用例管理、需求收集、任务跟踪、工时管理、项目计划管理等工作领域。所以使用这款产品的公司很多,这篇博客讲述在执行自动化测试用例过程中,将失败的用例自动在jira系统记录bug。
提供了完善的RESTful API,如果不想直接请求API接口可以使用Python的Jira库来操作Jira。
官方文档
# 安装第三方jira库 pip install jira
官网提供了4种认证方式:
Cookie Based Authentication(用户名、密码)
HTTP BASIC(用户名、密码)
OAuth
Kerberos
我们选取一种认证方式即可,下文以HTTP BASIC为例:
# jira访问地址 server = 'http://jira.xxx.com.cn' # 用户名密码以元祖的方式传递。uesrname、passwd填写真实的账号密码 jiraClinet = JIRA(server=server, basic_auth=('username', 'passwd'))
create_issue() 单个创建issue,传入参数是字典
create_issues() 批量创建issues,传入参数是列表
# 创建单个issue issue_dict = { # key 是项目空间的关键字,将issue记录到此空间 'project': {'key': 'TOC'}, 'issuetype': {'name': 'Bug'}, 'summary': '测试自动提交', 'description': '描述', 'reporter': {'name': '007'}, 'assignee': {'name': '008'}, # 'priority': {'id': 3}, # 'customfield_10403':{'value':'研发中心'}, # 'customfield_11349':{'value':'业务需求'} } # 返回 issueId jiraClinet.create_issue(issue_dict) #批量创建issues issue_list = [{ 'project': {'key': 'TOC'}, 'issuetype': {'name': 'Bug'}, 'summary': '测试自动提交01', 'description': '描述01', 'reporter': {'name': '007'}, 'assignee': {'name': '008'}, }, { 'project': {'key': 'TOC'}, 'issuetype': {'name': 'Bug'}, 'summary': '测试自动提交02', 'description': '描述02', 'reporter': {'name': '007'}, 'assignee': {'name': '008'} }] # 返回 issue 列表 jiraClinet.create_issues(issue_list)
JIRA类提供了很多方法,这里介绍几个常用的
1)查询 project
# 获取所有项目空间列表 jiraClinet.projects() # 获取单个项目空间。参数为项目空间 id或key # project = jiraClinet.project(100) project = jiraClinet.project('xxx') # 项目的 key project.key # 项目空间的 name project.name # 项目空间 description project.description # 项目空间 lead project.lead
2)查询 issue
# 查询issue信息,传入参数issueId issue = jiraClinet.issue('xxx-679') # 问题的 key issue.key # 问题的 id issue.id # 问题的配置域 issue.fields # 问题标题描述 issue.fields.summary # 问题详细描述 issue.fields.description # 问题的类型 issue.fields.issuetype #问题报告者 issue.fields.reporter
3)使用“JQL语句”查询
# search_issues() 传参是 jira 里的JQL语句,返回一个 issue 列表 issue_list = jiraClinet.search_issues('JQL语句') for issue in issue_list: # 打印每个 issue 的 key print(issue.key)
看完上述内容,你们对Python中的Jira怎么利用Jira库来操作有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。