在进行基于主干的开发时,将什么部署到 QA 环境以及何时部署?
假设主干上有两个提交功能 A 和功能 B。QA 是否应该手动选择使用功能 A 提交构建并部署到 QA 服务器?如果在功能 A 中发现错误会发生什么?修复将在功能 B 之后进入主干,因此部署到 QA 的下一个构建也将包括功能 B。然后 QA 是否应该在该特定构建中测试功能 A 并使功能 B 未经测试?
或者我们是否应该始终将最新版本从主干部署到 QA,并包含所有最新功能?但在这种情况下,随着开发人员不停地将新功能推向主干,越来越多的功能将在每次新构建后最终进入 QA,测试永远不会完成,也不会发布任何东西到生产环境中。