ページ ツリー
メタデータの末尾にスキップ
メタデータの先頭に移動

このページの古いバージョンを表示しています。現在のバージョンを表示します。

現在のバージョンとの相違点 ページ履歴を表示

« 前のバージョン バージョン 2 次のバージョン »

静的テストの実施

Foodcritic

http://acrmp.github.io/foodcritic/
Chef 専用の静的テストツールで、ChefDK に含まれています。

Cookbook のディレクトリに対してコマンドを実行すると、Foorcritic のルールに違反したコードが検出されます。 

$ foodcritic ./

検出結果にはどのルールに違反しているかがわかるように、ルールの番号が付加されています。
Foodcritic の公式サイトには各ルールの詳細な情報と、修正例が記載されていますので、参考にしてください。

 

Ruby の静的テストツールを利用

Recipe は Ruby で記述されるので、Ruby の汎用的な静的テストツールを適用することもできます。
たとえば、以下のツールを利用できます。 

Reek

https://github.com/troessner/reek
複雑な Ruby コードを検出する静的テストツールです。

実行方法は Foodcritic と同じです。

$ reek ./

 

Flay

http://ruby.sadi.st/Flay.html
Ruby の重複コードを検出する静的テストツールです。

これも、実行方法は同じです。

$ flay ./

 

これらの静的テストツールは開発環境にすでにインストールされていますので、実際に実行して試してみてください。

 

ChefDK の gem にパッケージをインストールする方法

$ chef gem install <gem パッケージ名>

 

chef gem でインストールしたコマンドの実行方法

 

 

 

  • ラベルがありません