The script you provided is correct, assuming you didn't use "$chan" literally in your on TEXT event, only in the timers.

Note that test2 and test3 will both appear simultaneously after 3 seconds. Maybe you are overlooking test2 because of that?

Tip: you don't need to name your timers and if you use ".timer" instead of "timer" then the messages regarding their start and stop will become silent.