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程序中的常见漏洞进行攻击(上)
Oct 09 PHP
PHP Smarty生成EXCEL文档的代码
Aug 23 PHP
php 8小时时间差的解决方法小结
Dec 22 PHP
学习php设计模式 php实现单例模式(singleton)
Dec 07 PHP
php面向对象编程self和static的区别
May 08 PHP
php进行ip地址掩码运算处理的方法
Jul 11 PHP
PHP单态模式简单用法示例
Nov 16 PHP
PHP如何获取当前主机、域名、网址、路径、端口等参数
Jun 09 PHP
简单谈谈PHP面向对象之标识对象
Jun 27 PHP
PHP 中魔术常量的实例详解
Oct 26 PHP
PHP实现图片压缩
Sep 09 PHP
php获取是星期几的的一些常用姿势
Dec 15 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/12/06 PHP
thinkphp备份数据库的方法分享
2015/01/04 PHP
php封装的连接Mysql类及用法分析
2015/12/10 PHP
PHP程序中使用adodb连接不同数据库的代码实例
2015/12/19 PHP
PHP实现QQ登录实例代码
2016/01/14 PHP
PHP中strpos、strstr和stripos、stristr函数分析
2016/06/11 PHP
php实现多维数组排序的方法示例
2017/03/23 PHP
Laravel中任务调度console使用方法小结
2017/05/07 PHP
thinkPHP+mysql+ajax实现的仿百度一下即时搜索效果详解
2019/07/15 PHP
php7连接MySQL实现简易查询程序的方法
2020/10/13 PHP
Ext javascript建立超链接,进行事件处理的实现方法
2009/03/22 Javascript
用JavaScript玩转游戏物理(一)运动学模拟与粒子系统
2010/06/19 Javascript
jQuery 源码分析笔记(5) jQuery.support
2011/06/19 Javascript
5秒后跳转到另一个页面的js代码
2013/10/12 Javascript
JavaScript中的getTimezoneOffset()方法使用详解
2015/06/10 Javascript
JavaScript动态创建form表单并提交的实现方法
2015/12/10 Javascript
javascript获取select标签选中的值
2016/06/04 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
2017/02/16 Javascript
AngularJS实现的回到顶部指令功能实例
2017/05/17 Javascript
详解tween.js 中文使用指南
2018/01/05 Javascript
微信小程序实现单列下拉菜单效果
2019/04/25 Javascript
深入了解js原型模式
2019/05/30 Javascript
layui自定义插件citySelect实现省市区三级联动选择
2019/07/26 Javascript
使用pkg打包ThinkJS项目的方法步骤
2019/12/30 Javascript
vscode中Vue别名路径提示的实现
2020/07/31 Javascript
利用Python脚本实现ping百度和google的方法
2017/01/24 Python
python连接数据库的方法
2017/10/19 Python
matlab中实现矩阵删除一行或一列的方法
2018/04/04 Python
Python装饰器用法实例总结
2018/05/26 Python
python2和python3哪个使用率高
2020/06/23 Python
html5 桌面提醒:Notifycations应用介绍
2012/11/27 HTML / CSS
事业单位个人应聘自荐信
2013/09/21 职场文书
简历自我评价怎么写呢?
2014/01/06 职场文书
证婚人婚礼致辞
2015/07/28 职场文书
Java字符串逆序方法详情
2022/03/21 Java/Android
如何在Python中妥善使用进度条详解
2022/04/05 Python