python jira 读取表数据批量新建子任务
小李在Jira中处理任务时,发现一个表格数据很有趣。他决定为每一行数据创建一个新的子任务。他复制粘贴,忙得不亦乐乎。同事小张路过,好奇地问:“你在做什么?”小李得意地回答:“我在批量新建子任务,让这些数据都活起来!”小张瞪大眼睛:“你确定这不是在玩‘俄罗斯方块’?”
于是,有了它~
# encoding=utf-8
from jira import JIRA
from openpyxl import load_workbook
import os, pytest, traceback
jira_server = "xxxxxx"
jira_username = "xxxxx"
jira_password = "xxxxx"
file_name = 'xxxxx'
sheet_name = 'xxxx'
#获取jira消息
def jira_info(jira_server, jira_username, jira_password):
jira = JIRA(server=jira_server, basic_auth=(jira_username, jira_password))
return jira
#读取表数据
def get_TestExcel(file_name, sheet_name):
print("======", os.getcwd())
workbook = load_workbook(file_name)
sheet = workbook[sheet_name]
test_data = []
for i in range(2, sheet.max_row + 1):
sub_data = {}
for j in range(1, sheet.max_column + 1):
sub_data[sheet.cell(1, j).value] = sheet.cell(i, j).value
test_data.append(sub_data)
return test_data
case_data = get_TestExcel(file_name, sheet_name)
idss = ["标题: {} ".format(data["标题"]) for data in case_data]
#根据读取数据新建任务
@pytest.mark.parametrize("test_data", case_data, ids=idss)
def test_create_task(test_data):
project_key = test_data['项目key']
summary = test_data['标题']
description = test_data['描述']
issuetype = test_data['类型id']
assignee = test_data['指向人']
parent = test_data['挂靠需求key']
test_environment_value = test_data['测试环境id']
system_module_value = test_data['信增系统模块id']
print('project_key:%s,summary:%s,description:%s,issuetype:%s,assignee:%s,parent:%s,test_env:%s,sys_module:%s' % (
project_key, summary, description, issuetype, assignee, parent, test_environment_value, system_module_value))
try:
new_issue = jira_info(jira_server, jira_username, jira_password).create_issue(
project={'key': str(project_key)},
summary=str(summary),
description=str(description),
issuetype={'id': int(issuetype)},
assignee={'name': str(assignee)},
parent={'key': str(parent)},
customfield_10265={"id": str(test_environment_value)},
customfield_10268={"id": str(system_module_value)},
)
print(f"新建的任务已创建,其ID为:{new_issue.key}")
except Exception as e:
print('异常: %s' % e)
finally:
print("Operation completed. Check the error log if any issues.")
python jira 读取表数据批量新建子任务的更多相关文章
- Delphi中使用python脚本读取Excel数据
Delphi中使用python脚本读取Excel数据2007-10-18 17:28:22标签:Delphi Excel python原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 . ...
- python中读取mongodb数据并保存为csv格式的文件
import pandas as pd import matplotlib.pyplot as plt import pymongo %matplotlib inline # 连接mongodb数据库 ...
- python之读取yaml数据
一.yaml简介 yaml:一种标记语言,专门用来写配置文件. 二.yaml基础语法 区分大小写: 使用缩进表示层级关系: 使用空格键缩进,而非Tab键缩进 缩进的空格数目不固定,只需要相同层级的元素 ...
- 【Python】读取excel数据
'''python3读取excle数据''' import xlrd workbook = xlrd.open_workbook(r'test.xls', encoding_override='gbk ...
- python cx_oracle单个表中批量插入数据
- python+jinja2实现接口数据批量生成工具
在做接口测试的时候,我们经常会遇到一种情况就是要对接口的参数进行各种可能的校验,手动修改很麻烦,尤其是那些接口参数有几十个甚至更多的,有没有一种方法可以批量的对指定参数做生成处理呢. 答案是肯定的! ...
- Python将MySQL表数据写入excel
背景:将mysql表查询结果写入excel. 1.使用sqlyog工具将查询结果导出到Excel.xml中,用excel打开发现:因为text字段中有回车换行操作,显示结果行是乱的. 2.用mysql ...
- python中读取文件数据时要注意文件路径
我们在用python进行数据处理时往往需要将文件中的数据取出来做一些处理,这时我们应该注意数据文件的路径.文件路径不对,回报如下错误: FileNotFoundError: File b'..Adve ...
- 使用python,将excel数据批量导入数据库
这是上一篇文章的优化版本,相较于一条一条的执行sql语句,本文中,将excel中所有的数据先写到list列表中 在通过函数 cursor.executemany(sql, list) 一次性写入到数据 ...
- 将mysql表数据批量导入redis zset结构中
工作中有这样一个需求,要将用户的魅力值数据做排行,生成榜单展示前40名,每隔5分钟刷新一次榜单.这样的需求用redis的zset是很方便实现的.但是数据存在mysql的表中,有400多万条,怎么将其快 ...
随机推荐
- 编写高性能C#代码 —— Span<T>
Span 提供任意内存的连续区域的类型安全和内存安全表示形式.它是在堆栈而不是托管堆上分配的ref结构,是对任意内存块的抽象 . 1.关于Span 在NET Core 2.1中首次引入 提供对任意内存 ...
- Altium designer 设置覆铜与板框间距
新版Altium designer不再推荐使用 Keep-Out 层作为板框 以前使用 Keep-Out 作为板框的一个很大原因是因为 Keep-Out 自带板框间距属性.省去甚至不用考虑铺铜的边缘问 ...
- JavaScript高级程序设计笔记04 变量、作用域与内存
变量.作用域与内存 变量 特定时间点一个特定值的名称. 分类 原始值:按值访问 复制:两个独立使用.互不干扰 引用值(由多个值构成的对象):按引用访问 操作对象时,实际上操作的是对该对象的引用(ref ...
- mongodb c driver bson的嵌套访问与层次结构
使用c访问mongodb,需要用到mongodb c driver.c++的driver也是基于c driver封装的. 在使用c driver访问mongodb时,需要与bson打交道,不过c dr ...
- [Codechef REBXOR]Nikitosh and xor (Trie,异或)
题目传送门 分析:首次考虑暴力枚举 \(l_{1},r_{1},l_{2},r_{2}\),配合前缀和时间复杂度 \(O(N^{4})\),需要想办法优化.对于这种两段区间不重合的,我们考虑枚举两段区 ...
- 用Python编写 2048 命令行小游戏
本篇博文围绕使用Python开发热门游戏2048 GAME(命令行版本) 代码未做任何优化(原生且随意).全程以面向过程.MVC的设计思想为主.开发环境是Ubuntu系统下的Pycharm 2048是 ...
- 【开源项目推荐】通用SQL数据血缘分析工具——Sqllineage
大家好,我是独孤风,从本周开始,争取每周为大家带来一个优秀的开源项目推荐. 开源项目不仅促进了技术的发展和普及,还为全球范围内的开发者和用户社区建立了一个共享知识.协作和创新的平台.站在巨人的肩膀上才 ...
- SpringBoot获取启动类Application所在包路径
1. @SpringBootApplication 注解中引用了@EnableAutoConfiguration 注解. 2.查看 @EnableAutoConfiguration 注解,发现引用了 ...
- C++学习笔记八:极限和数学运算<limits><cmath>
1) <limits>库: 1.1 源文档: https://en.cppreference.com/w/cpp/types/numeric_limits #include <lim ...
- 13 HTTP传输大文件的方法
目录 如何在有限的带宽下高效快捷传输大文件? 数据压缩 分块传输 范围请求 多段数据 如何在有限的带宽下高效快捷传输大文件? 数据压缩 分块传输 范围请求 多段数据 数据压缩 思路:把大文件整体变小 ...