JenkinsとMSTest

システム開発担当の読です。

先日お休みをいただいて、広島県尾道市に行ってきました。
とても気さくな方が多く、ポンポン岩の前では絵を描いていたおじさんから村上水軍のお話を聞かせていただいたり、
小学校の先生?の方には映画「ふたり」や「転校生」のロケ地を案内していただいたり、
偶然あったおばあちゃんに、オススメの景色や食べ物を教えていただいたりと
色々な方とお話出来てとてもいい思い出になりました。

私が行った時はちょうど自転車のイベントがあったのですが、向島等を自転車で行くのもすごく気持ちがよさそうですね、機会があれば参加してみたいです。(自転車持ってませんが)

ちょっと心残りは猫の細道の奥にある、バーやカフェがちょうどやっていなく行けなかった事でしょうか。。。
でも今後私と旅をしてくれる相棒「よみくん」と会えたのでよしとしましょう!

尾道と福猫石

旅猫石よみくん


さて、今回は「Jenkins」のインストールとMSTestのプラグインについて話したいと思います。
ちょうど私が勉強しているということで。。。

ダウンロードとインストール

http://jenkins-ci.org/のDownload JenkinsよりWindows版をダウンロードしてください。
インストールは解凍したファイルの「setup.exe」より行ってください。
※インストール後自動でjenkinsのトップページが表示されます。

プラグインの導入

「Jenkinsの管理」から「プラグインの管理」の利用可能タブよりプラグインが追加出来ます。

Jenkinsプラグイン

プラグイン設定


今回追加するプラグインは「MSBuildプラグイン」「MSTestRunnerプラグイン」「MSTestプラグイン」です。
プラグイン

導入プラグイン

Jenkinsの設定

「Jenkinsの管理」から「システムの設定」でJenkins全体の設定を行うことができます。
ここには先ほど導入したプラグインの設定も含まれています。

MSBuild

MSBuild

MSBuild設定

  • Name:識別名
  • Path to MSBuild:MSBuild.exeのパス
  • ※MSBuild.exeは.NetFrameworkのインストール先にあります。

    MSTestRunner

    MSTest

    MSTestRunner設定

  • Name:識別名
  • Path to MSTest:MSTest.exeへのパス
  • ※MSTest.exeはVisual Studioインストール先にあります。

    ジョブの新規作成

    左の「新規ジョブ作成」を押下し、ジョブ名とビルド形式を設定して「OK」を押すことで
    ジョブが作成され、ジョブの設定画面に移行します。

    ジョブ作成

    ジョブの新規作成

    ジョブの設定

    新規作成時以外でも、作成したジョブを選択して「設定」からもジョブの設定が行えます。

    ソースコード管理システム

    以下のようにプロジェクトフォルダを指定してください。(以下では「Subversion」を使用しています)

    ソースコード管理システム

    ソースコード管理システム

    ビルド

    「ビルド手順の追加」より以下のように追加し設定を行います。(上記で指定したフォルダから相対パスになっています)

    ビルド三色

    ビルド設定

  • Build a Visual Studio project or solution using MSBuild:実際にプロジェクトファイルを指定いてビルドを行います。
  • Windowsバッチコマンドの実行:ビルド時にWindowsコマンドを実行できます。
  • Run unit tests with MSTest:ビルド後のファイルを使用してMSTestを走らせます。
  • ビルド後の処理

    上記の設定でテスト結果が「TestResults」フォルダ内に作成されます、それを指定してJenkins内で表示させる設定を行います。

    テスト表示

    ビルド後の処理


    ※MSTestを動作させて初めて作成されるファイルなので始めは存在しません。

    実際にビルドを動かしてみる

    以上で大まかな設定は終了です、ジョブ選択画面へ戻り、以下のビルド実行ボタンを押すことで手動でビルドを開始させる事ができます。

    ビルド実行

    実行

    最後に

    今回必要最低限しか説明していませんが、ビルド・トリガの設定を行うことで、指定したタイミングで自動実行してくれます、それに色々なプラグインを導入することで、もっと色々なものが自動で実行させるように出来ます。

    初めは手まどいましたが、最低限の設定ができてしまえば後は簡単でした、ただMSTestは実行するたびに、ファイルを作成するのでWindowsバッチコマンドで削除する手順を踏まないとドンドン増えていってしまい、気がついた時にはすごかったです…