QC缺陷管理

一般组需要:管理组、开发组、测试组、客服组、管理小组、Viewer

1、管理组:权限较大,有分配任务,修改字段的权限,通常为组长、项目经理等。

2、开发组的缺陷权限:Checking-Fixed,Checking-Postpone

QC缺陷管理

QC缺陷管理

3、测试组的缺陷权限:New,Checking-Reopen,Checking-Closed

QC缺陷管理

QC缺陷管理

4、客服组:通常为普通客服人员

5、管理小组:权限比管理组小,如果项目人员不多,可以忽略,权限:新建→打开 审核→验证 审核→重新打开

6、Viewer:访客、只允许浏览。

7、TDAdmin:TD管理员,最大权限。可以增加人员、组、自定义字段等。

8、项目经理:将New状态切为Open状态,即发邮件通知开发组(在设置为自动发送邮件)

二、关于权限控制


1、如果是客服组,开放的权限如下:

If not User.IsInGroup("客服组")then

Bug_Fields("BG_USER_10").IsReadOnly = false 测试责任人

Bug_Fields("BG_USER_14").IsReadOnly = false 引入版本

end if

2、如果是开发组和客服组,开发的权限如下:

if (User.IsInGroup("开发组"))or (User.IsInGroup("客服组")) then

Bug_Fields("BG_USER_17").IsReadOnly = false 跟踪人

end if

3、测试组,处理未关闭缺陷

if user.IsInGroup("测试组")and (Bug_Fields("BG_USER_07").value <> "关闭") then

Bug_Fields("BG_SEVERITY").IsReadOnly = False 严重级别

Bug_Fields("BG_SEVERITY").IsRequired = True

end if

4、缺陷录入人处理自己提交未关闭的缺陷

If(Bug_Fields("BG_DETECTED_BY").Value=User.UserName)And(Bug_Fields("BG_USER_07").Value<>"关闭") Then

'标题

Bug_Fields("BG_SUMMARY").IsReadOnly = False 问题描述

Bug_Fields("BG_SUMMARY").IsRequired = True

'所属模块

Bug_Fields("BG_USER_08").IsReadOnly= False

Bug_Fields("BG_USER_08").IsRequired = True

'严重级别

Bug_Fields("BG_SEVERITY").IsReadOnly = False

Bug_Fields("BG_SEVERITY").IsRequired = True

'重现标志

Bug_Fields("BG_USER_02").IsReadOnly= False

Bug_Fields("BG_USER_02").IsRequired = True

'遗留标志

Bug_Fields("BG_USER_09").IsReadOnly = False

Bug_Fields("BG_USER_09").IsRequired = True

Bug_Fields("BG_USER_18").IsReadOnly = False

Bug_Fields("BG_USER_19").IsReadOnly= False

'发现难度

Bug_Fields("BG_USER_13").IsReadOnly = False

Bug_Fields("BG_USER_13").IsRequired = True

'发现版本

Bug_Fields("BG_DETECTION_VERSION").IsReadOnly = False

Bug_Fields("BG_DETECTION_VERSION").IsRequired = True

'程序员

Bug_Fields("BG_USER_15").IsReadOnly = False

'责任人

Bug_Fields("BG_RESPONSIBLE").IsReadOnly = False

'计划完成日期

Bug_Fields("BG_USER_05").IsReadOnly = False

'状态

Bug_Fields("BG_USER_07").IsReadOnly= False

Bug_Fields("BG_USER_07").IsRequired = True

'测试人员

Bug_Fields("BG_DETECTED_BY").IsReadOnly = False

Bug_Fields("BG_DETECTED_BY").IsRequired = True

'客户名称

Bug_Fields("BG_USER_04").IsReadOnly= False

'详细描述

Bug_Fields("BG_DESCRIPTION").IsReadOnly = False

'备注

Bug_Fields("BG_DEV_COMMENTS").IsReadOnly = False

End If

5、测试组,处理状态为“已处理”的缺陷

If User.IsInGroup("测试组")and Bug_Fields("BG_USER_07").Value = "已处理"Then

