I guess the first thing is a disclaimer because what I am going to write does not recognise the normal restraints we all work under ie, time, on/offshore resources, budget, shared environments and even winter flu that can literally stop a release coming in on time. It’s my Nirvana or expectation of a perfect release cycle applying Agile testing principals to the entire cycle. Ideally, the tester would always be in the middle of two cycles at once possibly three depending on how & where UAT is being performed. That’s when it gets exciting with all the different environments/builds – version control is the testers best friend. Long live Git!