JIRA的使用介绍(四)- 高级搜索(JQL)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JIRA的使用介绍(四)- 高级搜索(JQL)相关的知识,希望对你有一定的参考价值。

参考技术A

JIRA的高级搜索功能超级好用,使用了自带的JQL查询语言,有点类似于SQL的语法,但是做了扩充和简化。

高级搜索可以让你使用结构化查询搜索JIRA问题单。搜索结果将显示在问题导航器,你可以将其导出到MS Excel等多种格式。你还可以保存和订阅你的高级搜索。
当你执行高级搜索时,你是用的是JIRA搜索语言(JQL)。JQL简单查询(也称为一个“语句”)包括一个字段,包括一个运算符、一个或多个值或功能。例如,下面的简单的查询会搜索在“XRTP2”项目中的所有问题单:

当在以下字段执行搜索时,可以使用Lucene的文本搜索功能的CONTAINS运算符:

在JQL中使用文本字段的"some words"值搜索问题。这会搜索所有文本自定义字段如总结、描述、环境、评论。如果你有很多文本自定义字段,你可以通过搜索特定的字段来改进搜索,例如:

通常情况下,使用“简单搜索”创建查询可能会被转换成“高级搜索”(JQL),然后再简单查询。然而,使用“高级搜索”创建查询就不会被转换成“简单搜索”,特别是当:

你可以通过使用括号来强调JQL语句中运算符的优先级。例如,如果你想查找X项目中所有被解决的问题,以及目前被分配给系统管理员(leo)的问题。你可以在你的查询中使用括号强制执行布尔运算符的优先级,即:
(status=resolved AND project=X) OR assignee=leo
需要注意的是,如果你不使用括号,该语句将使用运算符优先级评估。你还可以使用括号来组合语句,这样就可以将NOT运算符应用于组。

如果你添加括号强制符的优先级,但他们没有严格要求的运算符优先级执行但返回相同的结果,当你保存查询时JIRA会删除你查询语句里面的优先级。

如果你需要在查询中作为内容来使用这些字符,就需要做如下转化:

WAS运算符包括Was,Was in,Was not,Was not in

这个用于查找当前或曾经分配给leo的所有问题,这个功能很实用也很强大。

CHANGED运算符用于查找问题单的某个特定字段被变更过了。这个运算符有以下一些常见用法:

备注: CHANGED运算符常被用于Assignee, Fix Version, Priority, Reporter, Resolution, and Status这些字段。

示例:
查询带有附件的问题:

查询不带附件的问题:

示例:
查找评论里包含有"My PC is quite old"的问题(模糊匹配):

查询评论里含有完整语句"My PC is quite old"的问题:

查找某个特定日期前或后创建的问题(或某个日期范围)。注意,如果没有指定具体时间,默认为凌晨00:00。查询结果是根据你的JIRA服务器设置的时区。使用如下格式:

或者使用"w" (周), "d" (天), "h" (小时)或"m" (分钟)来指定相对于当前时间的日期。默认为“M”(分钟)。一定要使用引号(“);如果省略了引号标记,你提供的数字将被解释为纪元(1970-1-1)之后的毫秒。
注:该字段不支持自动填写功能。
支持的函数
当使用 EQUALS, NOT EQUALS, GREATER THAN, GREATER THAN EQUALS, LESS THAN 或LESS THAN EQUALS运算符时,该字段支持:

示例
查找2010年12月12日00:00点之前创建的所有问题:

查找2010年12月12日创建或2010年12月12日之前创建的所有问题:

查找2010年12月12日下午2点之前创建的所有问题:

查找创建不足一天的问题:

查找在2011年1月创建的所有问题:

查找在2011年1月15日创建的所有问题:

以上是关于JIRA的使用介绍(四)- 高级搜索(JQL)的主要内容,如果未能解决你的问题,请参考以下文章

{Jira Query Language简称JQL}Jira中最常用的JQL搜索语句

使用 JQL 执行搜索时,Jira REST 错误“字段 'project' 的值 'XXX' 不存在。”]

JIRA JQL 的使用

JIRA JQL:按阻塞状态着色卡片

《高级软件测试》11.16.Jira使用说明的撰写和操作视频的录制

《高级软件测试》11.14.安装和运行Jira