本地环境
Python 3.7.1
windows 10 x64
(1) 待提交问题存储:csv (习惯用 csv ,其他如 excel 理论上也可以)
(2) 使用 jira 库的方法 create_issue
(3) 已提交问题存储到另一个 csv 文件里 (用于后续操作,如统一更新状态、统一删除问题)
#encoding =utf-8
import csv
from jira import JIRA
jira_server = '公司 jira 域名'
jira_username = 'your name'
jira_password = 'your password'
newjira = JIRA(jira_server, basic_auth=(jira_username, jira_password))
csvfile = open('D:/jiracsv.csv', 'r', encoding='gbk') # 打exe包使用该路径,根据需要可随时修改路径
reader = csv.DictReader(csvfile)
for row in reader:
new_issue = newjira.create_issue(
project=row['项目'],
summary=row['标题'],
description=row['描述'],
assignee={'name': row['分配给']},
issuetype={'name' : row['问题类型']},
components=[{'name': row['模块']}],
versions=[{'name': row['版本']}],
priority={'id': row['优先级']},
reporter={'name': row['报告人'], 'key': row['报告人']})
print('提交完成,棒(๑•̀ㅂ•́)و✧')
with open('D:/jiracsvDone.csv', 'a+', encoding='utf-8', newline='') as f: # 打exe包使用该路径,根据需要可随时修改路径,存储已提交问题列表
csv_write = csv.writer(f)
data_row = [new_issue, row['标题'],row['描述'],row['项目'],row['问题类型'],row['模块'],row['分配给'],row['报告人'],row['优先级'],row['版本']]
csv_write.writerow(data_row)
注意点:
(1) 引入三方库: jira
(2) 确认公司内 jira 域名、登陆账号、登陆密码
(3) csv 文件标题行,根据需要添加。如上包括:项目、标题、描述 xxx
(4) 开始运行
$ python3
Python 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:57:15) [MSC v.1915 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import csv
>>> import jira
安装:
$ pip3 pyinstaller
查看版本号:
$ pyinstaller --version
3.4
pyinstaller createJira.py
出现 2 种报错:
报错1:ModuleNotFoundError: No module named 'jira'
解决思路:先确认当前是否有 jira
$ python3
Python 3.7.1 (v3.7.1:260ec2c36a, Oct 20 2018, 14:57:15) [MSC v.1915 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import jira
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'jira'
确实没有jira,重新引入jira(根本原因是本地有多个python环境)
pip3 install jira
报错2:Error loading Python DLL 'D:\python37.dll'.
LoadLibrary: 找不到指定的模块。
解决:pyinstaller --clean --win-private-assemblies -F createJira.py
最终打包语句:
pyinstaller --clean --win-private-assemblies -F createJira.py
生成 exe 路径:
dist/createJira.exe
(1) 把 jiracsv.csv 和 createJira.exe 放到电脑 D 盘
(写死到 D 盘了,要是本地没有 D 盘,可以修改路径重新生成个 exe)
(2) 在 jiracsv.csv 中 填写 bug 详细信息后保存(参考 csv 中第一条)
(3) 打开 cmd,进入 D 盘,把 createJira.exe 拖进 cmd 里,换行运行
参考文档:
https://github.com/sec4you/jira-issues-csv
https://jira.readthedocs.io/en/master/