[Unite Japan 2013]Unity × Jenkins:一歩進んだ使い方 from Unity Technologies Japan G.K. on Vimeo.
Unity × Jenkins:一歩進んだ使い方
静的解析
- Gendarme
Monoプロジェクトの静的解析ツール - Gendarme for Unity(unity-gendarme)
GitHubで公開中 - Monoは.Net Framework互換
.NetFramework用の静的解析ツールも使用可能- FxCop(Microsoft製)
- Coverity(C#解析)
静的解析(Mono)
準備
1.Library/ScriptAsemblies/Assembly-Csharp.dll
2.Gendarme for Unity
- MacはMonoのランタイムが必要
http://www.mono-project.com/ - Windowsは.Net Framework3.5以降が必要
3.解析結果の集約
- Warnings Plugin
- Violations
必要な手順
1.Assembly-Csharp.dllの生成
2.解析コマンドの実行
Assembly-CSharp.dllの生成
1.Unityプロジェクトを開けば生成される
空のメソッドをバッチから実行すればいい
-batchmode -projectPath "ProjectName" -executeMethod 適当な何か
2.解析コマンド実行
# Macでの例 mono ~/Unity-Gendarme-2.10/gendarme.exe Library/ScriptAssemblies/Assembly-CSharp.dll --set unity-full --severity all --confidence all --xml gendarme-out.xml | echo OK.
Gendarmeの仕様で検出が1件でもあるとエラーコードが返ってくるのでパイプして回避
htmlの出力も見易いので合わせてやっておくと良い
その他
ワークスペースの共通化
1.プロジェクトの高度なオプション
2.カスタムワークスペースを使用にチェック
3.絶対パスでディレクトリを設定