95、Jenkins部署.net持续集成自动化测试环境
Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作。
H/5 * * * * (每5分钟检查一次源码变化)
Build periodically:周期进行项目构建(它不care源码是否发生变化)
0 2 * * * (每天2:00 必须build一次源码)
我的配置如下:
MSBuilder Version 为之前配置的 "Version 4.0"
MSBuild Build File 是项目文件或者工程文件的名称
然后就是MSBuild的命令行参数了。
/t:Rebuild 表示每次都重建,不使用增量编译
/toolsvervsion:4.0 表示使用4.0版本编译工具
/property:Configuration=Release 表示编译Release版本,
/property:TargetFrameworkVersion=v4.5表示编译的目标是.NET 4.5
**4. Post build task配置**
编译完成后,可以添加post build task判断编译是否报错,如果没有报错则执行输出命令 提示编译成功(或者调用其它命令脚本)。
编译日志结果
如果成功,则显示 0 个错误,在编译成功后可以启动单元测试
通过post build task进行判断后,进行部署,如果失败则不会进行部署。
**5. Publish Over FTP配置 **
编译成功后使用FTP把编译后的目录文件上传到服务器。
(这里说一下,部署方式有很多种,对于.net系统来说,就是拷贝编译后的文件到服务器,不用重启服务器也可以,所以我这里就用最简单的方法上传)
name 选择之前配置的 FTP Server
Verbose output in console 选项是指上传文件的过程是否在控制台显示,不一般不需要勾选。
Retry 连接失败重试次数
Delay 连接失败后的重试间隔
Transfers
Transfer Set Source files 设置要上传的文件路径 ** 表示上传路径下的文件夹及子文件夹(相对路径是项目的workspace)
Remove prefix 去掉前缀,指在上面的时候去掉路径的前缀。比如我们上传一个路径是 \pub\website\** 的路径,实际我们指希望上传website中的文件,并不要\pub\website 这样的目录,就可以去掉路径前缀。
更多高级详细的配置方式可以查看官网说明:https://wiki.jenkins-ci.org/display/JENKINS/Publish+Over+FTP+Plugin
这样配置完成后,编译部署构建就完成了。接下来再创建一个自动化测试构建,部署完成后,自动触发自动化测试构建。
##4. 自动测试
新建项目过程和上面系统创建构建方式一样,svn地址配置成自己的测试脚本即可。
关键步骤在,【构建触发器】
这里选择 Build after other projects are built.
Projects to watch 填写要测试的项目构建,这样如果 ERP系统 项目编译部署完成后,就会触发自动化测试的构建。