My question is mostly related to getting some recommendations around on best practices.
In my organization mostly the developers write the automated tests. Automation test UI /API and regression tests live with the application codebase. Only one master branch.
- App Code and test automation code resides on GitHub.
- The developer works on an application feature, make changes to the automation script, checks it on GitHub, create a PR and after review merges the code with the master.
- Jenkins build kicks-off, runs UI, integration, and UI tests and deploy the code in "Dev"
The problem at hand is when we try to run the tests in regression it breaks because the application changes in "Dev" is not yet available in "TEST" region.
How would you handle this? Would you have a separate repository for automation?
BTW, all automated tests are in Protractor + Jasmine.