我的应用程序有关键字框,可以提供包含或不包含的词进行过滤,它在对象(缺陷、用户故事和任务)的许多字段中进行过滤,例如备注和描述。
我们刚刚意识到,如果我们在排除框中指定一个无意义的单词,它返回的结果比不指定该单词的结果要少。我相信这应该是真的,如果我们指定了一个在搜索结果中不存在的单词,如果我们没有指定这个搜索条件,它应该是完全相同的结果。
我将范围缩小到只有Notes字段。其余的查询返回预期的结果。
(备注!包含"illidan")
这就是我使用它的方式。我正在web服务api页面上进行测试,所以我已经从等式中完全删除了我的应用程序。如果我只用该查询搜索缺陷,我会得到4512个结果。如果我只是运行一个空查询,我会得到16526个结果。但是我的测试单词没有包含在defects中的任何地方,通过搜索(Notes包含"illidan")确认,它返回0个结果。
我是不是遗漏了什么,或者这是Rally的一个bug?
发布于 2013-05-24 10:19:20
西蒙的评论一语中的。在一个小得多的数据集上测试,我看到的是!contains的工作原理如下:
(备注!包含"illidan")
将返回Notes字段为非空且不包含"Illidan“的所有缺陷。因此,如果你有:
包含空白备注字段的
的备注字段的零缺陷
您的查询将返回(N - EN)缺陷。
Rally的查询帮助系统中没有记录这一点,这增加了混乱。但是,根据查询逻辑的功能,这是预期的行为。
我将向Rally的文档团队提交增强请求,以便更好地记录此行为。
https://stackoverflow.com/questions/16726199
复制相似问题