首先安装jira,同其他第三方库,直接可以 easy_install jira。

判断jira是否按转成功输入:from jira import JIRA,如果没有报错则说明安装成功;

#连接jira
jira = JIRA(“http://jira地址”,basic_auth = (“用户名”,”密码”))
#获取当前用户
print u'当前登录用户:'+jira.user(jira.current_user())
#获取当前用户所有项目,返回项目字典
for j in jira.projects():
print j, j.name #打印项目名称;

2. 批量获取项目缺陷数据

通过jira.projects()获取项目名称后,接下来就可以获取各个项目的具体缺陷信息了,批量获取缺陷的具体方法是jira.search_issues(sql,maxResults),具体用法如下;

issues =jira.search_issues(sql, maxResults=maxnumber)
for u in issues:
print u #打印缺陷的key值

其中sql是指统计缺陷数的查询语句,比如统计2018年1月份创建缺陷数的语句为:project= 项目键值 AND issuetype =缺陷 AND created >= 2018-01-01 AND created <=2018-02-01;

maxResults参数是设置返回数据的最大值,默认是50。issues返回的是项目的缺陷list,包含了缺陷的key,id值,通过计算issues的个数就可以统计目前项目缺陷总数。一下是不同维度统计缺陷的sql。

#验证缺陷

project =项目键值AND issuetype = 缺陷 AND ( status changed FROM 待验证TO 关闭OR status changed FROM 待验证TO 待修复 OR status changed FROM 待验证TO 待讨论) AND 验证时间>=2018-01-01 AND 验证时间<=2018-02-01;

#打回缺陷

project =项目键值issuetype = 缺陷 AND ( status changed FROM 待验证TO 待修复 OR (status changed FROM 待验证TO 待讨论AND status changed FROM 待讨论TO 待修复)) AND 验证时间>=2018-01-01 AND 验证时间<=2018-02-01;

#未修复缺陷

project = AND issuetype =缺陷 AND status in (待修复, 待讨论) AND created <= 2018-01-01 AND created <= 2018-02-01;

3.获取缺陷详细信息

获取jiar统计信息后,下一步就是得到每个缺陷的具体信息,比如摘要、重现步骤、解决方法、修复细节,提出人员,提出版本等详细信息。部分常用方法如下,更多方法可参看API说明文档http://jira.readthedocs.io/en/master/api.html。

#传入具体的缺陷key值;
isss=jira.issue('APPBUG-486')
#获取缺陷类型,如缺陷,线上问题、改进等
print isss.fields.issuetype
#获取缺陷的主题描述
print isss.fields.summary
#获取缺陷的具体描述内容
print isss.fields.deion
#获取缺陷的状态
print isss.fields. status
#获取缺陷的解决结果
print isss.fields. resolution
#获取缺陷的优先级
print isss.fields. priority

由于jira具有可扩展性,自定义字段。不同的项目组会根据需求去添加字段,那么如何去获取自定义字段的内容,具体方法如下;

首先,要获取自定义字段的id号。

field= jira.fields()
foritem infield:
printjson.dumps(item,ensure_ascii=False)#批量打印字典内容

然后,通过字段id号去获取内容;

isss=jira.issue('APPBUG-486',fields='summary,deio,customfield_10216,customfield_10309,customfield_10428')
print isss.fields.customfield_10216#获取自定义字段的内容

通过对项目缺陷统计,可以统计开发人员的人均缺陷数,容易发现缺陷率、严重缺陷率、缺陷打回率、缺陷验证率、不规范缺陷数等等。通过这些数据可以量化的去评估开发和测试的工作量,同时可以间接的反应项目的质量情况。

以上就是用python获取jira信息的所有内容,如果你的团队也在用jira,快用python自己写个统计脚本,看看你的项目数据吧,最后欢迎大家在飞测这个平台来交流学习 ,进步!