注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

韩国恺的博客

hanguokai.com

 
 
 

日志

 
 

2009-05-03 自动构建和自动测试  

2010-01-10 01:16:01|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
    不要做重复的工作,对于编码、部署应用、测试等等日常工作都可以自动化完成,因为你是人,不适合做这些工作,而且简单重复的工作特别适合机器完成,而人完成这些反而容易犯各种错误,结果又要花更多的时间来找出问题,重复工作就是一种浪费!
    比如我们的项目众多,每个项目又都要取出多个模块,不同项目之间又都有些差异。从cvs中自动正确的取出和构建需要的项目,这一复杂、重复又易犯错误的过程当然可以自动化完成!我在添加了一组可以自动化完成此工作的脚本。
    又如我们所有的项目不仅仅要保证可以从cvs中正确的取出,还需要保证可以成功的构建,没有源代码编译错误,没有gram编译错误,最好构建过程中还能把所有测试都跑一边。当然还可以再包括静态代码分析等等其它自动化的辅助工作,这些都是没有成本的。我已经配置了cruisecontrol作为持续集成和标准构建服务器,可以定时更新cvs重新构建,如果有问题会及时发现;同时作为标准构建,就有了唯一权威的构建版本,避免了因为在个人开发环境下可能发生的问题,也杜绝了只能在某个人的机器上才能构建出来的现象。
    web工程的构建和部署由于不是自动化也经常会出现一些小问题,一些配置没有修改,如数据库配置、pool中资源数量等等,或者直接就服务器上改了而没有同步到cvs,下次部署就很可能出错。因为经常更新,每次部署都要做很多手工修改,这样重复工作既是在浪费时间,又很容易出错。而这些问题也可以通过自动化的方式解决,标准的构建,所有的配置修改也自动完成。
    网页的测试也是重复工作,每天来一遍,既枯燥又容易遗漏,也因此没有经常做。重复的工作只做一次,剩下的就可以自动化完成。比如,Selenium项目(http://seleniumhq.org/)就提供这样的web应用测试工具,可以自动记录web上的操作并保存为一个test case,可以编辑,当然可以回放。这样掌握这个工具,以后就可以完全自动化进行重复的测试工作。
    做msn机器人的时候,我们帮忙进行测试。这个过程也可以自动完成,只要再写一个msn机器人负责去自动测试就可以了!用这个机器人将准备好的一组测试用例一个一个的自动发给另一个msn机器人,并判断返回是否正确。
    大家的时间精力非常有限,重复是软件开发中有最大敌人,如果你发现自己在做重复的工作,那就考虑一下是否可以自动化的完成。
  评论这张
 
阅读(149)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018