I use a few of the built in event handlers in test complete with my own customized scripts.
For example: I have a script unit called reset. What it essentially does is close out the app, and reset to a certain point, so that the next linked test will run from there.
Then I use the event handler called "on stop test" to reset calling my script unit(I note this out when running individually). I have also just called the reset within if, then, else statements as my own way of error handling.