Python用Jira库来操作Jira


Posted in Python onDecember 28, 2020

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'))

三、创建issue

 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的详细内容,更多关于python 操作Jira的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python开发WebService系列教程之REST,web.py,eurasia,Django
Jun 30 Python
高质量Python代码编写的5个优化技巧
Nov 16 Python
python 通过 socket 发送文件的实例代码
Aug 14 Python
三个python爬虫项目实例代码
Dec 28 Python
Python celery原理及运行流程解析
Jun 13 Python
keras CNN卷积核可视化,热度图教程
Jun 22 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
Sep 23 Python
Python 测试框架unittest和pytest的优劣
Sep 26 Python
python 实现非极大值抑制算法(Non-maximum suppression, NMS)
Oct 15 Python
Python 解决空列表.append() 输出为None的问题
May 23 Python
详解Python生成器和基于生成器的协程
Jun 03 Python
python geopandas读取、创建shapefile文件的方法
Jun 29 Python
python性能测试工具locust的使用
Dec 28 #Python
Python+kivy BoxLayout布局示例代码详解
Dec 28 #Python
python字典与json转换的方法总结
Dec 28 #Python
python字典按照value排序方法
Dec 28 #Python
python Timer 类使用介绍
Dec 28 #Python
PyChon中关于Jekins的详细安装(推荐)
Dec 28 #Python
python获取天气接口给指定微信好友发天气预报
Dec 28 #Python
You might like
php查询相似度最高的字符串的方法
2015/03/12 PHP
php获取网页上所有链接的方法
2015/04/03 PHP
PHP与服务器文件系统的简单交互
2016/10/21 PHP
php操作mongodb封装类与用法实例
2018/09/01 PHP
Laravel框架下的Contracts契约详解
2020/03/17 PHP
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
JavaScript事件委托用法分析
2015/01/24 Javascript
vue父组件中获取子组件中的数据(实例讲解)
2017/09/27 Javascript
Three.js中网格对象MESH的属性与方法详解
2017/09/27 Javascript
jQuery实现的鼠标滚轮控制图片缩放功能实例
2017/10/14 jQuery
vue中$refs的用法及作用详解
2018/04/24 Javascript
学习使用ExpressJS 4.0中的新Router的用法
2018/11/06 Javascript
详解Vue.js v-for不支持IE9的解决方法
2018/12/29 Javascript
JavaScript遍历查找数组中最大值与最小值的方法示例
2019/05/24 Javascript
微信小程序实现二维码签到考勤系统
2020/01/16 Javascript
javascript设计模式 ? 策略模式原理与用法实例分析
2020/04/21 Javascript
常见的在Python中实现单例模式的三种方法
2015/04/08 Python
Python生成密码库功能示例
2017/05/23 Python
python实现Adapter模式实例代码
2018/02/09 Python
解决python opencv无法显示图片的问题
2018/10/28 Python
解决Numpy中sum函数求和结果维度的问题
2019/12/06 Python
python小程序之4名牌手洗牌发牌问题解析
2020/05/15 Python
享誉全球的多元化时尚精品购物平台:Farfetch发发奇(支持中文)
2017/08/08 全球购物
ALDO英国官网:加拿大女鞋品牌
2018/02/19 全球购物
Yahoo-PHP面试题4
2012/05/05 面试题
Java语言程序设计测试题判断题部分
2013/01/06 面试题
材料成型专业个人求职信范文
2013/09/25 职场文书
应届毕业生求职自荐书
2014/01/03 职场文书
给男朋友的道歉信
2014/01/12 职场文书
出国签证在职证明
2014/01/16 职场文书
2014年民警工作总结
2014/11/25 职场文书
2016年教师新年寄语
2015/08/18 职场文书
2016十一国庆节慰问信
2015/12/01 职场文书
教你快速开启Apache SkyWalking的自监控
2021/04/25 Servers
tomcat下部署jenkins的方法
2022/05/06 Servers
Mybatis-plus配置分页插件返回统一结果集
2022/06/21 Java/Android