Edited at

Swiftの静的コード解析ツールTailorの使い方

More than 1 year has passed since last update.


概要

この記事ではSwiftの静的コード解析を行えるTailorの使い方を紹介しています。

いわゆるチェックスタイルをしてくれるツールです。

実行環境がJavaのためMac/Linux/Windowsのクロスプラットフォームで使えるのが特徴です。


前準備

Tailorを使う場合、JDK8以上が必要になります。

Java7以前を使っている場合は新しいバージョンをインストールする必要があります。

http://www.oracle.com/technetwork/java/javase/downloads/index.html


インストール

Tailorの特徴としてクロスプラットフォームに対応しています。

どのプラットフォームでもコマンド一発で入るようになっているみたいです。

https://github.com/sleekbyte/tailor#getting-started

MacでHomebrewを使っている場合は

$ brew install tailor


使い方

インストールが完了している場合は、tailorコマンドが使えるようになっているはずです。


基本

単一ファイルに実行する場合

tailor {対象のSwiftファイル}

ディレクトリ配下のすべてのファイルに実行する場合

tailor .


実行オプション

Tailorには実行時に使えるいくつかのオプションも用意されています。

よく使いそうなものを抜粋して紹介します。


--show-rules

適応できる静的コード解析のルールを表示します。

tailor --show-rules


-c {path/to/.tailor.yml}

Tailorでは実行時のルールやチェックツールをyaml形式で記述できます。

それをコマンドで指定するためのオプションになります。

以下のような記述でルールを指摘できます。


.tailor.yml

include:                # チェック対象とするファイル/ディレクトリ

- Source # Source配下おすべてのファイルを対象とする
exclude: # チェック対象から除外するファイル
- '**Tests.swift'
- Source/Pods
except: # チェックから除外する項目
- lower-camel-case
- trailing-whitespace

※ eceptに記述できる条件と説明はさきほどのshow-rulesオプションで確認できます。


-f

出力結果のフォーマットを指定できます。

jsonやhtmlなどが用意されています。


--xcode={path/to/project.xcodeproj}

XCodeのビルドスクリプトにTailorを追加します。


さいごに

使い方もシンプルで簡単に導入できるツールでした。

クロスプラットフォームで実行できるため、CIツールとも相性が良さそうですね。


参考