测试进阶之-通过SVN钩子技术实现测试版本自动发布-软件测试_第1页
测试进阶之-通过SVN钩子技术实现测试版本自动发布-软件测试_第2页
测试进阶之-通过SVN钩子技术实现测试版本自动发布-软件测试_第3页
测试进阶之-通过SVN钩子技术实现测试版本自动发布-软件测试_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

测试进阶之——通过SVN钩子技术实现测试版本自动发布(加微测试微信群交流)上篇文章学习了怎么在Linux系统下搭建SVN服务器,今天我们继续学习怎么通过SVN实现软件(如网站)测试版本的自动部署。众所周知,软件需要不定期的发布版本,在测试环境,甚至一天一个测试版本,那有没有什么方便快捷的方法,让保存在SVN上的代码快速的发布到测试环境呢?答案是肯定的,不仅仅快速,而且是可以即时发布的——通过SVN的hooks技术(钩子技术)。cd到hook目录,ls查看下文件列表:上图可以看到有许多模板文件,逐个解释一下,其中post-commit:提交完成,成功创建版本之后执行该钩子post-unlock:对文件进行解锁操作之后执行该脚本pre-revprop-change:在修改revision属性之前,执行该脚本post-lock:文件进行加锁操作之后执行该脚本pre-commit:在提交之前,执行该脚本pre-unlock:对文件进行解锁操作之前执行该脚本post-revprop-change:修改revision属性之后,执行该脚本pre-lock:对文件进行加锁操作之前执行该脚本start-commit:在客户端还没有向服务器提交数据之前,执行执行该脚本这就是SVN的钩子(hooks)技术。通过钩子技术,我们可以编写各种钩子脚本,那么SVN客户端在操作文件各环节(如提交、开始提交、加锁、解锁等)前后就会对应调用并执行这些钩子脚本,达到我们的各种目的。现在想在每次提交完成后,就自动发布更新的代码到部署测试版本的目录下。那我们使用post-commit脚本编写一个提交完成的钩子脚本1:在Linux本机checkout一个工作副本到/home/lemon目录下,作为我们站点发布的2:在hooks目录下新建脚本vim/var/svn/lemon/hooks/post-commit,新建并编辑提交完成的脚本post-commit如下#!/bin/shexport.UTF-8exportLC_ALL=zh_CN.UTF-8exportLANGUAGE=zh_CN.UTF-8svnupdatesvn://127.0.0.1/lemon/home/lemon--usernamelemon1--password123456这里的svnupdatesvn://127.0.0.1/lemon/home/lemon--usernamelemon1--password123456表示当有提交完成的操作时,就更新/home/lemon副本。其中--usernamelemon1--password123456:表示使用该用户名、密码进行更新操作。3:授执行权限编辑完成的脚本暂时是没有执行权限的,使用chmod+xpost-commit为脚本文件授执行权限。执行完毕,可以看到脚本已经具备执行权限了4:测试是否同步更新在我们的另外一台主机checkout一个副本,新建一个文件hello.html,然后提交,模拟版本发布。然后cd到Linux的/home/lemon工作副本下,可以看到这个副本也同步更新hello.html通过以上步骤,我们就解决了不用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论