For our purposes, the implementation of source control for recorded tests kind of missed the mark - I’ll try to explain why.
When developing a new automated test or updating an existing one, I’m not only touching that one test, but also many other shared sub-tests, elements, parameters, etc. So when I view history, I don’t only want to see that one test, but all changes that were made during that chunk of work. Ideally, each time we start working on a new test or updating an existing one, we could create a new branch so that all these changes could be captured and tracked together.
I have jobs that run all the time, and sometimes WIP that touches shared sub-tests will cause completed tests and jobs to fail until that work is fully tested and all affected tests are fixed. If we were able to do all WIP in branches, this would also allow us to have a “master” branch, which the WIP branch would only be merged into once it was fully tested and ready. So our scheduled jobs would be fully reliable as they would only run against the master branch.
If we were able to implement branches into the source control, that would be game changing!