PHPUnit安装及使用示例


Posted in PHP onOctober 29, 2014

PHPUnit是zend官方大力支持的测试框架,高质量的单元测试时保证项目质量的基础,能够有效的减少BUG,改善程序。

安装PHPUnit:

在php的目录下:

pear channel-discover pear;

pear install phpunit/PHPUnit

windows下将php的环境变量加入到PATH环境变量中。
简单使用:

<?php

class StackTest extends PHPUnit_Framework_TestCase

{

 

    public function testArray()

    {

        $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));

    }

    

    /**

     * @test

     */

    public function Stringlen()

    {

        $str = 'abc';

        $this->assertEquals(3,  strlen($str));

    }

}

从上可以看到编写PHPUnit的基本规律:
(1)类Class的测试写在ClassTest中
(2)ClassTest继承PHPUnit_Framework_TestCase
(3)测试方法都是test*格式,也可以通过@test将其标注为测试方法。
(4)通过断言方法assertEquals来对实际值和预期值进行断言。

PHP 相关文章推荐
web方式ftp
Oct 09 PHP
PHP 查找字符串常用函数介绍
Jun 07 PHP
有关PHP性能优化的介绍
Jun 20 PHP
Windows中使用计划任务自动执行PHP程序实例
May 09 PHP
PHP中copy on write写时复制机制介绍
May 13 PHP
php使用标签替换的方式生成静态页面
May 21 PHP
thinkphp实现163、QQ邮箱收发邮件的方法
Dec 18 PHP
Android AsyncTack 异步任务实例详解
Nov 02 PHP
php实现URL加密解密的方法
Nov 17 PHP
PHP实现的多维数组去重操作示例
Jul 21 PHP
PHP精确到毫秒秒杀倒计时实例详解
Mar 14 PHP
Smarty缓存机制实例详解【三种缓存方式】
Jul 20 PHP
laravel安装和配置教程
Oct 29 #PHP
laravel 4安装及入门图文教程
Oct 29 #PHP
thinkphp浏览历史功能实现方法
Oct 29 #PHP
thinkphp获取栏目和文章当前位置的方法
Oct 29 #PHP
thinkphp实现like模糊查询实例
Oct 29 #PHP
ThinkPHP结合AjaxFileUploader实现无刷新文件上传的方法
Oct 29 #PHP
PHP多个文件上传到服务器实例
Oct 29 #PHP
You might like
通过对服务器端特性的配置加强php的安全
2006/10/09 PHP
用PHP制作的意见反馈表源码
2007/03/11 PHP
用PHP将数据导入到Foxmail的实现代码
2010/09/05 PHP
PHP 实现explort() 功能的详解
2013/06/20 PHP
PHP生成唯一订单号
2015/07/05 PHP
php脚本运行时的超时机制详解
2016/02/17 PHP
利用php-cli和任务计划实现刷新token功能的方法
2017/05/03 PHP
Laravel 实现关系模型取出需要的字段
2019/10/10 PHP
javascript检测浏览器flash版本的实现代码
2011/12/06 Javascript
javascript Event对象详解及使用示例
2013/11/22 Javascript
showModalDialog在谷歌浏览器下会返回Null的解决方法
2013/11/27 Javascript
iframe的onreadystatechange事件在firefox下的使用
2014/04/16 Javascript
JavaScript轮播图简单制作方法
2017/02/20 Javascript
js轮播图无缝滚动效果
2017/06/17 Javascript
js基于FileSaver.js 浏览器导出Excel文件的示例
2017/08/15 Javascript
用VueJS写一个Chrome浏览器插件的实现方法
2019/02/27 Javascript
详解微信小程序开发用户授权登陆
2019/04/24 Javascript
Vue实现图书管理案例
2021/01/20 Vue.js
Python访问MySQL封装的常用类实例
2014/11/11 Python
python matplotlib中文显示参数设置解析
2017/12/15 Python
pymongo中聚合查询的使用方法
2019/03/22 Python
用Python配平化学方程式的方法
2019/07/20 Python
python 抓包保存为pcap文件并解析的实例
2019/07/23 Python
python flask中动态URL规则详解
2019/11/22 Python
五分钟学会怎么用Pygame做一个简单的贪吃蛇
2021/01/06 Python
解决CSS3 transition-delay 属性默认值0不带单位失效的问题
2020/10/29 HTML / CSS
La Senza官网:北美顶尖性感内衣品牌
2018/08/03 全球购物
留学自荐信的技巧
2013/10/17 职场文书
俄语专业毕业生推荐信
2013/10/28 职场文书
秋季运动会加油稿200字
2014/01/11 职场文书
市场部规章制度
2014/01/24 职场文书
中专毕业生自我鉴定
2014/02/02 职场文书
捐款倡议书格式范文
2014/05/14 职场文书
2014校长四风问题对照检查材料思想汇报
2014/09/16 职场文书
研究生毕业论文导师评语
2014/12/31 职场文书
浅谈Nginx 中的两种限流方式
2021/03/31 Servers