Coveralls fastlane プラグイン

 English

Xcode のテストカバレッジを Coveralls へアップロードする fastlane プラグイン と、その依存先で、単体でもコマンドラインツールとして利用できる xccoveralls を公開しました。

使ってみる

以下のコマンドを実行して

fastlane add_plugin coveralls

Fastfile に以下の行を追加

lane :send_coveralls do
  coveralls
end

テストターゲットの Code Coverage のチェックボックスをオンに設定し

fastlane コマンドよりコードカバレッジを送信できます

export XCCOVERALLS_REPO_TOKEN=... # Coveralls.io から自分のものを取ってくる
bundle exec fastlane send_coveralls

例として CI2Go のカバレッジを Coveralls で、その設定をFastfile で確認いただけます。

開発のきっかけ

fastlane のアクション として組み込まれている Xcov を利用しようとしました。

しかし、Xcov はカバレッジの要約のみ保持している .xccovreport または .xccoverage の情報を取得して送信しているため、カバー行の情報まで送信しません。

そこで、Xcode 9.3 より提供されている xcrun xccov を利用して、新たにこのツールを実装しました。

# ファイルの一覧を取得する
$ xcrun xccov view --file-list DerivedData/Logs/Build/*.xccovarchive

# 特定のファイルのカバレッジを取得する
$ xcrun xccov view --file /Users/ngs/src/CI2Go/AppDelegate.swift \
    DerivedData/Logs/Build/*.xccovarchive

参照: xccov: Xcode Code Coverage Report for Humans

もし何か問題がありましたら イシュー を起票いだたけると嬉しいです。

では XCTesting を楽しんでください 👨‍💻

comments powered by Disqus