批量更改TD缺陷状态

上一篇 / 下一篇  2009-06-07 17:36:31

     我们项目目前还是使用TestDirector 8.0 管理缺陷,缺陷的正常状态改变过程是这样的:New-Open-Update-Commit-Closed.测试人员发现Bug将其登记到TD库中的初始状态为New,然后由开发经理打开缺陷分配给开发人员(Open),开发人员Bug修改好之后将状态改为Update,之后由升级人员进行版本升级并将bug状态改为Commit,升级完成后,测试人员验证Bug,验证通过则将Bug状态改为Closed,此Bug的生命周期到此结束。

     使用TestDirector 或Quality Center 缺陷管理工具的朋友应该都知道,使用手动的方式改变Bug状态时,缺陷管理工具会自动将该动作信息记录下来,TestDirector 记录在TD.HISTORY表中,那么对于升级人员来说,升级时需要将Bug状态由Update更改为Commit,此时Bug的数量很多时,手动更改就比较麻烦,因此可以使用SQL语句直接更新TD.BUG表,还要为每个Bug添加状态改变信息。

     下面是使用游标为每个Update状态的Bug,添加状态改变的信息:

/*****将bug状态从Update更新为Commit之前,添加相应的更改历史到TD.HISTORY表****/
/************************begin********************************/

declare history_cursor cursor scroll
for
   select bg_bug_id from td.bug where  bg_status='Update'  --and bg_detected_by=''

open history_cursor

declare @id varchar(20)
fetch first from history_cursor into @id
while @@fetch_status=0
begin
insert into td.history
(hs_table_name,hs_key,hs_column_name,hs_change_date,hs_change_time,hs_changer,hs_new_value)
values('BUG',@id,'BG_STATUS',CONVERT(VARCHAR(20),GETDATE(),23),CONVERT(VARCHAR(20),GETDATE

(),24),'升级人员','COMMITT');

fetch next from history_cursor into @id
end
close history_cursor
deallocate history_cursor
go

/* ********************************end*************************************/


    下面是将bug的状态由Update改为Commit的sql语句:

/******升级后将Update状态的bug状态改为Commit状态*********************************/
/*begin *******************************************************************/

update td.bug
set bg_status='COMMITT'
where bg_status='Update'  --and bg_detected_by=''

go

/* ******************************end**************************************/

 


TAG:

 

评分:0

我来说两句

日历

« 2024-04-09  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 2649
  • 日志数: 4
  • 建立时间: 2008-06-14
  • 更新时间: 2009-06-07

RSS订阅

Open Toolbar