As we have briefly discussed off-line I'll try to reiterate the assumptions you have expressed:
- testing cycle on a qa branch won't be reset after a blocker (B1) is fixed. The validation is continued from the point where the B1 has been discovered. In the real cluster test env. it means that only fresh deployment needs to be done. - in some cases a judgment call has to be made on whether or not testing cycle needs to be reset (e.g. in cases of massive fixes and so on). The chances are, however, that critical fixes are usually isolated and don't affect the rest of the code base. It isn't like I disagree with the assumptions above. They are valid... under two conditions: - a test harness in use (i.e. a team of test engineers running on manual testing errand or an automated solution similar to Herriot) supports the notion of interrupted test cycle - there's a sound regression tests suite which can guarantee the a fix B2 doesn't invalidate fix B1 from before. Cos On Tue, Aug 24, 2010 at 12:08AM, Owen O'Malley wrote: > > On Aug 23, 2010, at 4:17 PM, Konstantin Boudnik wrote: > > > If I may... why QA need source code branches rather than a > > sequential builds > > from the trunk (as it usually done)? > > For QA to be effective, they can't handle a different artifact every > day with a new set of features. So the plan is to take a snapshot and > test that. However, if bugs are found that block testing they need > precisely those bugs fixed with out any additional features. So you > need branches to support that. So a sample cycle would look like: > > 1. create build-1 and test it, discovering bugs B1, B2, and B3. Only > B1 is blocking further testing. > 2. meanwhile, someone has checked in feature F1 into trunk > 3. B1 is fixed in the branch and trunk. B2 and B3 are just fixed in > trunk > 4. when build-2 is built it only has B1's fix > 5. at the end of the cycle, we rebase the branch to trunk and pickup > B1, B2, B3 and F1 into build-3. > > If you don't have a branch, you would get F1 whether you want it or not. > > -- Owen
pgpSXqXZEPgFh.pgp
Description: PGP signature
