Using State Counters (HP ALM/QC)
This is a technical entry with my research-and-experiment notes. Feel free to add or argue. Try at your own risk.
I continue my study journal figuring out HP ALM configuration. This entry is about customization with VBScript.
General Idea
How many times we had to reopen failed fixes? How many times regression defects ruined testing schedule? Tracking such occurrences is useful both for learning testing lessons and for project management. There’s even a metric called Fault Feedback Ratio.
But how technically we can obtain such data? Obviously, we don’t want to know just the number of issues currently existing in ‘Reopen’ state.. One way is to utilize Workflow events system and track state transitioning in real-time, increasing counters of failures and reopens every time the issue transitions to this state.
Code Examples
Initialize Counters
Sub Template_Bug_New
'...
'start reopen counter
Bug_Fields.Field("BG_USER_TEMPLATE_01").Value = 0
'start failed counter
Bug_Fields.Field("BG_USER_TEMPLATE_17").Value = 0
'...
End Sub
Update Counters
Function Template_Bug_CanPost
'...
'Count Reopen and Count Failed
If Bug_Fields("BG_STATUS").IsModified AND (Bug_Fields("BG_STATUS").Value = "Reopen") Then
'reopen
If Bug_Fields("BG_USER_TEMPLATE_01").IsNull Then
Bug_Fields("BG_USER_TEMPLATE_01").Value = 1
Else
Bug_Fields("BG_USER_TEMPLATE_01").Value = Bug_Fields("BG_USER_TEMPLATE_01").Value + 1
End If
'failed
If Bug_Fields("BG_USER_TEMPLATE_14").IsModified AND (Bug_Fields("BG_USER_TEMPLATE_14").Value = "Failed") Then
If Bug_Fields("BG_USER_TEMPLATE_17").IsNull Then
Bug_Fields("BG_USER_TEMPLATE_17").Value = 1
Else
Bug_Fields("BG_USER_TEMPLATE_17").Value = Bug_Fields("BG_USER_TEMPLATE_17").Value + 1
End If
End If
End If
'...
End Function

