まっつんチャレンジ osc出張編 45分でわかる...

Post on 22-Apr-2015

5.348 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

  

45分でわかるPHP+Eclipseによるテスト駆動開発環境の構築

Piece Project 松藤秀治 matsufuji2008@gmail.com

オープンソースカンファレンス2011 Kyoto

まっつんチャレンジ OSC出張編

まっつん

MakeGood開発者 Twitter @matsu_hide

まっつんチャレンジ 次世代の技術やあまり知られていないが

高度な技術を紹介

「チャレンジ」なので結構無謀

一部で評価

http://iteman.jp/blog/

Piece Framework

PHPのアプリケーションフレームワーク オープンソースソフトウェア

New BSD License Eclipse Public License

今日の話

TDDのための環境の構築 なぜ環境構築の話をしようと思ったか

スライドは公開します

開発環境と本番環境

本番環境の多くは Linux 開発環境も Linuxにしよう 今日は Windowsで話します

基本方針 楽しんで作りましょう

オールインワン系は使用しない

OSへの依存 Windows

→なるべくインストーラのないもの Linux

→パッケージングシステムを使う パスは短めに

システムワイドとプロジェクトローカル

ライブラリ (PEAR)環境をプロジェクトに閉じ込め、アップグレードや削除の影響を他のプロジェクトに与えないようにする

ディレクトリ構成 (例 )

今回の環境 Windows XP SP3 PHP 5.3.6 Xdebug 2.1.1 Eclipse Indigo (3.7.0) PDT 3.0 MakeGood 1.6.0 PHPUnit 3.5.14

手順PHPのインストール・設定

Xdebugのインストール・設定

Eclipseのインストール

PHPプロジェクトの作成

PEARのインストール

PHPUnitのインストール

PDT, MakeGoodの設定

PHP

VC6 or VC9, スレッドセーフ→ HTTPサーバ、動作に合わせて選択

5.3.6からは VC9のみ

php.ini php.ini-developmentを使用 ~/site-php/configに配置 Eclipse用と HTTPサーバ用とに分ける

→ PDTは追加の設定ファイルを読み込まないため、 Eclipse用の php.iniにはロードするエクステンションをすべて記述する必要がある

手順PHPのインストール・設定

Xdebugのインストール・設定

Eclipseのインストール

PHPプロジェクトの作成

PEARのインストール

PHPUnitのインストール

PDT, MakeGoodの設定

Xdebug PHPと同じビルド環境を選ぶ Windowsはダウンロードするだけ ~/site-php/extに配置 ~/site-php/config/php.iniの設定

[xdebug]zend_extension=C:/cygwin/home/matsu/site-php/ext/php_xdebug-2.1.1-5.3-vc9.dllxdebug.remote_port=9000

手順PHPのインストール・設定

Xdebugのインストール・設定

Eclipseのインストール

PHPプロジェクトの作成

PEARのインストール

PHPUnitのインストール

PDT, MakeGoodの設定

Eclipse

Pleiadesは使わない Indigo(3.7)から PDTパッケージがなくなったので Classic(SDK)パッケージを使用する

ワークスペース

ワークスペースは Eclipseのバージョンごとに作り直す

ワークスペースの命名規則の例→ パッケージ+バージョン (sdk-3.7.0)

プロジェクトはワークスペースにコピーしない

Marketplace Client

[--All Available Sites--]を選択する

“market” と入力する

[Help]→[Install New Software...]

PDT

[--All Available Sites--]を選択する

“php”と入力する

[Help]→[Install New Software...]

MakeGood

“makegood” と入力する

葉っぱのアイコンのMakeGoodをインストールする

[Help]→[Eclipse Markeplace...]

そのほかのプラグイン

必要に応じてプラグインをインストール

EGit

手順PHPのインストール・設定

Xdebugのインストール・設定

Eclipseのインストール

PHPプロジェクトの作成

PEARのインストール

PHPUnitのインストール

PDT, MakeGoodの設定