'状态

Bug_Fields("BG_USER_07").IsReadOnly = False

Bug_Fields("BG_USER_07").IsRequired = True

'实际关闭版本

Bug_Fields("BG_CLOSING_VERSION").IsReadOnly = false

'关闭日期

Bug_Fields("BG_CLOSING_DATE").IsReadOnly= false

'备注

Bug_Fields("BG_DEV_COMMENTS").IsReadOnly = False

end if

6、'开发组处理“程序员”为自己,状态不为“关闭”的缺陷

If User.IsInGroup("开发组")andBug_Fields("BG_USER_15").Value = User.UserName _

and Bug_Fields("BG_USER_07").Value<> "关闭" Then

'责任人

Bug_Fields("BG_RESPONSIBLE").IsReadOnly = True

Bug_Fields("BG_USER_07").IsRequired = True

'处理结果

Bug_Fields("BG_USER_01").IsReadOnly = False

'状态

Bug_Fields("BG_USER_07").IsReadOnly= False

Bug_Fields("BG_USER_07").IsRequired = True

'缺陷来源

Bug_Fields("BG_USER_12").IsReadOnly = False

'缺陷来源明细

Bug_Fields("BG_USER_03").IsReadOnly = False

'预计修复时间

Bug_Fields("BG_ESTIMATED_FIX_TIME").IsReadOnly= False

'实际完成日期

Bug_Fields("BG_USER_06").IsReadOnly = False

'备注

Bug_Fields("BG_DEV_COMMENTS").IsReadOnly = False

end if

7、'管理小组处理未关闭的缺陷

If User.IsInGroup("管理小组")and Bug_Fields("BG_USER_07").Value <> "关闭" Then

'程序员

Bug_Fields("BG_USER_15").IsReadOnly = False

'责任人

Bug_Fields("BG_RESPONSIBLE").IsReadOnly = False

'计划完成日期

Bug_Fields("BG_USER_05").IsReadOnly = False

'处理结果

Bug_Fields("BG_USER_01").IsReadOnly= False

'状态

Bug_Fields("BG_USER_07").IsReadOnly = False

Bug_Fields("BG_USER_07").IsRequired = True

'缺陷来源

Bug_Fields("BG_USER_12").IsReadOnly = False

'缺陷来源明细

Bug_Fields("BG_USER_03").IsReadOnly= False

'预计修复时间

Bug_Fields("BG_ESTIMATED_FIX_TIME").IsReadOnly = False

'实际完成日期

Bug_Fields("BG_USER_06").IsReadOnly = False

'备注

Bug_Fields("BG_DEV_COMMENTS").IsReadOnly = False

end if


8、'管理组的权限

If User.IsInGroup("管理组")Then

'标题

Bug_Fields("BG_SUMMARY").IsReadOnly = false

'所属模块

Bug_Fields("BG_USER_08").IsReadOnly = false

'严重级别

'Bug_Fields("BG_SEVERITY").IsReadOnly = false

'重现标志

Bug_Fields("BG_USER_02").IsReadOnly= false

'遗留标志

Bug_Fields("BG_USER_09").IsReadOnly = false

Bug_Fields("BG_USER_18").IsReadOnly = False

Bug_Fields("BG_USER_19").IsReadOnly = False

'发现难度

Bug_Fields("BG_USER_13").IsReadOnly= false

'发现版本

Bug_Fields("BG_DETECTION_VERSION").IsReadOnly = false

'引入版本

Bug_Fields("BG_USER_14").IsReadOnly = false

'程序员

Bug_Fields("BG_USER_15").IsReadOnly = false

'责任人

Bug_Fields("BG_RESPONSIBLE").IsReadOnly= false

'计划完成日期

Bug_Fields("BG_USER_05").IsReadOnly = false

'处理结果

Bug_Fields("BG_USER_01").IsReadOnly = false

'状态

Bug_Fields("BG_USER_07").IsReadOnly = false

'缺陷来源

Bug_Fields("BG_USER_12").IsReadOnly= false

