跳转至

jira 搜索问题的一些常用方法

jira的问题过多,要搜到自己心仪的问题单单使用默认的下拉搜索远远不够 有时不知道问题派到自己了 ? 有时想看看自己曾经处理过的问题怎么样? 有时自己的一个点子备注在某个issue下,凭模糊的记忆却怎么也找不到了? 有时做个仪表盘跟踪自己的状态却不知如何下手 ?

来来来,看这里! 一篇文章解决99%的问题

问题类型

所有的问题只有2种大类型

issuetype in standardIssueTypes() #  标准类型
issuetype in subtaskIssueTypes() # 子任务

问题的状态

所有的问题只有三种基本状态 未开始、处理中、结束(to do, In Progress, Done)

1.查询所有待处理的问题:statusCategory = “To Do”
2.查询所有进行中的问题:statusCategory = “In Progress”
3.查询所有已完成的问题:statusCategory = “Done”

4.查询所有未完成的问题:statusCategory != “Done”

问题的时间

updated >= “2023-07-10” # 更新:7月10号及之后更新

一天 (1d) 和24小时 (24h) created >= -10d AND created <= -3d # 创建:10天前到3天前这段时间 创建的issue

范围:自带时间范围

1
2
3
4
5
6
7
startOfMonth()
startOfWeek()
startOfYear()

(+/-)nn(y|M|w|d|h|m)。如果省略时间单位限定符,则默认为函数的自然周期,
例如 startOfMonth(“+1”) 与 startOfMonth(“+1M”) 相同。
如果省略加号/减号 (+/-),则假定为加号。

issue in issueHistory() AND created > startOfWeek(‘-1’) # 创建于上周后,且我浏览过的issue

运算、关系符号

说明 符号 例子
等于 =
不等于 !=
大于 >
大于等于 >=
小于 <
小于等于 <=
范围 IN
不在范围 NOT IN assignee was not in (liujingbo, membersOf(“产品研发线/技术架构中心/技术平台部”)) ## 一直都没有指派给()中 人和团队内的人
包含 ~ description ~ “"无法复现"” ##问题的描述中有无法复现的完整字样
不包含 !~
IS
不是IS NOT
曾经 WAS assignee WAS “tom” ##曾经的经办人是tom
曾经在范围内 WAS IN
一直都不在范围内 WAS NOT IN
曾经都不是 WAS NOT assignee WAS NOT “tom” ##tom 从未当过这个问题的经办人
改变 CHANGED status changed BY liuxin9 BEFORE endOfWeek() AFTER startOfWeek(-1) ## 查询liuxin9 从上周一到本周末修改过问题状态的全部 issus
AND
OR
NOT
为空 EMPTY assignee is EMPTY ##没有指派经办人,
没有 NULL
排序 ORDER BY

高级查询示例

示例1:查询在某个时间段被某个用户修改成某种状态的ISSUS

(summary ~ "\"NPAI\""  or summary ~ "\"A接口\"" )AND type in ("缺陷","客户反馈") and status changed to Resolved BY tanlihao BEFORE endOfWeek() AFTER startOfWeek(-4)
说明:
1、summary ~ "\"NPAI\""  or summary ~ "\"A接口\""  查询描述中完全匹配字符 NPAI  或者 A接口 的issue
2、type in ("缺陷","客户反馈")  查询issue的类型是 缺陷 或者 客户反馈
3、status changed to Resolved BY tanlihao  查询 问题的状态是 tanlihao 改成 Resolved 的issue
4、BEFORE endOfWeek() AFTER startOfWeek(-4) 操作时间 起:4周前的周一,止 本周的周末

综上所述:

查询4周前的周一到本周的周末由tanlihao把issued的状态改成Resolved的"缺陷"、"客户反馈"的两种类型,且issuse的描述中存在 NPAI或者A接口 的字样的全部issue

示例2:查询创建与某个时间段、某个团队未处理完成、且又长时间不处理的全部ISSUSE

assignee was in (currentUser(),membersOf("产品研发线/技术架构中心/技术平台部")) and statusCategory != "Done" and updated <= "-5d" and created <= startOfMonth("-1") and created >= startOfYear()
说明:
1、assignee was in (currentUser(),membersOf("产品研发线/技术架构中心/技术平台部"))  查询曾经的经办人是当前的用户或者是 这个组的用户
2、statusCategory != "Done"  查询未处理完成的issue(对应 close、done、已发布、已完成、等各种类型的最终状态)
3、updated <= "-5d"  查询超过5天没有更新过的issue
4、created <= startOfMonth("-1") and created >= startOfYear() 查询创建时间是 今年初到 2个月前的最后一天的issue

综上所述:

查询 当前登录用户或者这个组的的成员未处理完、且5天没有更新过的ISSUE,限制issue的创建时间是今年初到2个月前的最后一天

示例3:查询某个时间段ISSUE的状态从 A -> B

type = 缺陷 and status changed FROM CLOSED TO Reopened AFTER endOfMonth("-5")

说明:

1、type = 缺陷     查询类型是缺陷
2、status changed FROM CLOSED TO Reopened     查询类型本来已经验证通过,被关闭后,又被重新打开
3、AFTER endOfMonth("-5") 查询变更时间是 5个月前的第一天开始到今天

综上所述:

查询 5个月内,本来已经解决并验证通过的缺陷,又被重新打开了的全部issue

其他实例

我曾经留下过足迹的问题:评论、注释、修改、作为(经办人、创建人等人)等情况

worklogAuthor = currentUser()

查找当前已分配或以前分配给 tom 的问题:

assignee WAS "tom" 

查找评论中包含与“后面解决”匹配的文本

comment ~ "后面解决"  # 模糊匹配即可
comment ~ "\"后面解决\"" # 必须一模一样
description # 描述,使用方法同上

3 小时内解决的问题 resolved >= “-3h”

查找花费时间超过 5 天的问题 timeSpent > 5d