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 相关文章推荐
PHP 和 COM
Oct 09 PHP
一些常用的php函数
Dec 06 PHP
php Static关键字实用方法
Jun 04 PHP
PHP实现多进程并行操作的详解(可做守护进程)
Jun 18 PHP
Yii操作数据库的3种方法
Mar 11 PHP
php出现内存位置访问无效错误问题解决方法
Aug 16 PHP
thinkphp模板赋值与替换实例简述
Nov 24 PHP
PHP实现简单汉字验证码
Jul 28 PHP
PHP的Yii框架中Model模型的学习教程
Mar 29 PHP
golang与php实现计算两个经纬度之间距离的方法
Jul 22 PHP
详解PHP如何更好的利用PHPstorm的自动提示
Aug 18 PHP
用PHP的反射实现委托模式的讲解
Mar 22 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模板技术原理【一】
2008/01/10 PHP
PHP扩展模块Pecl、Pear以及Perl的区别
2014/04/09 PHP
Laravel框架路由和控制器的绑定操作方法
2018/06/12 PHP
IE/FireFox具备兼容性的拖动代码
2007/08/13 Javascript
javascript 面向对象编程基础:封装
2009/08/21 Javascript
JQuery 遮罩层实现(mask)实现代码
2010/01/09 Javascript
javascript 弹出层组件(升级版)
2011/05/12 Javascript
不用锚点也可以平滑滚动到页面的指定位置实现代码
2013/05/08 Javascript
js实现对table动态添加、删除和更新的方法
2015/02/10 Javascript
Javascript技术难点之apply,call与this之间的衔接
2015/12/04 Javascript
javascript返回顶部的按钮实现方法
2016/01/09 Javascript
JS实现的数字格式化功能示例
2017/02/10 Javascript
神级程序员JavaScript300行代码搞定汉字转拼音
2017/05/20 Javascript
JavaScript中正则表达式使数字、中文或指定字符高亮显示
2017/10/31 Javascript
使用Bootstrap + Vue.js实现表格的动态展示、新增和删除功能
2017/11/27 Javascript
vue-cli 3.x 配置Axios(proxyTable)跨域代理方法
2018/09/19 Javascript
使用Vue.observable()进行状态管理的实例代码详解
2019/05/26 Javascript
微信小程序位置授权处理方法
2019/06/13 Javascript
原生javascript自定义input[type=radio]效果示例
2019/08/27 Javascript
VUEX-action可以修改state吗
2019/11/19 Javascript
iview实现动态表单和自定义验证时间段重叠
2021/01/10 Javascript
python实现给字典添加条目的方法
2014/09/25 Python
PyCharm安装第三方库如Requests的图文教程
2018/05/18 Python
python 去除txt文本中的空格、数字、特定字母等方法
2018/07/24 Python
Python分布式进程中你会遇到的问题解析
2019/05/28 Python
Python Print实现在输出中插入变量的例子
2019/12/25 Python
python使用numpy实现直方图反向投影示例
2020/01/17 Python
pytorch加载自己的图像数据集实例
2020/07/07 Python
自定义Django_rest_framework_jwt登陆错误返回的解决
2020/10/18 Python
boostrap modal 闪现问题的解决方法
2020/09/01 HTML / CSS
恒华伟业笔试面试题
2015/02/26 面试题
聚美优品恶搞广告词
2014/03/14 职场文书
商务日语专业毕业生自荐信
2014/03/27 职场文书
活动总结报告格式
2014/05/09 职场文书
2015年企业新年寄语
2014/12/08 职场文书
论文致谢词范文
2015/05/14 职场文书