CppUTestを使うGitHub上のリポジトリをTravis CIと連携させる方法

折角テスティングフレームワークを使っているのだから、CIツールも利用すべき、ということで、調べました。

前準備 : CppUTestを利用したリポジトリをGitHubに公開する

基本的には、ここで記載した内容を、make 一発で出来るようにすればOKです。 私の使ってるリポジトリでは、以下のようにしています。

  • CppUTestは、リポジトリに含まずsubmodule化する
  • MakefileWorker.mkを使いテスト用の実行ファイルを作成するMakefileは専用に切り出す(ex. MakefileCppUTest.mk )
  • プロジェクト自体のMakefileで、CppUTestのビルドを行ったあと、上記Makefileを呼び出すようにする(ex. Makefile )

1. Travis CIと連携する

ブラウザから、GitHubとTravis CI間で連携するための設定を行います。

  1. Travis CIにログインする
  2. リポジトリ一覧から対象のリポジトリのスイッチをONにする

私はこちらを参考にしました。非常にわかりやすいです。

2. Travis CI用の設定ファイルを書く

リポジトリ直下に.travis.ymlという名前の設定ファイルを設置します。

…素っ気ない設定ファイルですね。 Travis CIはテストの成否をscriptに書かれたコマンドの終了ステータスで判断しているようです。(0だと成功、それ以外だと失敗) CppUTestのMakefileWorker.mkはビルドと共にテストを実行してくれるので、これで十分のようです。

この状態で、commitをpushすると、Travis CIがhockしてビルドを実行してくれます。