我们的缺陷中有一个称为“需要更多信息”的状态。我想创建一个随时间变化的图表,显示在任何特定时间段内处于该状态的缺陷数量。
我想我可以通过 Lookback API 使用以下查询获取信息:
my $find = {
State => 'Need More Information',
'_PreviousValues.State' => {'$ne' => 'Need More Information'},
_TypeHierarchy => -51006, # defect
_ValidFrom => {
'$gte' => '2012-09-01TZ',
'$lt' => '2012-10-23TZ',
}
我认为这会给我一个包含所有缺陷快照的列表,其中缺陷正在转换为“需要更多信息”状态,但事实并非如此(似乎列出了曾经处于“需要更多信息”状态的所有内容。
从技术上讲,我需要的是一个查询,它列出了从“需要更多信息”状态转换为或从“需要更多信息”状态转换的任何缺陷的快照,但由于这个更简单的方法似乎没有按我预期的那样工作,我想我会先问为什么上面的查询没有按我预期的方式工作。
返回的标题中的“生成的查询”是:
'fields' => 1,
'skip' => 0,
'limit' => 100,
'find' => {
'_TypeHierarchy' => -51006,
'_ValidFrom' => {
'$gte' => '2012-09-01T00:00:00.000Z',
'$lt' => '2012-10-23T00:00:00.000Z'
},
'_PreviousValues.State' => {
'$in' => [
undef,
5792599066,
5792599067,
5792599065,
5792599070,
5792599071,
5792599068,
5792599073,
5792599072,
5792599075,
5792599077,
5792599076,
5792599078,
3631859989,
3631859988,
3631859987,
3631859986
]
},
'State' => {
'$in' => [
4384150044
]
}
}
};