TMD45'β'LOG!!!

Life is Beta-ful.

Mac OS X 開発環境に PHPUnit を導入する

Keyword: Mac, MacPorts, PHP, PHPUnit, EMOBILE, D21LC

 

先日テスト駆動開発の勉強会に参加したのですが、環境構築でタイムアウト…というのも EMOBILE の USB モデムが一部の port を遮断してた。ひどい。
うちの D21LC の場合は、EMOBILE の接続ユーティリティから[ユーザ設定]→[接続先プロファイル]で「プロトコル制限あり」以外を選択するようにしたら SSH でもなんでも繋がるようになりましたε-(´∀`*)ホッ

 

まぁそれはそれで置いといて、今週やっと PHPUnit の導入が終わったので記録しておきます。

環境

インストール

PHPUnit のインストール(PHPUnit Manual)*1を参考に、pear インストーラを使用してインストールします。

$ sudo pear install phpunit/PHPUnit
phpunit/PHPUnit can optionally use PHP extension "curl"
phpunit/PHPUnit can optionally use PHP extension "dbus"
pear/XML_RPC2 requires PHP extension "curl"
phpunit/PHPUnit requires package "pear/XML_RPC2"
No valid packages found
install failed

お約束どおり失敗しました。(´・ω・`)
エラーログと、こちら↓の記事を参考にしたところ「PHP extention "curl"」が必要なようです。*2


で、これ勘違いして $ port install curl とかやってたんですが、Linuxcurl コマンドが必要なわけじゃなくて、PHP の拡張モジュールとしての curl が必要なんですね。エラー見れば判る話なんだけどすっかり思い込んでいた…


というわけで、MacPorts で php5-curl をインストールします。
まずはいつもどおり検索。

$ port search php5-curl
php5-curl @5.3.6 (php, net, www)
    a PHP interface to the curl library, which lets you download files from servers with a variety of protocols

はい、インストール*3

$ sudo port install php5-curl
--->  Computing dependencies for php5-curl
--->  Fetching php5-curl
--->  Verifying checksum(s) for php5-curl
--->  Extracting php5-curl
--->  Configuring php5-curl
--->  Building php5-curl
--->  Staging php5-curl into destroot
--->  Installing php5-curl @5.3.6_0
--->  Activating php5-curl @5.3.6_0
--->  Cleaning php5-curl

php.ini にモジュール(curl.so)を追記する必要はありません*4


これで準備が整ったので、再度 PHPUnit をインストール。

$ sudo pear install phpunit/PHPUnit
phpunit/PHPUnit can optionally use PHP extension "dbus"
downloading PHPUnit-3.5.14.tgz ...
Starting to download PHPUnit-3.5.14.tgz (118,697 bytes)
..........................done: 118,697 bytes
downloading XML_RPC2-1.0.8.tgz ...
Starting to download XML_RPC2-1.0.8.tgz (67,063 bytes)
...done: 67,063 bytes
install ok: channel://pear.php.net/XML_RPC2-1.0.8
install ok: channel://pear.phpunit.de/PHPUnit-3.5.14

おなじみのバージョン確認。

$ phpunit --version
PHPUnit 3.5.14 by Sebastian Bergmann.

入ったー!

以上でインストール完了です。

インストールだけでまだ使ってませんが、かんたんな演習をやってみるか、NetBeans に設定してさっそく開発しながら使ってみるか、これから考えます。

*1:リンク先は PHPUnit 3.6 のマニュアルですが、3.5 のマニュアルも同じサイトにあります。

*2:PHP extension "dbus"」は Web アプリなら使わないものらしいので入れませんでした(https://twitter.com/#!/meke_meke/status/86092824839331842)。

*3:今回は variants 見るの忘れたけどなんとかなった(汗)

*4:curl.ini ファイルが作成されています。

▲ ページトップへ移動