最近换在ubuntu下开发ruby,明显测试环境载入快了很多,自己最近一直在研究怎么将rails工程做持续发布,无奈第一接触linux类系统,还有诸多问题


为什么我要去整这个玩意?


这也是持续集成的一个重要步骤,我希望最后我的测试环境能完成下面需求

1.将svn上的最新版本下载到部署环境中

2.自动发布最新版本

3.每晚1点自动运行cucumber

4.通过页面方式查看前夜运行结果。

很明显现在的功能只是完成了第4步(完成顺序有些奇怪)


OK!我先来回顾下我的解决思路和方法


1.要完成输出HTML格式的文件,听起来很难,其实cucumber框架的设计者已经考虑这样的需求,其实不管是输出TEXT,还是其他样式,cucumber本身就带有这样的功能只需要一个简单的命令

cucumber --format html --out=/var/www/features_report.html

这就是整个输入命令--format html 就是说明这是要输出HTML型的报告(当然你可以输出其他格式比如text,入股你觉得cucumber自带的报告格式很难看,你去找第三方格式比如viewcumber)

但是每次都输入这么长的代码确实叫人心烦,OK!这里介绍一种cucumber脚本方法,在你的工程目录下config/cucumber.yml

html_report: --format progress --format html --out=/var/www/features_report.html

那么现在我们只用在运行时候敲入

cucumber --profile html_report
or
cucumber -p html_report

这样执行的时候我们就可以自动输出HTML文件到某个文件夹了。


2.现在我们有了html文件,那么我需要一个发布的方式,如果只是做静态网页发布,我使用的是apache服务器,在ubuntu下的安装命令是

sudo apt-get install apache2

安装完成以后,我们只需要要把静态页面放在他生成的目录/var/www下面,就如我命令里面所写的out=/var/www/features_report.html 这就是直接输出到这个目录下