Androidアプリのビルド/テストはCIでここまで変わるグリーはいかにしてJenkinsを導入したのか(3)(1/2 ページ)

グリーのサービス開発における継続的インテグレーションと、CIツールであるJenkinsの導入について、CI導入のモチベーション、進め方のポイントを中心に説明します。今回は、apkの作成までの自動化を手始めに、徐々に自動化の資産を積み上げていくことで開発ワークフローを改善していく過程を紹介します。

» 2013年05月27日 18時00分 公開
[岡崎隆之,グリー]

 前回の「JenkinsでCIすればiOSアプリのビルドは、もう面倒くさくない」に続き、今回はAndroidアプリ開発とJenkinsについて紹介します。

Androidアプリのビルド

 Android開発の継続的インテグレーションの第一歩として、まずはAndroidアプリをJenkinsでビルドしてapkファイルを作成してみましょう。あらかじめJenkins、Android SDK、ならびにAntをインストールして設定しておいてください。

 今回はAndroidアプリのサンプルとしては、Android SDKに含まれるものを使います。AndroidサンプルアプリはGitレポジトリで管理されていますので、Jenkinsに「git plugin」も導入しておいてください。

 まずは適当なプロジェクトを作成して、Gitレポジトリを設定します。

Gitレポジトリ

 レポジトリには、たくさんのサンプルが含まれていますが、今回は「samples/AccelerometerPlay」ディレクトリにあるサンプルアプリを使って紹介します。

 続いて、ビルドの設定を行います。チェックアウトしたばかりのレポジトリにはAntビルドで利用するbuild.xmlがありませんので、これをandroidコマンドで作成してからantを実行します。

ビルド

 OS X/Mac OS XやLinuxなどでJenkinsを実行している場合はシェルの実行から、Windowsの場合はWindowsバッチコマンドの実行から次のコマンドを実行するように設定してください。

android update project --path samples/AccelerometerPlay --target android-17

 「--path」はプロジェクトディレクトリ、「--target」はターゲットとするAPIレベルを指定します。ここでは「android-17」(Android 4.2相当)を指定しています。

 続いて、antの呼び出しを設定します。高度な設定からビルドファイルを指定して、[ターゲット]には、ここでは「debug」を指定します。リリース用の場合は「release」を選びます。

保存するファイル

 作成したapkをJenkinsが管理できるようにパスを設定します。今回の場合は、「samples/AccelerometerPlay/**/*.apk」と指定しておいてください。ここまで設定ができたらプロジェクトを実行してみてください。

 どうでしょうか。これで無事にアプリのビルドはJenkinsに任せることができるようになりました。

実行後

Androidアプリ開発とテスト

 Androidアプリ開発におけるテストについては、次の連載に詳しく説明がありますので、こちらをご参照ください。

 AndroidアプリのテストはJUnitをはじめとして、「monkeyrunner」「NativeDriver」「robotium」など、さまざまなツールやソリューションがあります。

 例えば、Android Emulator Pluginを使えば、Android Emulatorを起動して、ビルド後にパッケージをインストールし、ランダム打鍵ツールの「monkey」を実行、結果の集計もできます。

Android Emulator Plugin

 エミュレータはサーバ上でJenkinsを動作させている場合のためにエミュレータウィンドウを表示しない設定もできますし、Androidのバージョンや解像度などをパラメータ化して複数のテストを実行するように設定することもできます。

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。