TDDBC 大阪 1.0に参加しました!!

2012/06/02に, [twitter:@bufferings] さんの主催する
TDDBC 大阪 1.0に参加しました.

総括

東京のTDDBC for C++ 以来2回目となるTDDBCの参加でしたが,
非常に楽しかったです.
以前のTDDって何?っていう状態から一歩進んだ考え方ができました.

会場の感想

楽天株式会社 大阪支社様内部のカフェテリアでの開催となりました.
会場は4月に作られたという事もあって非常に綺麗で広々としています.
プロジェクタ,ネット環境も完備しているので勉強会をやるのには
非常に良い環境でした.
唯一難点を挙げるとすれば,カフェテリアのイスなので長時間座っていると
腰が痛くなることでしょうか.
まぁこれも座布団持ち込むなりすれば解決しそうな気がします.

ペアプロ実施の感想など

当初C or C++で人数合わせられる方に入ろう,と思ってたのですが
予想以上にC言語は人気が無く,C/C++の意味ないんじゃない?という感じでした.
最終的にC言語希望の [twitter:@cozykaz] さんがいたのでペアを組むことに.
C言語でのTDD修羅道を邁進することになりました.
テストフレームワークcmockery を使う事にして,環境設定をしたのですが
午前中はgithubの設定に手間取ったためPC交換で駆動することにしました.
フレームワーク自体も使った事があまりない(そもそもCでのTDDは経験がない)ので,
右往左往していたら,TAの方から「テストフレームワークの使い方を調べる(素振り)」を
した方が良い,とのアドバイスを頂き,成功,失敗時の各挙動を調べました.
後々のテスト実行効率を上げられたのも,フレームワークに対する迷いが無かったことなので,
この時点でこのアドバイスが頂けたのは非常に助かりました.
他のチームがC++,Groovy,Rubyなどのモダンな環境を使う中,泥臭くやっていましたが
TDDの演習を通して実際の業務での実践方法が見えてきた感があり,
良い経験だったと感じています.
またPCUnitというC言語向けフレームワークの情報を頂いたので,ちょっと試してみたいところ.

懇親会で [twitter:@kyon_mm] さんから気づきを頂く

懇親会の間に[twitter:@kyon_mm] さんと少しお話をさせて頂き,その際に聞いた事が
非常に参考になったので忘れないようにメモ.
実際にTDDを製品に適用するテスト環境を構築する際の視点としたい.

  • テストの観点別にテストコード(ファイル, クラス etc)を分ける
  • 観点とは「構造に依存したテスト」「ロジックに依存したテスト」など
  • 何に依存したテストか,を明確にすることで早いうちでの影響見積もりができる
  • テストに多少の重複があるかもしれないが,観点がきちんと別になっていれば問題はない.
  • テスト観点が明確になっていることで,拡張性のしやすい(≒テストの弱い)ところなどが判断できる

他,LTなどの感想

  • なごやこわい…,地元ですが,こんなに静的型付関数型言語の侵略が進んでいるとは….正直話している内容のほとんど理解できなかったです.
  • Fragile Testsの話.今回のTDDBCではテストを実行する事が主眼なので触れられていないけど,テストコードの保守性も必要という事
  • TDDBCの岡山開催の話とかSCMBCとかの話があったので,都合を合わせて参加したい

最後になりましたが,主催した [twitter:@bufferings] さん,TA,ならびにスタッフの皆様,
とても楽しかったです.ありがとうございました.