TDDBCに参加したのでそのメモ
TDD Boot Camp 大阪 1.0( #tddbc ) : ATNDに参加してきたのでそのメモ
和田さんの講演
ソフトウェア開発の三本柱とか、の話。TDDとは開発を促進するためのテスト、ということだったのでワークショップではなるべくそれを意識することに決める。
その他の色々はまあスライドがどっかに公開されると思うので、そっちを参照すればよいでしょう。
ペアプロのデモ
いきなり他人のPCでコーディングするのって大変だよね。ということか (^^;
まずはどんな結果になったらよいか(assertThat ...)から書くという話。
ワークショップ
なぜか吉岡さんとペアになってもた。
午前中は私がドライバーということにしてテストを書いたり、コードを書いたり、テストを書く前にコードを書いてしまったり。
午後はドライバーを交代して実装した。subject に対してあまり考えずにテストを書いていたので、途中和田さんから
describe VendingMachine do it "100円投入できる" do subject.put_in 100 subject.total.should == 100 end end
ではなくて
describe VendingMachine do context "100円投入できる" do before do @vm = VendingMachine.new @vm.put_in 100 end subject { @vm } its(:total) { should == 100 } end end
みたいな話を聞く。しかし、最初から「綺麗な」状態にテストを書くのはなかなかハードルが高い。
懇親会のLTでも Fragile Tests という話があって、テストをメンテナンス可能な状態に維持するのは難しそうだと感じた。
講演3
関さんのTDDを変形する話。正解があるわけではなくて、TDD自体についても疑いを持つことが重要、というような話。
ジャンケンで dRuby本をゲット。
その他
やっぱり懇親会が本番か、ピザを食いつつ色々ダベる。闇LTとかあった。
なんだかんだで22時過ぎくらいに帰った。
感想
TDDはひとりでも始められるとあったけど、やっぱり一人でというのは寂しいよね。懇親会の雑談や、闇LTでもチームにTDDを導入したりする時の困難さをいろんな人が言っていた。
あとは環境構築のハードルが高い言語とかもあるのかもしれない。
一つだけ不満点を挙げるとすれば、他のペアの書いたソースにアクセスする手段が用意されていなかったことかな。結構 github に上げてる人とかもいたと思うけどどうだろ。
ちなみにウチは上げた https://github.com/koko-u/tdd_sample