March 18, 2011

Using Time Tracking in TestTrack TCM

Helix ALM
Reporting
Time tracking in TestTrack is a feature that has been written about on this blog here and there. Time tracking is a pretty straightforward concept. You estimate how long it will take to complete a task and, as you progress, you report on how much effort you have put in and how much time you think there is left to complete the task. However, time tracking in TestTrack TCM can be tricky because there are two objects, the test case and the test run, to track time for. It can be confusing to know which object you are placing an estimate on and what it really means.

Time Tracking for Test Cases

Time tracking for test cases in TestTrack centers around time that takes a test case from the authoring stage to the point where it is ready to be executed (test runs generated). In my work as a consultant, I have not seen time tracking used for test cases. In the following example, 3 hours are entered in the Ready event to indicate that it took 3 hours to get the test case to be ready for execution. [caption id="attachment_7498" align="aligncenter" width="403" caption="Test Case Event"]Test Case Event[/caption] To perform time tracking on test cases, workflow events are used in the same manner as they are used for defects and requirements.

Time Tracking for Test Runs

Time tracking in test runs centers around the time that it takes to execute a test. Time tracking is more widely implemented in this aspect. This allows managers to gauge progress on testing efforts, predict the amount of effort needed for a future cycle, and more. Placing estimate on test runs There are two ways of placing estimates on test runs. One is through the workflow in the same manner as test cases. This is the preferred method if the time to execute a test run will vary based on the variants. In this scenario, the estimate is not placed on the test run until it has been generated. An estimate will be needed every time a test run is generated. The other way is to add an estimate when the test case is authored. On the detail tab of the test case, there is an Estimated Run Time field where you can enter the estimated time to execute the test. [caption id="attachment_7485" align="aligncenter" width="511" caption="Estimated Run Time Field"]Estimated Run Time Field[/caption] When test runs are generated for this test case, the estimate will also be generated. This is the preferred method if the time to execute each test run will not vary based on the variants selected. To report work done against the test run and automatically calculate the remaining time, use workflow events just like you would with other artifacts. TestTrack takes the time entered in hh:mm:ss format and converts it to decimal format in order to provide a uniform format. [caption id="attachment_7535" align="aligncenter" width="532" caption="Test Run Time Tracking"]Test Run Time Tracking[/caption] This is also used to calculate other time tracking fields, like Percent Done.

[caption id="attachment_7506" align="aligncenter" width="486" caption="Percent Done"]Percent Done[/caption]

Regardless of how you do it, placing estimates on test runs will allow you to properly gauge the effort needed to complete a test cycle and properly assign work that testers will be able to finish.