个人技术博客:
http://www.cooli.cc/
Cent OS 5.5 安裝 PHP 5.3 + PHPUnit 3.4 (教學備忘筆記)Posted: 3rd 九月 2010 by sj in 程式設計 - Programming, 資訊科技 - Infromation Technology
Tags: PHP, Web 2PHPUnit 介紹
PHPUnit 是目前在 PHP Programming 中最主流的測試框架,包括 Zend Framework 所使用的 Zend_Test 的底層也是交由 PHPUnit 來完成。為什麼需要測試框架呢?主要的原因為強化系統設計品質,然而將測試工作自動化是很重要的,在持續整合 (CI, Continuous Integration) 的範疇中也提到自動化測試的重要。我認為這些單元測試的框架與工具,都是測試驅動開發 (TDD, Test-Driven Development) 所帶來的產物,單元測試也引導我們程式設計師將程式撰寫為鬆偶合(依賴性低)的優異程式碼。藉由單元測試的進行,無形中能夠提升軟體品質,這也是單元測試 的最大目的。
安裝 PHPUnit
PHPUnit 官方網站如下:
http://www.phpunit.de/
官方有提供完整的安裝手冊如下:
http://www.phpunit.de/manual/3.4/en/installation.html
手冊上聲明 PHPUnit 3.4 需要 PHP 5.3.3 以上的版本,我想可能也用到了 PHP Namespace 這項功能吧(只是猜測)。
PHPUnit 3.4 requires PHP 5.1.4 (or later) but PHP 5.3.3 (or later) is highly recommended.
很遺憾的,Cent OS 5.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 這裡,安裝過程如下:
快樂撰寫第一支 Test Case
建立 /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));
}
}
?>
執行 phpunit StackTest.php 來進行測試,畫面如下:
整的過程蠻容易的,下一個階段來進行 CI 與整合 Nightly Build,體驗一下自動化測試的優點。
本文来源
http://blog.toright.com/?p=688
分享到:
相关推荐
Cent OS上配置Apache2 + SVN Cent OS上配置Apache2 + SVN
在Cent OS系统上安装和部署MongoDB,可以分为几个关键步骤:安装Cent OS、安装MongoDB、配置单节点、设置副本集以及部署分片集群。下面将详细讲解这些过程。 **1. 安装Cent OS** 首先,确保你的计算机上已经安装了...
CentOS系统中安装配置Apache+PHP+MySQL环境 本文档旨在指导用户在CentOS系统中安装配置Apache、PHP和MySQL环境,涵盖了Apache、PHP和MySQL的安装和配置过程。 Apache安装和配置 在CentOS系统中安装Apache需要下载...
虚拟机上安装 Cent-OS 全过程 本文将指导您在虚拟机上安装 Cent-OS 操作系统,总共包含 44 张截图,涵盖安装的每一个步骤。通过这篇文章,您将了解如何在虚拟机上安装 Cent-OS 操作系统,并掌握相应的安装步骤。 ...
### CentOS 下安装 Oracle 10 详细步骤及错误解决方法 #### 一、前期准备与环境检查 在开始安装 Oracle 10 之前,需要确保系统环境满足安装要求,并完成必要的准备工作。 **1.1 检查是否已安装 Oracle** - 执行...
CentOS系统默认安装了Open JDK,但通常开发者更倾向于使用Oracle的JDK。要卸载Open JDK,可以使用`rpm`命令: ``` rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5 rpm -e --nodeps java-1.4.2-gcj-...
- 选择安装位置,通常建议避免安装在C盘以减少系统盘的负担。 - 按照向导的提示,一路点击“下一步”直到安装完成。 - 安装完成后,重启电脑。重启后,在VMware Workstation的顶部菜单中选择“帮助”->“关于...
在本教程中,我们将深入探讨如何在Cent OS操作系统上安装并部署Redis,这是一个高效、开源的内存数据结构存储系统,常被用作数据库、缓存和消息代理。Redis以其高速性能和丰富的数据结构支持而备受青睐。以下是详细...
CentOS 5.5 下 Qt 的安装配置 在 CentOS 5.5 平台下安装 Qt 需要经过多个步骤,每个步骤都需要注意一些重要细节。本文将详细讲解 CentOS 5.5 下 Qt 的安装配置过程。 一、安装软件列表 在开始安装 Qt 之前,需要...
申延超 Cent OS 5 Linux NFS 服务 安装
cent os cent os
### Cent OS6.5安装Node.js详解 #### 标题:Cent OS6.5 安装nodeJS(分分钟搞定) #### 描述:本文将详细介绍如何在Cent OS6.5系统上快速安装Node.js。 #### 标签:node npm #### 内容概述 在本文中,我们将...
在本文中,我们将深入探讨如何在Cent OS 6.5操作系统上编译Hadoop 2.6.0的源码,以及如何利用编译生成的lib包目录替换官方下载资源中的对应目录。这个过程对于那些希望自定义Hadoop配置、优化性能或解决特定环境下的...
# CentOS安装 + MongoDB安装部署(单节点+副本集+分片)详细教程 ## 一、CentOS系统安装 在开始MongoDB的安装之前,首先需要确保你有一台运行CentOS的操作系统。以下是如何在CentOS上进行安装的步骤: 1. **更新...
Cent-OS安装和卸载docker Cent-OS安装和卸载docker是指在Cent-OS操作系统中安装和卸载docker容器引擎的步骤。docker是一种轻量级的操作系统虚拟化工具,可以在宿主机上运行多个隔离的容器,以提高服务器资源的利用...
Cent OS 7、Nginx 1.6、PHP 5.6、MySQL 5.6开发环境搭建,源码编译安装_vagrant-lnmp
前段时间在centOS7系统下安装oracle11g,期间遇到了各种各样奇葩的问题,自己找了很多参考资料,然后一点点摸索,最后把错误都排除,顺利安装,使用也暂时没出现过问题,过程实在很虐。于是自己整理了一下前辈们的...
在CentOS 7环境下,没有网络的情况下安装Redis是一项挑战,因为通常我们会依赖在线包管理器如`yum`来获取和安装软件。然而,通过手动下载所需的依赖包并使用本地安装方式,我们仍然可以完成Redis的安装。以下是详细...
- **安装 MySQL 安装源**:使用 `rpm -ivh mysql57-community-release-el7-8.noarch.rpm` 命令安装。 - **安装 MySQL 服务器**:通过 `yum install mysql-server` 进行安装。 ##### 设置 MySQL 密码 - **临时跳过...