I’d say no. The car in the production line gets inspected in the bay it is being built. When it doesn’t pass quality control, it stays there, and continues to get worked on. It doesn’t leave the paint booth, until it’s passed paint quality control. Why, because you cannot physically move the car backward, there’s another car already in there.
You need to think of your definition of done for the phase you are in. Unit testing and smoke testing should be done by a developer, as well as peer review. This happens in development. Where the tester finds quality issues, defects are raised, and the ticket is out in a waiting state until those defects are resolved, or if those defects are trivial and can be accepted for a production release, the product is released, with the defects to be attended to when needed.
If you don’t do this, you hide rework, and make it difficult to track team effectiveness. It also allows for jobs to suffer from scope creep as they stay in the workflow longer than needed.
I’d suggest avoiding moving jobs backward, and instead instilling explicit policies around the definition of done for each phase of your workflow, and use defects to make it transparent when issues are detected.