会写code的凳子哥 2011-04-11
个人技术博客:http://www.cooli.cc/
CentOS5.5安裝PHP5.3+PHPUnit3.4(教學備忘筆記)Posted:3rd九月2010bysjin程式設計-Programming,資訊科技-InfromationTechnology
Tags:PHP,Web2PHPUnit介紹
PHPUnit是目前在PHPProgramming中最主流的測試框架,包括ZendFramework所使用的Zend_Test的底層也是交由PHPUnit來完成。為什麼需要測試框架呢?主要的原因為強化系統設計品質,然而將測試工作自動化是很重要的,在持續整合(CI,ContinuousIntegration)的範疇中也提到自動化測試的重要。我認為這些單元測試的框架與工具,都是測試驅動開發(TDD,Test-DrivenDevelopment)所帶來的產物,單元測試也引導我們程式設計師將程式撰寫為鬆偶合(依賴性低)的優異程式碼。藉由單元測試的進行,無形中能夠提升軟體品質,這也是單元測試的最大目的。
安裝PHPUnit
PHPUnit官方網站如下:
http://www.phpunit.de/
官方有提供完整的安裝手冊如下:
http://www.phpunit.de/manual/3.4/en/installation.html
手冊上聲明PHPUnit3.4需要PHP5.3.3以上的版本,我想可能也用到了PHPNamespace這項功能吧(只是猜測)。
PHPUnit3.4requiresPHP5.1.4(orlater)butPHP5.3.3(orlater)ishighlyrecommended.
很遺憾的,CentOS5.5提供的PHP版本為5.1.x,所以我只好先升級PHP囉。步驟僅需執行以下指令(機器需可以連上網路喔):
先移除舊版5.1.x
[root$cent ~]# yum remove php
新增Repository與yum安裝
[root$cent ~]# rpm -ivh http://repo.webtatic.com/yum/centos/5/`uname -i`/webtatic-release-5-1.noarch.rpm
[root$cent ~]# yum --enablerepo=webtatic install php
完成以後就可以安裝PHPUnit囉,我們依照官方文件先安裝PEAR,安裝方法實在太太簡單了,如下:
[root$cent ~]# yum install php-pear
安裝完後請輸入以下指令繼續安裝PHPUnit:
[root$cent ~]# pear channel-discover pear.phpunit.de [root$cent ~]# pear channel-discover pear.symfony-project.com [root$cent ~]# pear install phpunit/PHPUnit
這樣安裝完成了,PHPUnit預設會被裝在/usr/local/lib/php/PHPUnit這裡,安裝過程如下:
快樂撰寫第一支TestCase
建立/tmp/StackTest.php檔案,內容如下:
<?php require_once '/usr/local/lib/php/PHPUnit/Framework.php'; class StackTest extends PHPUnit_Framework_TestCase { public function testPushAndPop() { $stack = array(); $this->assertEquals(0, count($stack)); array_push($stack, 'foo'); $this->assertEquals('foo', $stack[count($stack)-1]); $this->assertEquals(1, count($stack)); $this->assertEquals('foo', array_pop($stack)); $this->assertEquals(0, count($stack)); } } ?>
執行phpunitStackTest.php來進行測試,畫面如下:
整的過程蠻容易的,下一個階段來進行CI與整合NightlyBuild,體驗一下自動化測試的優點。
本文来源http://blog.toright.com/?p=688