PHPプロジェクトの作成

ワークスペースにプロジェクトを配置しないように、 [Create project at existing location (from existing source)]を選択する

[File]→[New]→[PHP Project...]

手順PHPのインストール・設定

Xdebugのインストール・設定

Eclipseのインストール

PHPプロジェクトの作成

PEARのインストール

PHPUnitのインストール

PDT, MakeGoodの設定

プロジェクトローカルの PEAR環境ライブラリのアップグレードや削除の影響を他のプロジェクトに与えないようにするためにプロジェクト固有の PEAR環境を構築する

1.vendorディレクトリを作成する2.PHPのディレクトリから以下を vendorにコピーする

・ go-pear.bat・ pear(ディレクトリ )

3.コマンドラインで go-pear.batを実行する4.途中システムかローカルかのいずれにインストールする かを問い合わせてくるので [local]を選ぶ

プロジェクトローカルの PEAR環境

フルパスが埋め込まれているため、ほかの環境ではメンテナンスできない

解決方法ITEMAN Blog「プロジェクトローカルな PEAR環境を構築する」

手順PHPのインストール・設定

Xdebugのインストール・設定

Eclipseのインストール

PHPプロジェクトの作成

PEARのインストール

PHPUnitのインストール

PDT, MakeGoodの設定

PHPUnit

PEARでインストール インストール方法はドキュメントを参照

ドキュメントに従っても環境によってはうまくインストールできない場合があるが、メッセージに従って依存するライブラリをインストールしていけば問題ない

手順PHPのインストール・設定

Xdebugのインストール・設定

Eclipseのインストール

PHPプロジェクトの作成

PEARのインストール

PHPUnitのインストール

PDT, MakeGoodの設定

PDTの実行環境とデバッガ

PDTではひとつの実行環境に対してひとつのデバッガを指定する

デバッガには Xdebugか Zend Debuggerを指定できる

デフォルトの設定としてデバッガとそのデバッガを使用できる実行環境を設定する

テスト環境の構築

ResultSqure MakeGoodビュー

ResultSqureをダブルクリックしてMakeGoodビューを開く

テスト環境の構築

テストを実行できない場合、 MakeGoodビューにその理由が表示されるので、そのメッセージに従うと比較的容易に環境を構築できる

テスト環境の構築

PHPの実行環境を設定する [Window]→[Preferences...] [PHP]→[PHP Executables] [Add...]ボタンで実行環境を追加する

テスト環境の構築

PHPの実行ファイル、設定ファイル、 SAPIのタイプ、デバッガをそれぞれ設定する

テスト環境の構築

使用するデバッガを選択する

[Window]→[Preferences...] [PHP]→[PHP Debug]

テスト環境の構築デフォルトのデバッガと使用する実行環境を選択する

テスト環境の構築

MakeGoodの設定を行う プロジェクトを右クリックして[Properties...]

[MakeGood]

テスト環境の構築

テスティングフレームワークやプリロードスクリプト、テストディレクトリを設定する

テストの実行

まとめ

楽しんで作りましょう

オールインワン系は使用しない

常に工夫する

Linuxを使おう MakeGoodを使おう

@piece_framework Piece Frameworkのニュース

@iteman iteman

@matsu_hide まっつん

Twitter

PHP for Windowshttp://windows.php.net/

Xdebughttp://xdebug.org/

Eclipsehttp://eclipse.org/

PHPUnitのインストールhttp://www.phpunit.de/manual/3.5/ja/installation.html

参考サイト

MakeGoodhttp://redmine.piece-framework.com/projects/makegood

ITEMAN Blog 「プロジェクトローカルな PEAR 環境を構築する」http://iteman.jp/blog/2009/04/pear-1.html

参考サイト

GitHub http://github.com/piece

Piece Frameworkプロダクトページ http://redmine.piece-framework.com

MakeGoodプロダウトページ http://redmine.piece-

framework.com/projects/makegood

関連サイト

top related