`
smallwolf
  • 浏览: 19963 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类

Rspec Test On Rails

阅读更多
  今天,开始为自己的代码补充单元测试,用的是rails 里面的rspec,首先,
1.安装
gem install rspec

2.然后,生成
script/generate rspec_model performances
script/generate rspec_controller performances
:注:如果以前已经用script/generate model ..生成过模型或者控制器的,就选参数n,及不覆盖原来的代码。
3.fixture
 first_performance:
  buskind: 102
  score: 1.0    

4.spec_model
require 'spec_helper'                                                                                                        

describe Performance do
  fixtures :performances

  before(:each) do
    @valid_attributes = { 
      :buskind => 101,
      :score => 1.0 
    }   
  end 

  it "should create a new instance given valid attributes" do
    lambda do  
      Performance.create!(@valid_attributes)
    end.should change(Performance,:count).by(1)
  end 

  it "should be valid" do
    performance = Performance.new @valid_attributes
    performance.should be_valid
  end 
end

5.spec_controller
require 'spec_helper'

describe PerformancesController do
  before(:each) do
    login_as :admin
  end

  it "should save score " do
    lambda do
      xhr :post,:set_performance_score, :performance => {
        :score => 100
      },:id => performances(:first_performance)
    end
    response.should be_success                                                                                               
  end
end                                                                                                                      

6.运行spec测试
spec spec/models/performance_spec.rb
spec spec/controllers/performances_controller.rb

7.另外可以通过tail -f log/test.log查看测试过程信息
1
1
分享到:
评论

相关推荐

    rails 5 test prescriptions build a healthy codebase

    Your Ruby on Rails application is sick. Deadlines are looming, but every time you make the slightest change to the code, something else breaks. Nobody remembers what that tricky piece of code was ...

    belarus-ruby-on-rails:白俄罗斯Ruby on Rails用户组

    白俄罗斯Ruby用户组 白俄罗斯语Ruby用户组-Ruby开发人员社区,旨在交流思想和经验。 我们也对Ruby在我国的发展感兴趣,并互相帮助建立成功的IT事业。 发展 要在本地运行应用程序: ... RAILS_ENV=test ra

    rspec-best-practices:RSpec代码示例

    对于Ruby On Rails项目,我们使用和capybara测试我们的应用程序。测试环境配置Rails使编写测试变得非常容易。 首先,在创建模型和控制器时会生成框架测试代码。 在Rails社区中,已经成为事实上的标准,要求每个测试...

    ruby-on-rails-app

    Ruby on Rails 教程:示例应用程序 这是的示例应用程序。 如果您最终在本教程中遇到代码问题,您可以使用此参考实现来帮助跟踪错误。 特别是,作为第一次调试检查,我建议让测试套件在您的本地机器上传递: cd /...

    groshoppify:一个简单的Ruby on Rails跟踪系统

    Ruby on Rails 6.1 HTML5和Sass PostgreSQL 13.1 测试框架:RSpec 4.0 自举5 建立 如何运行测试: % rspec spec 如何运行开发控制台: % rails console 如何运行开发服务器: % rails server 如何为...

    airbnb_clone:用于克隆 AirBnb 功能的练习 Web 应用程序,内置于 Epicodus 编码训练营。 基于 Ruby on Rails 构建

    哪里BnB AirBnB Clone 在 Epicodus 编程学校使用 Ruby on Rails 构建。 在此处查看演示站点: : 查看以查看已完成和即将推出的功能。 ##用法运行git clone https://github.com/supremebeing7/airbnb_clone.git ...

    app-tdd-rails:Aplicaçãocrianda com最终认可了Testtest自动化com的Rails e Rspec

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

    math_game:一个实验游戏,练习Rails + Hotwire + Turbo

    这是一个实验性游戏,可练习Ruby on Rails + Hotwire + Turbo的组合。 转到查看它正在运行。 邀请朋友一起玩。 游戏 两名玩家在五轮中回答简单的数学方程式,每轮有四个备选方案。 游戏仅接受第一个答案。 如果答案...

    automated_system_test_sample

    production目录包括 Ruby on Rails 的典型 Web 应用程序, system_tests目录包括 RSpec、Turnip 和system_tests自动化测试套件。 但是system_tests目录下的代码不依赖于生产架构。 Thease 系统测试套件描述和检查...

    hw-ruby-intro:使用Ruby on Rails进行敏捷开发的Ruby简介分配

    Ruby简介 这个由三部分组成的家庭作业提供了Ruby的一些基本练习,并使您习惯于将测试作为工作流程的常规部分...如果使用Ruby的默认框架Test::Unit ,则测试文件将处于test/ 。) 我们已经将“入门代码”放置在lib/ruby

    pig-ci-rails:作为测试套件的一部分,监视您的Ruby应用程序指标(内存,SQL请求和请求时间)

    弃用通知不再积极维护该gem,我建议改用以下替代方法:样本输出安装将此行添加到您的应用程序的Gemfile中: group :test do gem 'pig-ci-rails'end 然后执行: $ bundle 或将其自己安装为: $ gem install pig-ci-...

    WomenCanMakeIt2

    创建本地数据库: $ rake db:create$ rake db:create RAILS_ENV=test 迁移数据库以使用最新的架构: $ rake db:migrate$ rake db:migrate RAILS_ENV=test测试$ rspec发展启动服务器: $ rails s 在浏览器中访问 。

    笔记本API

    去污该项目旨在了解和实践使用Ruby on Rails开发的API的结构。 该项目正在使用gem 调整协议以符合的规范。依存关系Ruby 2.6.3版Rails版本6.0.3开始... rails db:migrate RAILS_ENV=test 并使用以下命令运行测试: rspec

    sms-spec:一个用于使用RSpec和Cucumber测试SMS消息的Ruby库

    RSpec DSL和Cucumber步骤测试与Ruby on Rails应用程序的SMS交互。 当前,此gem仅支持使用 gem测试SMS消息。 ## Setup将sms-spec gem添加到您的Gemfile中: group :test do gem 'sms-spec' end 规范 在您的spec_...

    projectwithengines

    在Ruby on Rails项目中使用RSPEC创建引擎$ rails plugin new engine_name --mountable可安装或完整? --mountable选项告诉生成器您要创建一个“可安装”且与名称空间隔离的引擎(这可以防止主机应用程序代码与引擎...

    RubyTutorial

    Ruby on Rails教程:示例应用程序 这是的示例应用程序 。 如果您最终在教程中遇到代码问题,则可以使用此参考实现来帮助跟踪错误。 特别是,作为第一次调试检查,我建议让测试套件通过您的本地计算机: cd /tmp ...

    prelunch:午餐前

    Ruby on Rails教程:示例应用程序 这是的示例应用程序 。 如果您最终在教程中遇到代码问题,则可以使用此参考实现来帮助跟踪错误。 特别是,作为第一次调试检查,我建议让测试套件通过本地计算机: cd /tmp git ...

    desolate-fjord-9325:示例应用程序

    Ruby on Rails 教程:示例应用程序 这是的示例应用程序。 如果您最终在本教程中遇到代码问题,您可以使用此参考实现来帮助跟踪错误。 特别是,作为第一次调试检查,我建议让测试套件在您的本地机器上传递: cd /...

    valorant_scrims:用于为 Valorant 团队安排混战的 Web 应用程序。 用户可以创建球员资料和球队资料,并创建训练赛列表或挑战其他球队

    自述文件 相关资料: Ruby版 2.6.6 数据库创建 bundle exec rake db:migrate 如何运行测试套件 bundle exec rspec ...按照以下网站上的说明使用 Ubuntu 设置 WSL,并安装 Ruby on Rails。 使用 ruby​

    still_life:Rails升级的最好的朋友

    still_life是测试单元,小型测试,RSpec和Capybara的测试框架增强功能,记录了在端到端或单元测试执行期间呈现的所有HTML响应正文文本。 所以呢? 您可以在任何应用更新之前和之后比较实际呈现HTML结果。 为了什么...

Global site tag (gtag.js) - Google Analytics