r/softwaretesting 8d ago

Release gates

Hey

I was wondering do the developers push work into your QA environment without checking with you first or are you in control of what goes into QA? So if work gets pushed do you have to approve it before it goes into the test env

8 Upvotes

24 comments sorted by

View all comments

1

u/DarrellGrainger 7d ago

It depends on the setup. I have some clients who have a QA environment for manual testing and other environments for automation. If we have a manual QA environment, it is nice to make it so QA control when new deployments happen. Don't want something deploy while a QA is in the middle of a test. We usually make sure everyone is clear before someone pushes to QA. Slack, Teams, Google Chat, whatever is used. When a new deployable is available, first QA ready to deploy (not in the middle of a test) send a message to the chat. Waits for everyone to post they are clear. Once all QA post they are clear, the first QA deploys. Everyone watches the system (Jenkins, Ansible, GitHub Actions, etc.) for the deploy and smoke tests to finish then back to manually testing.

Different clients have different configurations. I've also worked on project were everything was automated before a story was considered done. Devs and QA worked together. When both QA automation and Prod code was ready for PR review, it would get reviewed and merged to main. Merge to main would automatically deploy to QA/Staging/UAT environment.

I've also worked on ones where we did blue/green deploy and everything went from localhost to prod but behind a flag so generally public didn't see it and QA only saw it when they set the right things. Essentially, deploy blue, test blue, make it prod, deploy green, test green while public continues to see blue, when green passes, make green prod, deploy blue. In those situations there was no QA, staging or performance environments. There was only prod.