ruby on rails测试

Rspec测试

Rspec(基本测试)

安装

group :development, :test do
      gem 'rspec-rails', '~> 3.5'
    end

    rails generate rspec:install

重要操作

  文件: spec/rails_helper.rb

  去掉注释(23行):...spec/support/**/*.rb..

第一个测试

  生成模型

    rails g model book name author price

  spec/models/book_spec.rb

    require 'rails_helper'

      RSpec.describe Book, type: :model do
        it "数据正确可以通过测试" do

          book = Book.new(
                name: 'xx',
                author: 'yy',
                price: 123
          )
          expect(book).to be_valid
        end
      end

运行测试

  bundle exec rspec

guard-rspec(测试自动)

安装

  group :development, :test do

    gem 'guard-rspec', '~> 4.7'

  end

  bundle exec guard init rspec

  bundle exec guard

shoulda-matchers(简化测试)

安装

  group :development, :test do

    gem 'shoulda-matchers', '~> 3.1'

  end

新增文件spec/support/shoulda_matchers.rb

  # https://github.com/thoughtbot/shoulda-matchers#getting-started
  RSpec.configure do |config|
    Shoulda::Matchers.configure do |config|
      config.integrate do |with|
        # test framework
        with.test_framework :rspec
        # libraries
        with.library :rails
      end
    end
  end

结果显示格式(.rspec)

选择一个模式即可

文档模式

  --format documentation

fuubar模式

  gem 'fuubar', '~> 2.2'

  --format Fuubar

 
 
 
posted @ 2017-02-28 17:56  吕兴杰  阅读(461)  评论(0编辑  收藏  举报