我目前正在与一个分布在美国各地的团队一起进行一个相当大的项目。开发人员定期将代码提交到源存储库。我们有以下应用程序构建(所有都由应用程序管理,没有手动处理):
每个构建都刷新与其关联的数据库。这将清除数据,并验证与新代码一起进行的任何数据库更改都会被拖入。我从测试人员那里听到的一个担忧是,我们需要用一些预期的测试数据预先填充每周构建数据库,而不是开发人员使用的更通用的数据。这似乎是一个合理的关切/需要,是我们正在努力的事情。
我是在抛出我们正在做的事情,看看社会人士是否认为与我们的工作有任何差距,或是否有任何关注。事情似乎很顺利,但感觉可能会更好。你的想法?
发布于 2010-02-23 14:31:12
接下来的另一个步骤是,一旦发布版本通过测试(比如烟雾测试),它就被限定为一个良好的构建(比如黄金构建),并且使用某种标记机制来标记所有的人工制品(代码、安装脚本、makefiles、installable等)。进入了黄金形象的创造。金色构建可能会成为稍后发布的候选版本,也可能不会。
也许你已经在做这件事了,因为你没有提到我补充了我观察到的内容。
发布于 2010-02-23 14:05:17
我们就是这样做的。测试人员本身的DB仅在需要时才被重置。如果我们每周自动刷新这个
打招呼,
斯蒂金
发布于 2010-02-23 15:49:28
我认为你有一个好的,全面的过程,只要它适合当你的客户想要看到更新。我看到的一个可能的差距是,您似乎无法在不到一周的时间内将关键的客户bug修复程序投入生产,因为您的测试构建是每周一次,因此您需要时间让测试人员验证该修复程序。
如果您想以不同的方式思考事物,那么请看一看连续部署上的这篇文章--一开始接受这个概念可能有点困难,但它肯定有一些潜力。
https://stackoverflow.com/questions/2318594
复制相似问题