Guard与rspec的安装与配置

#rails #test #rspec #model

Guard与RSpec

Guard 可以用来监控文件的变化,由文件的变化可以触发一系列自己设置好的动作。

RSpec 可以是一个灰常好用的ruby的Test框架

这两个货混到一起会有啥效果呢?没错了,他们的配合可以很好的完成自动化单元测试这项艰巨的任务。下面来看如何安装和配置他们吧。

RSpec 安装

灰常简单,输入命令即可

gem install rspec

你可以测试一下,下面是官网的例子。

  • 新建一个game_spec.rb的文件,里面内容为
require './game'
describe Game do
  describe "#score" do
    it "returns 0 for an all gutter game" do
      game = Game.new
      20.times {game.roll(0)}
      expect(game.score).to eq(0)
    end
  end
end
  • 现在在终端里面输入 rspec,当然,测试是无法通过的。因为你还没有开始写代码。
  • 现在来创建一个新的文件game.rb,将代码写进去吧。
class Game
  def roll(pins)
  end

  def score
    0
  end
end
  • 好了,现在再运行rspec就可以发现测试通过了。

Guard的安装

  • 首先创建一个Gemfile,然后里加上这些内容
source 'https://rubygems.org'

group :development do
  gem 'guard'
  gem 'guard-rspec', require: false
end
  • 然后输入bundle命令安装
  • 命令行输入下面命令生成guardfile
bundle exec guard init

Guard与RSpec合体

其实现就可以使用了,但是怎么让他们方便的合体呢?有一个Gem,Guard-Rspec可以帮助你。

  • 在Gemfile的develop组添加 gem 'guard-rspec', require: false
  • 命令行中输入下面命令,在guardfile添加一些配置内容
guard init rspec
  • 好了,高完后,就可以直接输入guard运行啦~
comments powered by Disqus