Friday, August 22, 2008

RSpecがいいかもしれない

Rubyの新しいテストフレームワークにRSpecというものがある
このフレームワークは今までのように書いたコードを
後からテストするためのものではなく
先に仕様を書いてそれに合わせてコードを書くような開発方式を強いる
これをBDDとかTDDとかいうようだ

具体的には以下の手順になる
まずこれから書こうとしているコードの期待される出力を仕様として書く
その仕様をこれに関連付けてコードにする
テストしてみる(当然エラーが出る)
エラーがなくなるようにコードを書く
サンプル(階乗計算コード)


require "fact"
describe "Fact", "basic factorial" do
before(:each) do
@ts = Fact.new
end
it "should be 1 when 1!" do
@ts.fact(1).should == 1
end
it "should be 6 when 3!" do
@ts.fact(3).should == 6
end
it "should be 120 when 5!" do
@ts.fact(5).should == 120
end
end

今後なるべくBDDで開発してみよう

RSpec-1.1.4: Overview
http://rspec.info/

No comments: