`
swachian
  • 浏览: 75161 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

用RSpec来test

阅读更多

http://delynnberry.com/projects/acts-as-dropdown/

 

安装RSpec http://rspec.info/documentation/rails/install.html

ruby script/plugin install http://rspec.rubyforge.org/svn/tags/CURRENT/rspec
ruby script/plugin install http://rspec.rubyforge.org/svn/tags/CURRENT/rspec_on_rails

 gem install rspec

 

arbitrary predicate.

the magic of method_missing

 

target.should be_true
target.should be_false
target.should be_nil
target.should_not be_nil

collection.should be_empty #passes if target.empty?
target.should_not be_empty # passes unless target.empty?
target.should_not be_under_age(13) # passes unless target.under_age?(13)


“a string”.should be_an_instance_of(String)
3.should be_a_kind_of(Fixnum)
3.should be_a_kind_of(Numeric)
3.should be_an_instance_of(Fixnum)
3.should_not be_instance_of(Numeric) #fails



 

describe “people in general”, :shared => true do
  it “should have a name” do
    @person.name.should_not be_nil
  end
  it “should have an age” do
    @person.age.should_not be_nil
  end
end

describe Teacher do
  before(:each) do
    @person = Teacher.new(“Ms. Smith”, 30, 50000)
  end
  
  it_should_behave_like “people in general”
  
  it “should have a salary” do
    @person.salary.should == 50000
  end
end

 :each :all

 

运行方式

ruby script/generate rspec

ruby script/generate rspec_model LeaveNumberLog(ruby script/generate rspec _scaffold User name:string age:integer )

 

编写

 

ruby script\spec_server

spec --drb spec\models\leave_number_log_spec.rb

或者

ruby script/spec spec

group controller examples by action and HTTP method.

 

 

 

rake db:fixtures:load FIXTURE=table1,table2

把夹具里面的数据导到dev环境中。

 

ruby script/plugin install  http://www.realityforge.org/svn/public/code/debug-view-helper/trunk/

 

 

分享到:
评论

相关推荐

    RSpectest-double框架rspec-mocks.zip

    rspec-mocks 是一个 rspec 的 test-double 框架,支持 method stubs, fakes 和生成 test-doubls 和类似真的对象的预期消息。 标签:rspec

    rspec 入门者学习

    - 添加依赖到 Gemfile: `group :development, :test do gem 'rspec' end` - 执行 `bundle install` 2. **配置 RSpec**: - 创建 `.rspec` 文件来配置 RSpec 的行为。 - 可以通过 `.rspec` 文件指定默认的命令行...

    Pragmatic.The RSpec Book.2010.pdf

    1. **灵活的语法**:RSpec 允许使用自定义匹配器来描述期望的行为,这使得测试代码更加直观。 2. **易于理解**:RSpec 的输出非常人性化,即使是非技术人员也能轻松阅读并理解测试结果。 3. **支持多种环境**:RSpec...

    The RSpec Book 正式版 非beta

    RSpec supports Test Driven Development in Ruby through the BDD lens, keeping your focus on design and documentation while also supporting thorough testing and quick fault isolation. Cucumber, RSpec's...

    RSpec.Essentials

    **RSpec Essentials** is not just a technical manual but also a practical guide that equips developers with the knowledge and skills needed to effectively test their Ruby applications. Whether you are ...

    Ruby-RSpec和Minitest匹配器来预防N1查询问题

    总的来说,使用RSpec和Minitest的匹配器以及专门的Gem,如`n_plus_one_control`,可以帮助我们有效地预防和检测N+1查询问题,从而提升Ruby应用的性能。在开发过程中,定期进行性能测试和代码审查,结合这些工具,...

    rspec-mocks:RSpec的“ test double”框架,支持存根和模拟

    安装gem install rspec # for rspec-core, rspec-expectations, rspec-mocksgem install rspec-mocks # for rspec-mocks only想要与main分支对抗吗? 您还需要包括相关的RSpec存储库。 将以下内容添加到您的Gemfile ...

    rspec-setup-rails:如何使用 Rspec 快速设置导轨

    ##在 Rails 中快速设置 RSpec,使用 Capybara、Factory Girl、Database Cleaner、Shoulda-matchers 等... 在命令行中,运行rails new app_name -T (关闭默认测试单元) 将 Gems 添加到 gemfile,然后捆绑。 gem '...

    The Rspec Book -- BDD methodology

    - **清晰的测试结构**:RSpec支持使用`describe`和`context`块来组织测试逻辑,使测试代码结构更加清晰。 - **使用模拟对象**:RSpec提供了强大的模拟对象功能,可以在测试中模拟外部系统或复杂依赖,以便更专注于...

    Rails 4 Test Prescriptions

    3. **深度剖析RSpec**:作为RSpec领域内的一位权威专家,Noel Rappin在书中对RSpec的使用方法进行了深度剖析,为读者揭示了这一工具的强大功能及其在提高测试效率方面的作用。 4. **广泛的适用性**:无论你是正在...

    db-query-matchers, 用于数据库查询的RSpec匹配器.zip

    db-query-matchers, 用于数据库查询的RSpec匹配器 db-query-matchers 用于数据库查询的RSpec匹配器。安装在你的应用程序中添加这一行,最好在你的test 组中:gem 'db-query-matchers'然后执行:bundle

    RSpec 讓你愛上寫測試

    RSpec 是一個針對 Ruby 語言設計的測試框架,它採用了 Behaviour-Driven Development (BDD) 的方式來撰寫測試,使得測試過程變得更加自然且易讀。通過 RSpec,開發者能夠更好地理解他們正在測試的行為,同時也能更...

    RSpec-bank-main.rar

    在RSpec中,经常使用`double`、`stub`等工具来模拟对象的行为,以便专注于测试特定的功能。例如,在测试交易处理时,可能会模拟银行账户的`deposit`和`withdraw`方法,避免了实际的数据库操作。 七、集成测试与单元...

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

    添加rspec-rails ,以两个:development和:test组的应用程式中Gemfile : # Run against the latest stable releasegroup :development , :test do gem 'rspec-rails' , '~> 4.0.2'end# Or, run

    无涯教程(LearnFk)-RSpec教程完整离线版.pdf

    2. 使用文本编辑器和命令行控制台:在编写和运行RSpec测试代码时,通常需要一个文本编辑器来编写代码,以及命令行控制台来执行命令。在Windows系统中,可以使用cmd.exe来执行命令行指令。 3. 检查Ruby版本:在cmd....

    testbot:[未维护] Testbot是与Rails,RSpec,RSpec2,Test一起使用的测试分发工具

    旧的自述文件Testbot是一个测试分发工具,可与Rails,RSpec,RSpec2,Test :: Unit和Cucumber一起使用。 基本思想是让testbot将测试的负载分散到多台计算机上,以使测试运行更快。 在11台机器(25个内核)上使用...

    rspec-rails-tutorial:使用 RSpec 开发 rails 应用程序

    使用 RSpec 开发 Rails 应用程序 本教程适用于想要使用 RSpec 开发 rails 应用程序的用户。 参考这个 使用 导轨 4.0.4 Ruby 2.0.0 mysql2 0.3.18 文件 group :development , :test do gem 'rspec-rails' gem '...

    rspec_api_helpers:Rspec API的测试助手

    将此添加到您的Gemfile中: gem 'rspec_api_helpers'然后执行: $ bundle或将其自己安装为: $ gem install rspec_api_helpers将其包含在您的spec_helper中 RSpec . configure do | config | # ... config . ...

    RspecTest:Rspecのテスト

    自述文件 该自述文件通常会记录启动和运行应用程序所需的所有步骤。 您可能要讲的内容: Ruby版本 系统依赖 配置 数据库创建 数据库初始化 如何运行测试套件 服务(作业队列,缓存服务器,搜索引擎等) ...

    ngrok-rspec:Ngrok-rspec是一个Ruby,用于通过ngrok使用rspec和capybara测试webhooks

    将此行添加到您的应用程序的Gemfile中: group :test do gem 'ngrok-rspec'end 然后执行: $ bundle 或将其自己安装为: $ gem install ngrok-rspec用法配置rspec RSpec . configure do | config | # any port can ...

Global site tag (gtag.js) - Google Analytics