無償で使える「GIHOZ」でテストドキュメントの作成・共有が可能に
朱峰氏はさらに、デシジョンテーブルのメリットとデメリットを挙げた。メリットとしては、上記で分かるように、ロジックが複雑になればなるほど、自然言語で書き出しただけではすぐには理解できない。それが、デシジョンテーブルを作ることで、仕様がきれいに定まるという点だ。さらに、仕様の抜け漏れに気づきやすいというメリットもある。表を作る過程で、「こういう条件もあるな」と思いつくことも多いのだ。
デメリットは、入力データや条件が増えれば増えるほど、表が肥大化していくという点だ。
ここで朱峰氏は、ベリサーブが開発して無償で提供しているツール「GIHOZ」に、デシジョンテーブルを作成する機能があると紹介する。GIHOZは、ベリサーブがSaaS形式で提供しているツールであり、デシジョンテーブルに限らず、さまざまなテスト技法に対応したドキュメントの作成を支援してくれるツールだ。メールアドレスでユーザー登録することで無償で利用できる。
GIHOZでは、テストドキュメントを「リポジトリ」で管理する。リポジトリはプロジェクト単位で作成できる。そして、リポジトリは非公開として自分だけで利用することもできるが、ほかのユーザーを招待してドキュメントを共有することもできる。さらに、「公開」を選べば、世界中に自身のリポジトリを公開できる。GIHOZを紹介した後、朱峰氏はTwitterのようなミニブログのWeb APIを例として、GIHOZを使ってデシジョンテーブルを作成して見せた。
![GIHOZを活用したデシジョンテーブルの作成](http://cz-cdn.shoeisha.jp/static/images/article/15672/15672_004.png)
最後に朱峰氏は、テスト技法を利用することで、テストのパターンに対して理屈を付けられるということ、自分の作ったテストの根拠を人と共有できるということ、Web APIのテストでは入りと出のチェックを意識すべきことを説明し、数あるテスト技法の中でもWeb APIのテストではデシジョンケーブルテストが非常に役立つと伝え、講演を締めくくった。