実践テスト駆動開発(GOOS本)の写経環境構築まとめ(Windows + Eclipse)

    実践テスト駆動開発(Growing Object-Oriented Software, Guided by Tests略してGOOS本)を読んでいる。

    開発環境構築が少し難しかったので、備忘録としてまとめ。

     

    設定環境

    • Windows 7 64bit

    環境構築

    以下の導入手順は省略で。

    • Java SE 1.7
    • Windows 7
    • Eclipse 4.2 Juno

    JUnit

    Javaの定番xUnitフレームワーク。以下の記事を参考。

    JMock

    Java用Mockオブジェクト生成のためのフレームワーク。

    このGoos本は、Mockオブジェクトを使ったTDDをまとめたもの。

    Smack

    SmackはXMPPをJavaから利用するためのライブラリ。

    XMPP(eXtensible Messaging and Presence Protocol)とは、XMLベースのメッセージプロトコルのこと。以下のリンクから最新版を落とす。

    ダウンロードしたら、smack.jar,smackx.jarを追加する。

    プロジェクトの[プロパティ] > [Javaのビルド・パス] > [外部Jarの追加]でsmack.jar,smackx.jar追加。

    Openfire

    xmpp サーバであるOpenfireを入れる。

    以下のリンクからwinodws版exeファイルの最新版を落とす。

    各種プラットホームに対応したインストーラがある。

    実行ファイルを起動するとインストーラが立ち上がるので、[次へ]を押して完了。

    Openfireの初期設定

    [Launch Admin]を選択して、初期設定をする。

    skitch(11)

    1. Language Settiing
    日本語ないので、適当に選択。
    1. Server Setting
    Domainは[localhost]
    
    あとは、Defaultのままに設定(Portは9090)
    1. Database Settings
    [Embedded Database]を選択。データベース詳しくないので、とりあえず速度は出ないがセットアップが楽そうなので。
    1. Profile Settings
    Default選択。
    1. Administrator Account
    adminはデフォルトで設定済み。パスワードを入力(pass)。

    OpenfireのGOOS設定

    Opnefireの初期設定ができたら、次はGOOS環境で使うための設定。

    ここからは、本のコラム『Openfireサーバをセットアップする』を参考にする。

    • 以下の3つのアカウントとパスワードを作っておく。

      [User/Groups]タブ > [Create New User]から、以下のアカウントを作成。

      • sniper: sniper
      • auction-item-54321: auction
      • auction-item-65432: auction
    • [Server]タブ > [ServerInfomation]でServer Name が[localhost]であることを確認。(もしくは、下の[Edit Propertyで変更)

    • [Server]タブ > [Server Setting] > [Resource Policy]で[Never kick]を選択。

    • Openfireを再起動。

      (Windowsでは『管理者として実行』しないと、起動に失敗した)

    WindowLicker

    JAVA用のGUIテスティングフレームワークであるWindowLickerをいれる。

    https://code.google.com/p/windowlicker/

    バイナリやパッケージはないらしい。

    以下、英語のGoogleグループの質問ページを自動翻訳したもの。(珍妙な訳・・・)

    https://groups.google.com/forum/?fromgroups=#!topic/growing-object-oriented-software/d5sdcR5wTkw

    あなたはwindowlicker.googlecode.comからWindowLickerを得ることができます。それはだ現在流動的な状況で、我々はそれが別のルックに対応するよう

    異なるプラットフォーム上で実行されているが、コア機能と、感じている

    (ポーリング、タイムアウトやエラーレポート)安定しています。

    バイナリ配布はまだありません。あなたはそれをからチェックアウトする必要がありますSVNとAntでビルドします。

    -ツꀀ NAT

    というわけで、svnコマンドでcheckoutして持ってくる。

    svn checkout https://windowlicker.googlecode.com/svn/trunk/ windowlicker-read-only

    githubにもあるっぽい。

    https://github.com/petercoulton/windowlicker

    $ git clone https://github.com/petercoulton/windowlicker.git windowlicker

    落としてきたらとりあえず、ビルド(./buil.shを利用)

    するといろいろとテストが始まって楽しい。

    build/jarsにjarファイルが作成されるので、それをEclipseの外部jarに登録。

    • windowlicker-core-DEV.jar
    • windowlicker-swing-DEV.jar

    参考