Chefは、コマンドを叩く→実行 の1サイクルが非常に長く、場合によっては1サイクルに数分とか1時間以上かかることもあります。
1時間後に文法エラーが発覚するととても悲しい気持ちになるわけです。
なので、いかにコードを実行せずに文法チェックするのが重要です。
knife cookbook test
というコマンドでそれができます。
apache
という名前のcookbookをテストする
$ knife cookbook test -o site-cookbooks apache
全部のcookbookを一気にテストする
$ cd site-cookbooks
$ knife cookbook test -o . *