Jenkins実践入門

想定読者は(Javaとsubversionを使って開発している)ユーザーかなぁ。内容も基本的な内容だし、実際軽く読めた。

例えばJenkinsは使ったことないけど、使ってみたいPython使いとかPerl使いがいきなり読んでも理解するのは難しいかなと思った。まぁ、他の言語でJenkinsを使う場合にどうしたらいいのかポインタくらい示しておいてくれてもイイような気がするが(見逃してるのか?)。

Python

Perl

Scala

ひととおり手を動かしてから8章まで読めば大体理解できそうな気がする。僕もPythonで一通り動かしてあったのでサラっと流し読み程度でよかった。

役に立ったのが9章からで

  • seleniumで自動的にテスト
  • バックアップとリストア
  • Jenkns Job Configuration History Plugin
  • Jenkinsアンドロイドアプリ

もう少し積極的にJenkinsを使っていこうっと。

Jenkins+GitHubでPythonプロジェクトの継続的インテグレーション

この前の勉強会でJenkinsについて色々知った。JenkinsってJava向けだろうと思ってたら全然違って基本何でもいけるらしい(シェルから動かせるから)。あとgithubのプロジェクトもいけるらしいので早速pygamessっていう量子化学計算用のモジュールを使って試してみた。

最近GAMESSを仕事で使うことが多いんだけど、きちんとテストしてないと不安ですからね。

Jenkins

さくっと導入するならTraclightningがいいらしいんだけど、Jenkinsを単独で入れた。macだとパッケージをダウンロードして実行するだけでlocalhostの8080に常駐するので楽ちん

あとは、Gitのプラグインを追加でインストールしておく。

Python

Pythonのテストといえばnoseですね。あと、Python版のPerl Testingみたいな本ないのかな?

ProductName Perl Testing: A Developer's Notebook (Developers Notebook)
Ian Langworth
Oreilly & Associates Inc / 2160円 ( 2005-08 )


JenkinsとPythonの連携を参考にした。まずはnoseとunittest-xml-reportingをインストールしておく。

あとはJenkinsの設定のシェルの実行っていうところにnoseのテストを書いておく。

nosetests -v --with-xunit -w tests

これでnosetests.xmlっていうファイルにテスト結果が出力されるようになるので、JenkinsのオプションのJUnitテストの結果集計というところにチェックを入れて、nosetests.xmlを追加しておく。

python Jenkins

4つテストを走らせて、1つFailしている。

これは環境変数とかの問題で、gamessの実行ファイルがきちんと呼び出せてないせいで、テストがこけているんだけど、Jenkinsのほうにエラーの内容が吐かれてないのでどこでこけているのかつかめていない。

そもそもrungms使うのが間違っているのかなぁ。あとでよく考える。