如何使用集成测试进行版本控制?

时间:2011-04-03 14:50:12

标签: version-control

我正在开展一个我正在进行集成/软件测试的项目。

最初我们在与开发相同的分支上工作,但问题是开发分支正在快速创建新功能。创建集成代码变得困难,因为分支不稳定。我们确实在这个分支中有一个回归来检查旧功能是否正常工作,但我们发现我们需要一些喘息空间,以便我们可以创建一些初始测试代码。

我们的想法是创建一个分支(所以开发DEV和我们的STAGE),以便我们有稳定的代码。一旦我们觉得我们的测试代码是稳定的,我们可以将DEV合并到我们的STAGE中,然后我们就会看到什么破坏了。如果一切正常,我们可以将测试代码添加回DEV,以便我们测试的新功能不会再次破坏。

问题在于修复错误。

在我们创建集成测试代码时,开发团队将继续在DEV分支上开发代码。我们将在STAGE分支的代码中找到错误。这可能导致两个senerios中的一个。

  1. 该错误是一个有效的错误。在这种情况下,他们可以从检测到错误修复的STAGE分支出来,修复错误并将其合并到DEV中。

  2. 该错误已在DEV某处修复。我遇到的问题是,如果在DEV中修复了这个错误,那么我们必须将从上一个合并点到修复此错误的所有更改合并到STAGE中。

  3. 这似乎是一个常见问题,即集成团队正在与开发团队合作,而且两个团队都不知道如何解决这个问题。

1 个答案:

答案 0 :(得分:1)

“我遇到的问题是如果在DEV中修复了这个错误,那么我们必须将从上一个合并点到修复此错误的所有更改合并到STAGE中。”

为什么呢?任何体面的源控制系统都应该允许你挑选变化。根据所做的更改,您可能需要进行大量的手动合并,但这当然是可能的。

另一种可能的解决方案是冻结DEV分支,直到提交了STAGE修复程序。