`

rails Rspec测试框架

阅读更多

Rspec rails的测试框架

 

gem 'rspec-rails' ||  https://github.com/rspec/rspec-rails

 

# 添加gem到Gemfile

group :development, :test do

  gem 'rspec-rails', '~> 2.0'

end 

 

# 安装Rspec

rails generate rspec:install

 

# rspec 执行命令, bundle exec 是用你项目下的版本执行

bundle exec rspec

 

# 测试model下的文件有没有通过

bundle exec rspec spec/models

 

# 单写一个文件时测试这个文件通过没有

bundle exec rspec spec/controllers/accounts_controller_spec.rb

 

require "spec_helper"

# 顶级的描述
describe PostsController do
   # 下一级的描述,例如一个方法的描述
  describe "GET #index" do
    # 场景的描述
    context "get all posts"
     # 实际问题的描述
    it "responds successfully with an HTTP 200 status code" do
       ......
    end
  end
end

# 一般用这些来描述你的测试用例,输出的时候也有缩进,这样能更好的查找错误。

 

require 'spec_helper'

describe CommentsController do
  describe "POST create" do
    # 模拟登陆,current_user 就可以用了
    login_user

    context "***" do
      it "***" do
        # post这个方法第一个参数就是action,第二个参数就是params里的参数 
        post :create, {id: album.id, body: 'album comment', type: 'Album'}
        #  expect 是所期望的,执行的结果里有got的话,意思实际结果
        expect()
      end
    end
end

#  expect(assigns(:comment))  期望controller里的@comment这个变量的值为... 

 

 

 

 

分享到:
评论

相关推荐

    使用RSpec 测试Rails 程序.pdf

    **RSpec**(RSpec is not a unit testing framework)是一种为Ruby编程语言设计的行为驱动开发(BDD)框架,而**Rails**是基于Ruby的一个全栈web应用框架。将RSpec与Rails相结合可以有效地进行单元测试、集成测试...

    rspec测试.pdf

    《RSpec测试:行为驱动开发与RSpec、Cucumber及其他工具》 RSpec是一种用于Ruby语言的单元测试框架,它提倡一种称为“行为驱动开发”(Behavior Driven Development,BDD)的测试方式。RSpec允许开发者以自然语言的...

    rspec-rails:适用于Rails 5+的RSpec

    rspec-rails rspec-rails将测试框架带到作为其默认测试框架Minitest的替代品。 在RSpec中,测试不仅仅是验证您的应用程序代码的脚本。 它们也是规范(或简称为spec ):用纯英语表示的有关应用程序行为的详细说明。 ...

    RSepc rails 测试框架介绍

    RSepc 是一款基于 Ruby 的行为驱动开发(BDD)测试框架,它被广泛应用于 Rails 应用程序的测试。RSpec 提供了一种清晰且简洁的方式来编写可读性强的测试代码,使得测试用例更像是对软件行为的规范描述,而不是简单的...

    在rails中 使用RSpec生产CHM文档

    RSpec是Rails开发中的一个行为驱动开发(BDD)测试框架,用于编写可读性强、易于理解的测试代码。通过RSpec,开发者可以清晰地表述他们期望的代码行为,确保软件按预期工作。在本案例中,它可能被用来验证生成CHM...

    RSpec 3.1中文版

    使用RSpec进行Rails程序的测试,可以帮助开发者遵循测试驱动开发(TDD)的原则,实现高效、可维护的代码开发。 本书基于Rails 4.1版本,使用了一个完整的应用案例来讲解RSpec在Rails中的使用。Rails 4.1作为Rails框架...

    rails框架指南.pdf

    4. 测试驱动开发(TDD):Rails从一开始就内置了测试框架,如MiniTest和RSpec,鼓励开发者在编码前编写测试用例。 5. 丰富的插件和gem包:Rails社区提供了大量的插件和gem包,这些扩展极大地丰富了Rails的功能,方便...

    自动化生成支持cucumber,Rspec的Rails(持续更新中)

    RSpec则是一个单元测试框架,它允许开发者编写简洁、可读性强的测试用例。 在Ruby on Rails项目中,Cucumber通常用来编写高层次的功能测试,这些测试描述了系统的行为,而RSpec则用于编写单元测试和集成测试,关注...

    rspec_receitas:几个RSpec测试配方

    `rspec_receitas` 是一个专注于RSpec测试框架的项目,它提供了一系列测试示例,用于帮助开发者更好地理解和应用RSpec在Ruby on Rails 5应用程序中的实践。RSpec是Ruby社区广泛使用的测试工具,它提供了行为驱动开发...

    rails_apps_testing:为Rails应用程序设置测试框架

    如果您不熟悉测试,那么我已经编写了有关使用RSPec进行Rails测试的教程:关于使用此gem来建立测试框架。 gem修改Rails应用程序并配置: –安装支持Rails的RSpec gem –测试网页–的干净选择 –创建测试数据 –在Web...

    rails学习教程

    Rails强调TDD(测试驱动开发),内置了Test::Unit和RSpec测试框架。编写测试可以帮助你确保代码质量,提前发现和修复问题。 八、Scaffolding Rails的scaffolding功能能快速生成一个基本的CRUD(创建、读取、更新、...

    rails2.3.2

    5. 测试框架:Rails 内置了测试支持,包括 Unit 测试、Functional 测试和Integration 测试,使用 RSpec 和 Test::Unit 等工具,确保代码的质量和可维护性。 6. 开发者工具:Rails 2.3.x 包含了 Rails Console,一个...

    rails指南 中文版

    7. **Testing**:Rails强调测试驱动开发,内置了RSpec、Minitest等测试框架,支持单元测试、集成测试和功能测试,确保代码质量。 8. **Asset Pipeline**:Rails的资产管道处理JavaScript、CSS和图像等静态资源,...

    Ruby on Rails实践

    Rails内置了Test::Unit和RSpec等测试框架,开发者可以通过编写测试先于代码来确保程序的正确性。测试覆盖包括单元测试、集成测试和功能测试。 Rails还提供了丰富的插件和gem库,如Devise用于身份验证,CanCanCan...

    Ruby-Granite一种Rails应用程序体系结构框架

    7. **自动化测试**:为了确保代码质量,Granite通常会集成测试框架,如RSpec或Minitest,以支持自动化测试和持续集成。 8. **代码生成工具**:类似Rails的scaffold,Granite可能提供代码生成器,帮助快速搭建项目...

    Rails 4 Test Prescriptions.pdf

    - **RSpec**:RSpec 是一个行为驱动开发(BDD)框架,广泛应用于 Rails 开发中。它提供了一种清晰、易于理解的方式来编写测试。 - **Capybara**:这是一个强大的工具,用于功能测试(即端到端测试),它可以模拟用户在...

    ruby on rails最新版

    在实际的开发环境中,这样的压缩包通常还会包含数据库连接器(如pg或mysql2)、开发工具(如bundler用于管理依赖)、测试框架(如rspec)、以及可能的示例项目或模板。 在使用Ruby on Rails最新版时,开发者可以...

    the art of rails

    第12章:行为驱动开发与RSpec,这章节应该会介绍Rails社区推崇的行为驱动开发方法以及RSpec测试框架的使用。 Rails框架是针对Web应用开发的一种高效工具,它极大地提高了开发效率并简化了复杂的Web开发流程。Ruby...

Global site tag (gtag.js) - Google Analytics