UnityでTDDハンズオンRepositoryを作っている
最近更新したのでちょっと宣伝。
なにこれ
最近、副業だったりプライベートなどでUnityを使う人でテストに興味ある方を対象にTDDについてお話する活動などをしています。その際に座学としてお話することもあれば、ハンズオン形式で実際に手を動かして書いてもらうということもあります。その際に使うサンプルリポジトリです。 ぜひお手元で考えながら書いてみてください。勉強会の資料などで使っていただいても大丈夫です。
なぜやってるのか
ゲーム開発はソフトウェア開発の中でもかなり複雑性が高いと感じています。そして性質上変更頻度も高い。ゲームごとに作り方が変わる以上これは仕方ないことだと考えています。だからこそより変化に対応できるようにテスタビリティの高いコードになっていてほしいと考えていますがその難易度、そしてそもそものテストコード文化というものがないためにテストコードが書かれていることは少ないです。 まずはUnity界隈でテストコードを書く、という文化を作っていきたい。そんな気持ちで活動を行っています。
TDDという観点で話をすることもあれば、単純にテストコードの書き方、どこの品質を担保すべきかみたいなトリアージの話をすることもあります。ちなみにE2E側の知識は乏しいです。
課題02について
Unityでよくあるボタンを自作しようというテーマで資料を作ってみました。あ~あるある、と思えるようなストーリーにしています。というか実際僕が経験したことを抽象化したものです。
おもしろポイントはこの辺りです。
- 既存コードを壊さずにどうやって交換していくかの一例がわかる
- 単純な機能のはずなのにケースが増えて複雑化していく過程がわかる
- その際にテストがどのような効果を発揮するのかがわかる
一応、1例としてのコードをunitypackageとして含んでいるので参考までにご利用ください。
もし興味があればTwitterなどでもお気軽にお声がけください。
謝辞
ハンズオン資料を作ったら、いつもUnityゲーム開発者ギルドの方に練習台になってもらっています。毎回お付き合いいただきありがとうございます。