Both successful deployment and functional testing are often considered part of the definition of done.

When we´re building continuous delivery pipelines it’s because we want our developers to have access to, and to execute, the full definition of done.

Use simulators, emulators, containers and VMs to verify your definition of done and ensure stable releases.
The closer to production your testing environment, the more confidence you can have in your changes.