you have to make the difference between the result of a step and the result of the Workflow.
if the workflow is on error then the on error is played but if you test the step, the step is on error but the workflow is not yet on error.
when the Workflow is on error then you have a second message