C++ のプロジェクトを Travis CI + github で自動テストする
以下のページを参考にしてやってみました。
実験用のプロジェクトをつくる
とりあえず、最小限のファイルだけ用意して試してみます。
ディレクトリ構成
|--.travis.yml |--src | |--test.cpp
.travis.yml
language: cpp script: - g++ --version - g++ -Wall -Wextra -pedantic src/test.cpp && ./a.out
travis の設定ファイルになります。
このファイルの :script
に対して実行(コンパイル)する記述を書き込みます。
(makefile があるのでれば make したりとか
あと厳密にいえば g++ --version
はテストに必要はないんですが、実行環境の確認用に書いてあります。
test.cpp
#include <cassert> int main(){ int n = 10; assert(n + n == 20); return 0; }
テスト用のファイル
github へ push
github に新しいリポジトリをさせて先ほど作ったファイルを push します。
$ git init $ git add . $ git commit -m "first commit" $ git remote add origin git@github.com:osyo-manga/cpp-test-travis-ci.git $ git push -u origin master
ちなみに今回作成したリポジトリは以下になります。
Travis CI を ON にする
Travis CI に github でログインして、先ほどつくったリポジトリを ON に設定します。
あとは github へ push した時に .travis.yml の設定に応じてテストが実行されるようになります。 (先に github のリポジトリへ push していた場合は再度 push する必要が有ります。
ちなみにテストの実行までにちょっと時間がかかりました。 とりあえず、だいたいの流れは掴んだのでどんどん CI していきたい。