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
ruby on rails测试的更多相关文章
- ruby on rails 在centos 7下的安装配置
因为想安装最新版本,所以通过编译安装. 安装前准备工具和库文件: sudo yum install gcc gcc-c++ openssl-devel readline-devel gdbm-deve ...
- 管理不同版本ruby和rails的利器——rvm
近年来,ruby on rails逐渐火了起来,我想各位码农早就耳闻,特别是那些做B/S项目的童鞋,早就想跃跃一试了. 笔者也是初次接触ruby on rails ,我想,对于初学者来说,最好的学习方 ...
- ruby on rails on windows
这次想系统学会rails,最终目标是将redmine改造成顺手的工具,主要的手段就是开发redmine插件.虽然网上都推荐使用类Unix系统,可手头只有win7系统,就安装了. 难免会遇到这样那样的问 ...
- 通过Ruby On Rails 框架来更好的理解MVC框架
通过Ruby On Rails 框架来更好的理解MVC框架 1.背景 因为我在学习软件工程课程的时候,对于 MVC 框架理解不太深入,只是在理论层面上掌握,但是不知道如何在开发中使用 MVC ...
- Ruby on Rails框架开发学习
学习地址:http://www.ixueyun.com/lessons/detail-lessonId-685.html 一.课程概述 软件开发在经历了面向过程编程的阶段,现在正大行其道的是敏捷开发, ...
- Ruby On Rails环境搭建
注:现在http://rubyforge.org 网站已经停止运行,取而代之的是https://rubygems.org这个网站,下文中所需要的gem包都可以去这个网站搜索下载.其他完全按照下文说的去 ...
- Ruby on Rails Tutorial 第一章 之 简介
1.目标:掌握MVC和REST.生成器.迁移.路由.嵌入式Ruby 本书涉及Rails,Ruby语言,Rails默认使用的测试框架(MiniTest),Unix命令行,HTML,CSS,少量的Java ...
- [Ruby on Rails系列]1、开发环境准备:Vmware和Linux的安装
Ruby on Rails是一个采用Ruby语言的遵循MVC模式的Web开发框架.使用RoR会得到更加快速爽快的Web开发体验.相比于Java EE,该框架使Web开发的速度和效率变得更加轻快和敏捷. ...
- [Ruby on Rails系列]2、开发环境准备:Ruby on Rails开发环境配置
前情回顾 上次讲到Vmware虚拟机的安装配置以及Scientific Linux 6.X系统的安装.这回我们的主要任务是在Linux操作系统上完成Ruby on Rails开发环境的配置. 在配置环 ...
随机推荐
- nyoj 260-数数小木块 (打表)
260-数数小木块 内存限制:64MB 时间限制:3000ms 特判: No 通过数:17 提交数:24 难度:1 题目描述: 在墙角堆放着一堆完全相同的正方体小木块,如下图所示: 因为木块堆得实在是 ...
- Django 自定义分页器
为什么要实现分页? 在大部分网站中分页的功能都是必要的,尤其是在后台管理中分页更是不可或缺 分页能带给用户更好的体验,也能减轻服务器的压力 对于分页来说,有许多方法都可以实现 例如把数据全部读取出来在 ...
- 自制window下core animation引擎 - demo第二弹 - 仿QQ电脑管家加速小火箭
一年前想写一个像cocoa那样,可以方便层动画开发的引擎,写着写着又逆向它的QuartzCore.framework,也就是CoreAnimation的底层,已经大半年没有搞windows这个引擎.大 ...
- 在input输入值改变reducer里的值
输入值改变reducer里的值 通过store.dispatch传入reducer中,函数的第二个参数可以接收到 在reducer中 在todolist文件中 然后在把this.state中的值改变
- vuejs中的回车事件
@keyup.enter.native="事件名称"
- Android中的设计模式
一.设计模式的分类 总体来说23种设计模式分为三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式 ...
- opencv resize图片为正方形尺寸
在深度学习中,模型的输入size通常是正方形尺寸的,比如300 x 300这样.直接resize的话,会把图像拉的变形.通常我们希望resize以后仍然保持图片的宽高比. 例如: 如果直接resize ...
- python变量、输入输出-xdd
1.注释 #输入身高,计算BMI 注释1,单行注释... 注释2,多行注释xiedong.. 2.中文编码声明,UTF-8编码声明 # coding=编码 # coding=utf-8 3.建议每行不 ...
- 【合集】python 的一些妙用,推导式、三元表达式、with as 等
自己常用的内置函数 函数如下: dir len str list tuple zip map reduce(现在并入了functools中) 常用的进制转换 Oct hex bin lambda 表达 ...
- c语言l博客作业08
问题 答案 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/8655 我在 ...