前言
关于本篇文章介绍的安装步骤可以参考 《Rails Tutorial - by example》 (英文)的3.2节。
至于什么是RSpec, 这里有偏文章可供参考:《使用RSpec进行行为驱动测试》(来自ibm文库)
如何从Rails自带的Test::Unit迁移到RSpec,InfoQ上的的这篇文章提供了一些建议:
《RSpec 1.1 - BDD拥趸者们的盛宴》 (BDD:Behavior-Driven Development)
在开始之前先列出我的环境:
操作系统: OS X 10.6
Ruby: Ruby 1.8.7, Rails 3.0.1, RubyGems 1.3.7
其他: MacPorts 1.9.2, Git 1.7.3.1, Growl 1.2.1
下面开始介绍如何安装RSpec测试环境:
(在安装前需要用 rails new project_name -T,创建一个带测试的项目)
1. 安装 RSpec
sudo gem install rspec
2. 安装 RSpec for Rails
sudo gem install RSpec-rails
3. 安装Webrat
在这里碰到一些问题,webrat以来libxml2库,需要先安装这个开发包:(port 是mac os中macport的指令,macport类似于ubuntu中的新的利软件管理程序,port install类似ubuntu中的apt-get install)
sudo port install libxml2
关于这个问题可以参考:http://dynamiclife.blogbus.com/logs/32015580.html
安装好依赖后安装webrat:
sudo gem install webrat
4. 修改Gemfile配置:
source 'http://rubygems.org'
gem 'rails', '3.0.3'
gem 'sqlite3-ruby', '1.3.2', :require => 'sqlite3'
group :development do
gem 'rspec-rails', '2.3.0'
end
group :test do
gem 'rspec', '2.3.0'
gem 'webrat', '0.7.1'
end
5. 使配置生效:
bundle install
其实直接修改gemfile,然后执行bundle install就可以完成1-3步的完成操作,不过由于我的网速原因,中间终端过bundle install的操作,再执行bundle install报错。这使得我不得不按照这个步骤来安装RSpec。
6. 使用RSpec替换Rails原有的Test:Unit (final step)
rails generate rspec:install
ok~ 到这里RSpec安装环境基本算是完成了,如果顺利的话会在项目的根目录下多出一个spec的目录,这里存放RSpec的相关内容。关于RSpec的使用和相关测试工具会在以后的文章中进行介绍。