LoginSignup
36
32

More than 5 years have passed since last update.

Travis CIでxcprettyを使ってxcodebuildのログをきれいにする

Last updated at Posted at 2014-04-08

背景

xcodebuildを使ってビルドを行うと整理されていない不要なビルドログがたくさん出てしまうので、Travis CIを使ってテストを日常的に行っていたとしてもいざテストが落ちた場合にどこが問題あるのかがすぐに見つけられずイライラする事が多いと思います。

xcpretty

xcprettyとは

xcprettyを使うとxcodebuildが出力するビルドログをきれいに整理して色つきで出力できるようになります。利用方法もxcodebuildの結果をパイプで受け取るだけなので非常に簡単です。

ログの出力形式をrspec風にしたりJUnitレポート形式のxml出力等もできるようです。

xcpretty

xcprettyをTravis CIに導入する

xcprettyを導入するとTravis CIにおいても以下のようにログがきれいに整理され色付きで出力することが出来ました。画像の通りログの見た目・わかりやすさの違いは歴然です。

通常

スクリーンショット 2014-04-09 0.24.32.png

導入後

スクリーンショット 2014-04-09 0.33.03.png

インストールと設定

xcodebuild test -scheme XcprettySample -destination "name=iPhone Retina (3.5-inch),OS=7.0" -configuration Debug | bundle exec xcpretty -c

重要な設定

Rakefileでビルドを行うような場合にテストが落ちてもrakeコマンドの終了ステータスが正常なため、Travis CI的には"Passed"となってしまうことがありました。xcodebuildコマンドの終了ステータスをrakeコマンドが引き継いでくれないためなので、これを回避するためにxcprettyのREADMEにもあるように、xcprettyコマンドの最後に"PIPESTATUS"を渡すように追記して対応を行いました。

xcodebuild test -scheme XcprettySample -destination "name=iPhone Retina (3.5-inch),OS=7.0" -configuration Debug | bundle exec xcpretty -c && exit ${PIPESTATUS[0]}

というわけでオススメ

これだけでログがきれいに整理されてテストの結果が非常に見やすくなって開発効率があがるのでオススメです。

36
32
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
32