Rails Minitest style 指南
生活随笔
收集整理的這篇文章主要介紹了
Rails Minitest style 指南
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
In the test, ?we should use the ‘describe’, ?‘context’, ‘it’ structure.
Here I use a controller test as an example.
I have this my_controller.rb with two controller actions:
class MyController < ApplicationControllerdef controller_action_1# Code goes hereenddef controller_action_2# Code goes hereend end
And controller test file my_controller_test.rb:
require ‘test_helper’class MyControllerTest < ActionController::TestCase# Initialize the variables that will be used in all describe block tests within MyControllerTest classbefore dov_block = ‘this variable is only accessible in this block’@v_describe_level = ‘this varible is accessible in all describe blocks’end# Test for controller action 1describe ‘#controller_action_1′ do# Intialize the variables that will be used in all context block tests within this describe blockbefore dov_block = ‘this variable is only accessible in this block’@v_context_level = ‘this varible is accessible in all context blocks’endcontext ‘when the user is admin’ do# Intialize the variables that will be used in all it block tests within this context blockbefore dov_block = ‘this variable is only accessible in this block’@v_it_level = ‘this varible is accessible in all it blocks’endit ‘must has admin role’ do# Code goes here. Examples: http://ruby-doc.org/stdlib-1.9.3/libdoc/minitest/spec/rdoc/MiniTest/Expectations.html# must_be# must_be_empty# must_be_nil# must_be_same_as# must_equal# must_raise# wont_be# wont_be_nil# wont_equal# wont_includeendit ‘must redirect to admin management page’ do# Code goes here, example:# assert_redirected_toendendcontext ‘when the user is not admin’ doit ‘must not have admin role’ doendit ‘must redirect to non-admin management page’ doendendenddescribe ‘#controller_action_2′ do# Code goes hereendprivate# Helper functions goes here end
Some reminder:
1. Given, When, Then
2. Use fixture instead of creating data on the go
3. If no Before block, don't need to use context
總結(jié)
以上是生活随笔為你收集整理的Rails Minitest style 指南的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Angularjs切换网站配色模式简单示
- 下一篇: 蛮力法在查找算法中的应用(JAVA)--