経緯
仕事がテスト関係なので、テストツールに興味があり、Test Linkを使用しているのですが、それ以外になにか無いかなと定期的に調べている中で、以下の記事を一年前に見つけ、興味を持っていました。
いつか使ってみたいなと思っていたのですが、なかなか時間が取れていませんでした。そして、最近になってようやく時間が取れるようになったので、試してみた次第です。
ただ、サービスを使うだけであればすでに作者がサービスを立ち上げていらっしゃいますので、技術的な要素はなにもありません。
また、仕事で使う上で、できればオンプレミスで動かしてみたいという気持ちがあり、今回はDocker上で動かしてみようと思い立ち、実行しました。
Dockerfile
FROM ubuntu:16.04
WORKDIR /root
RUN apt-get update
RUN apt-get -f install
RUN apt-get install -y git libpq-dev libsqlite3-dev tzdata ruby-dev build-essential
ENV CONFIGURE_ARGS with-pg-include=/usr/include/postgresql/
RUN git clone https://github.com/tabbyz/chibineko
WORKDIR /root/chibineko
RUN sed -i -e "s/^ruby.*/ruby '2.3.1'/g" Gemfile
RUN gem i bundle
RUN bundle install
ADD mailer.yml /root/chibineko/config/
RUN rake db:migrate
RUN rake db:seed
EXPOSE 3000
CMD ["rails", "s", "-b", "0.0.0.0"]
Chibineko では Gemfile中で pg
と sqlite3
を使用しているので、先にapt
でlibpq-dev
とlibsqlite3-dev
をインストールしています。
また、rake db:migrate
の段階でタイムゾーン系のエラー(http://qiita.com/74th/items/33e05b6c823f64eaf6d0) が出るので、追加でtzdata
をインストールしています。
あとは、ruby-dev
をbuild-essential
をインストールしていますが、これはrails を使っているからですね。bundle install するときに native build を行う必要もあります。ですのでインストールしています。
pg
gem モジュールも native build が実行されるのですが、その途中でエラーになってしまいます。理由はlibpq-fe.h
を発見できない為に発生するようですので、bundle install する際のincludeパスをCONFIGURE_ARGSを設定することで追加してあげます。
その後、chibinekoのセットアップですが、ubuntu:16.04でインストールされるrubyのバージョンが2.3.1なので、Gemfileの中のrubyバージョンを2.3.0から2.3.1に変更します。
その後は、mailer.ymlをコンテナ内にコピーして、所定の手順を踏んでいるだけですね。
ただ、一点注意していただきたいのは、このDockerfileはenvironmentがdevelopment
でしか動かないという点です。なぜなら、production
ではpostgresql
を使用しているんですが、今回はpostgresqlのコンテナは動作させていないからです。
mailer.yml
mailer.yml の設定はChibinekoのgithubページのREADMEに記載してある通りですね。
それをDockerfileと同じディレクトリに配置していただければ問題ないと思います。
実行
以下を実行していただくと、docker上でChibinekoが動作します。
$ docker build . -t chibineko
$ docker run --rm -p3000:3000 --name chibineko -t chibineko
使用感
フロントページにもある通り、「世界で最もシンプルなテスト支援ツール」という感じです。無駄な部分はそぎ落として、必要な情報のみを提供している。といったところでしょうか。
プロジェクトに属さないテストケースを作成できたり、テスト結果に実施者や実施日付がないのは新鮮だなと思ったのと、テスト仕様書とテスト実施が分かれていないという点もシンプルさにこだわっている点だと思いました。また、OK/NG/保留だけでなく、対象外の結果が残せるのはTest Linkに無い点だなとも思いました。
チームでの使用も想定されているので、単純なプロジェクトであれば十分使用できるのではないでしょうか。もし、別媒体でレポートが必要な場合はcsvにも吐き出すことができるため、そのデータをEXCEL等で整形しレポートすることも可能です。
まとめ
ChibinekoをDocker上で(開発環境であるが)動かしました。
少しだけですが使用してみて、使用感をTest Linkと比較しました。