Ruby on rails 3 BDD/TDD(Rails/Rspec)入门
我刚刚开始学习BDD/TDD的实践(我知道,世界很高兴)。在这一点上,我要解决的问题之一是哪些测试实际上值得编写。让我们来做一组测试,我从一个名为Sport的模型开始:Ruby on rails 3 BDD/TDD(Rails/Rspec)入门,ruby-on-rails-3,rspec,tdd,bdd,Ruby On Rails 3,Rspec,Tdd,Bdd,我刚刚开始学习BDD/TDD的实践(我知道,世界很高兴)。在这一点上,我要解决的问题之一是哪些测试实际上值得编写。让我们来做一组测试,我从一个名为Sport的模型开始: Factory.define :sport do |f| f.name 'baseball' end require 'spec_helper' describe Sport do before(:each) do @sport_unsaved = Factory.build(:sport) # ret
Factory.define :sport do |f|
f.name 'baseball'
end
require 'spec_helper'
describe Sport do
before(:each) do
@sport_unsaved = Factory.build(:sport) # returns an unsaved object
@sport_saved = Factory.create(:sport) # returns a saved object
end
# Schema testing.
it { should have_db_column(:name).of_type(:string) }
it { should have_db_column(:created_at).of_type(:datetime) }
it { should have_db_column(:updated_at).of_type(:datetime) }
# Index testing.
# Associations testing.
it { should have_many(:leagues) }
# Validations testing.
it 'should only accept unique names' do
@sport_unsaved.should validate_uniqueness_of(:name)
end
it { should validate_presence_of(:name) }
it 'should allow valid values for name' do
Sport::NAMES.each do |v|
should allow_value(v).for(:name)
end
end
it 'should not allow invalid values for name' do
%w(swimming Hockey).each do |v|
should_not allow_value(v).for(:name)
end
end
# Methods testing.
end
我有几个具体问题:
- 你应该测试什么?任何你不想被打破的东西
- 何时停止编写测试?当恐惧变成无聊时
关注什么而不是如何 嗯