Could you help with how the workflow looked like? How does it ensure that the code is tested?
It ensures someone else has moved the card to the next status (or, that automated tests have passed and moved it to the next status by automation)
You can permission who can move to what status.
As a random dev, I personally wouldn’t recommend it unless there are legal requirements for such separation (or your org has lawyers that think such requirement exists)