目次
- 目次
- はじめに
- PythonプロジェクトをTravis CI上でテストして、Coverallsでカバレッジを可視化する
- JuliaのプロジェクトをTravis CI上でテストして、Coverallsでカバレッジを可視化する
- 参考資料
- MyEnigma Supporters
はじめに
近年、プログラミングをする上で、
テストを書き、そのテストを継続的に実行する
継続的インテグレーション(CI)を利用することは当たり前になってきました。
CIを実現する上で、
オンプレミスでは、Jenkins
クラウドで、OSがLinux, Mac OSの場合は、Travis-CIや
Travis CI - Test and Deploy Your Code with Confidence
Circle-CI、
Continuous Integration and Delivery - CircleCI
Windowsの場合は、AppVeyorがあります。
最近は、ユニットテストを実行するだけでなく、
ユニットテストがカバーしているコードの割合を表示するのも
よく実施されます。
今回は、Coverallsというテストカバレッジ可視化サービスを使う方法をまとめておきます。
Coverallsを使うと、下記の画像のように、
テストカバレッジの結果を
GitHubのREADMEなどに表示することができます。
PythonプロジェクトをTravis CI上でテストして、Coverallsでカバレッジを可視化する
基本的には下記の記事通りにやればOKです。
pipでcoverallsをインストールし、
pythonコマンドの代わりに、coverage runコマンドを起動し、
生成された.coverageファイルから、coverallsコマンドで
coverallサーバにデータを送る形です。
下記のように、pythonのunittest discoverでテストを実施している場合、
$ python -m unittest discover ./
下記のようにコマンドを置き換えれば、テストを実施しつつ、
テストカバレッジを生成することができます。
$ coverage run -m unittest discover ./
JuliaのプロジェクトをTravis CI上でテストして、Coverallsでカバレッジを可視化する
基本的には、前述のPythonの方法と同じで、
下記のリポジトリと、READMEにかかれている内容を実施します。
まず、coverallsでリポジトリを指定し、
Juliaのコードを--code-coverageのオプションを指定して実行します。
$ julia --code-coverage test/runtests.jl
そして最後に、
$ - julia -e 'using Coverage; Coveralls.submit(process_folder())'
で、カバレッジデータをcoverallサーバに送信します。
一つ注意点として、
テストカバレッジを取りたいJuliaのコードは、
パッケージディレクトリの直下の、
srcディレクトリの下に配置されている必要があります。
参考資料
MyEnigma Supporters
もしこの記事が参考になり、
ブログをサポートしたいと思われた方は、
こちらからよろしくお願いします。