博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
一年多推行每日构建的经验总结
阅读量:2430 次
发布时间:2019-05-10

本文共 857 字,大约阅读时间需要 2 分钟。

作者:朱金灿

来源:

 

        早在主持开发产品新版本之初,我就有一个略显激进的想法:新产品的测试版本发布频率至少在一周之内。开发人员倾向于感觉自己软件有相当质量才能交出去测试,而我却认为软件质量的提高主要取决于外部驱动力。互联网软件为什么质量高?这么多人用它,bug迅速被发现,迅速被修改。非互联网的软件企业要借鉴这个经验,一方面要在项目中迅速应用产品,另一方面要迅速发布测试版本公司测试人员测试。总之要形成一种外部倒逼机制。

 

       那么如何提高测试版本的发布频率呢?推行每日构建是一个好办法。我们是采用Hudson作为每日构建工具,当然你也可以采用CCNET。使用hudson之前设计好一个每日构建的流程。目前我们的流程是这样的:在设定一个时钟,比如周一到周五0点30分:在服务器上执行下面动作:更新版本库——编译全部源码(成功编译完全部源码就等于生成了软件的最新版本)——制作SDK。这样周一到周五每天测试人员都能得到一个测试版本进行测试。Hudson支持批处理命令来执行,我的做法是把流程的每一步都写一个批处理文件来执行,这个批处理文件也用svn管理起来,而不是直接把批处理命令写在Hudson的Job设置里,这样做的好处是当你变更流程时,只需要修改批处理文件然后提交即可,然后Hudson通过更新版本库就能得到新的批处理命令,而不需要改动Hudson的Job设置。

 

       在推行每日构建时也发现一些问题,一个突出的问题是一些同事往往因为忘记提交一些代码而导致编译失败,然后第二天需要花时间去找编译失败的地方并协调相关同事去提交代码。犯这个错误多是因为粗心引起的,要解决这个问题估计要引入相应的惩罚措施。有次我对同事开玩笑说:“现在不是流行大数据分析吗?让大数据分析也分析一下Hudson的日志。”

 

        每日构建流程其实还有很多地方可以完善的。比如下一步准备把执行自动化测试这一步也加入这个流程。加入自动化测试是为了保证每个测试版本进入人工测试之前都要先具备基本的质量。又比如加入自动代码检查,让服务器自动检查下大家提交的代码质量。

转载地址:http://dzimb.baihongyu.com/

你可能感兴趣的文章
31 道 Java 核心面试题,统统打包给你!
查看>>
太拼了:谷歌第一编程语言小白也能学会!
查看>>
三分钟黑了阿里?马云下死命令留他?吴翰清辟谣:我没黑过阿里
查看>>
如果重新一次高考,你还会选择软件专业当程序员吗? | 每日趣闻
查看>>
如何设计一个安全可靠的 API 接口?
查看>>
一年一度程序员“补课”季来袭,618 背后技术大公开!
查看>>
我和美国 AI 博士聊了聊:2020 年,这件事比存钱更重要!
查看>>
陈芳,高考之后我要学计算机专业,将来做 IT 发财了,我就娶你!
查看>>
“编程能力差的程序员,90%输在这事上!”谷歌AI专家:都是瞎努力!
查看>>
张一鸣做电商:再造一个“抖音”
查看>>
“你写的 Bug 让我来改好吗” | 每日趣闻
查看>>
大厂技术文档:Redis+Nginx+Spring全家桶+Dubbo精选
查看>>
笑死,别再黑程序员了好吗? | 每日趣闻
查看>>
Python 爬取 13966 条运维招聘信息,这些岗位最吃香
查看>>
28 岁退休程序员自述:不是富二代,行政专业出身,非典型程序员
查看>>
那时刚毕业的我,曾参与惊心动魄 3Q 大战
查看>>
程序员爬取 5000+ 口红商品数据,差点比女朋友更懂口红?
查看>>
30 张图解 | 高频面试知识点总结:面试官问我高并发服务模型哪家强?
查看>>
以太坊创始人V 神:普通人看见现在,天才看见未来
查看>>
厉害!从电影花瓶到 Wi-Fi 之母,这才是乘风破浪的姐姐!
查看>>