'缺陷来源明细

Bug_Fields("BG_USER_03").IsReadOnly = false

'实际完成日期

Bug_Fields("BG_USER_06").IsReadOnly = false

'测试员

Bug_Fields("BG_DETECTED_BY").IsReadOnly = false

'提交日期 'Bug_Fields("BG_DETECTION_DATE").IsReadOnly= true

'客户名称

Bug_Fields("BG_USER_04").IsReadOnly = false

'最新修改时间'Bug_Fields("BG_VTS").IsReadOnly = true

'计划关闭版本

Bug_Fields("BG_PLANNED_CLOSING_VER").IsReadOnly = false

'预计修复时间

Bug_Fields("BG_ESTIMATED_FIX_TIME").IsReadOnly = false

'实际关闭版本

Bug_Fields("BG_CLOSING_VERSION").IsReadOnly = false

'实际修复时间

Bug_Fields("BG_ACTUAL_FIX_TIME").IsReadOnly = false

'关闭日期

Bug_Fields("BG_CLOSING_DATE").IsReadOnly= false

'详细描述

Bug_Fields("BG_DESCRIPTION").IsReadOnly = false

'备注

Bug_Fields("BG_DEV_COMMENTS").IsReadOnly = false

'打开次数

Bug_Fields("BG_USER_11").IsReadOnly = false

Bug_Fields("BG_USER_17").IsReadOnly= false

end if

'客服组不能指定程序员,责任人和计划完成日期

If User.IsInGroup("客服组")then

ifBug_Fields("BG_USER_07").Value <> "关闭" Then

Bug_Fields("BG_USER_15").IsReadOnly = true

Bug_Fields("BG_RESPONSIBLE").IsReadOnly = true

Bug_Fields("BG_USER_05").IsReadOnly = true

end if

end if

'进入修改界面,必填字段设置

ifBug_Fields("BG_SUMMARY").IsReadOnly = false then

'标题

Bug_Fields("BG_SUMMARY").IsRequired = True

end if

if Bug_Fields("BG_USER_08").IsReadOnly= false then

'所属模块

Bug_Fields("BG_USER_08").IsRequired = True

end if

ifBug_Fields("BG_SEVERITY").IsReadOnly = false then

'严重级别

Bug_Fields("BG_SEVERITY").IsRequired = True

end if

ifBug_Fields("BG_USER_02").IsReadOnly = false then

'重现标志

Bug_Fields("BG_USER_02").IsRequired = True

end if

ifBug_Fields("BG_USER_09").IsReadOnly = false then

'遗留标志

SetFieldApp "BG_USER_09", True,False, 0, 5

Bug_Fields("BG_USER_09").IsRequired = True

end if

if Bug_Fields("BG_USER_13").IsReadOnly= false then

'发现难度

SetFieldApp "BG_USER_13", True,False, 0, 6

Bug_Fields("BG_USER_13").IsRequired = True

end if

ifBug_Fields("BG_DETECTION_VERSION").IsReadOnly = false then

'发现版本

Bug_Fields("BG_DETECTION_VERSION").IsRequired= true

end if

ifBug_Fields("BG_USER_07").IsReadOnly = false then

'状态

Bug_Fields("BG_USER_07").IsRequired = True

end if

ifBug_Fields("BG_DETECTED_BY").IsReadOnly = false then

'测试员

Bug_Fields("BG_DETECTED_BY").IsRequired= True

end if

If(Bug_Fields("BG_USER_07").Value = "已处理")Then

'处理结果

ifBug_Fields("BG_USER_01").isreadonly = false then

Bug_Fields("BG_USER_01").IsRequired = True

end if

end if

if Bug_Fields("BG_USER_01").Value ="已经修复" or Bug_Fields("BG_USER_01").Value = "无法解决"_

or Bug_Fields("BG_USER_01").Value= "延期处理" then

'缺陷来源

ifBug_Fields("BG_USER_12").isreadonly = false then

Bug_Fields("BG_USER_12").IsRequired = True

end if

end if