PHPUnit入门基础教程

   2017-02-05 0
核心提示:PHPUnit是PHP语言的单元测试框架、工具,xunit单元测试工具系列成员之一,可以单独运行在Linux或windows系统下面,也可以集成到zend studio等IDE工具中。 工具下载: https://phpunit.de/index.html在线手册: https://phpunit.de/manual/4.6/zh_cn/index.htm

PHPUnit是PHP语言的单元测试框架、工具,xunit单元测试工具系列成员之一,可以单独运行在Linux或windows系统下面,也可以集成到zend studio等IDE工具中。

工具下载: https://phpunit.de/index.html

在线手册: https://phpunit.de/manual/4.6/zh_cn/index.html

工具安装参见在线手册文档

在命令行下使用PHPUnit进行单元测试

1、配置好phpunit命令的path等环境变量,确保能在任意目录下执行phpunit命令。

2、直接使用phpunit命令来运行测类文件:

PHPUnit入门基础教程

..    2个测试方法都运行成功

OK  包括2个测试方法,4个断言

  • .    当测试成功时输出。
  • F   当测试方法运行过程中一个断言失败时输出。
  • E   当测试方法运行过程中产生一个错误时输出。
  • R   当测试被标记为有风险时输出。
  • S   当测试被跳过时输出。
  • I   当测试被标记为不完整或未实现时输出。

在zend studio中使用PHPUnit框架

1.为需要进行单元测试的项目添加phpunit的Library。

右键点击项目->properties->PHP Include Path->Libraries选项卡

PHPUnit入门基础教程 点击 Add Library... ,选择PHPUnit x.x->Next->Finish
点击OK,phpunit的Library就添加成功了 

2、编写测试类( 继承PHPUnit框架的PHPUnit_Framework_TestCase类)

待测试的Demo类:

PHPUnit入门基础教程

右键点击项目->New->PHPUnit Test Case,新建测试用例类(也可以直接新建普通的PHP File):

PHPUnit入门基础教程

可以选择要测的类或函数:

PHPUnit入门基础教程

完成后,或自动生成PHPUnit框架代码:

PHPUnit入门基础教程

<?

php

require_once 'Demo.php'

;  //包含被测试的类文件

require_once 'PHPUnit/Framework/TestCase.php'

;  //包含框架类库,当在命令行下使用phpunit命令运行单元测试时,无需此条语句

/*

*

* Demo test case.

*/
class DemoTest extends

PHPUnit_Framework_TestCase  //测试类名以被测试类名+Test命名,继承测试框架测试用例类

{

/*

*

*

* @var Demo

*/
private $Demo

;

/*

*

* Prepares the environment before running a test.

*/
protected function

setUp()        //测试前配置测试环境

{

::

setUp();

// TODO Auto-generated DemoTest::setUp()

$this ->Demo = new Demo( /* parameters */

);

}

/*

*

* Cleans up the environment after running a test.

*/
protected function

tearDown()  //测试后清理测试环境

{

// TODO Auto-generated DemoTest::tearDown()
$this ->Demo = null

;

::

tearDown();

}

/*

*

* Constructs the test case.

*/
public function

__construct()  //构造函数

{

// TODO Auto-generated constructor

}

/*

*

* Tests Demo->sum()

*/
public function

testSum()  //测试方法以test+被测试的方法命名

{

//

TODO Auto-generated DemoTest->testSum()

$this ->assertEquals(4, $this ->Demo->sum(2,2

));    //断言

$this ->assertEquals(0, $this ->Demo->sum(0,0

));

}

/*

*

* Tests Demo->subtract()

*/
public function

testSubtract()

{

//

TODO Auto-generated DemoTest->testSubtract()

$this ->assertNotEquals(3, $this ->Demo->subtract(1,1

));

$this ->assertEquals(0, $this

));

}

}

Xunit框架执行顺序:

PHPUnit入门基础教程

3、运行单元测试

右键点击测试文件->Run as->PHPUnit Test就可以进行单元测试了:

PHPUnit入门基础教程

单元测试运行成功状态(绿色):

PHPUnit入门基础教程

 
标签: PHPUnit
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与乐学笔记(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • PHPUnit 5.7.9 发布,PHP 单元测试框架
    PHPUnit 5.7.9 发布,PHP 单元测试框架
    PHPUnit 5.7.9 发布,PHP 单元测试框架王练 发布于2017年02月03日 收藏 0 MongoDB漏洞是什么?应该如何防护? PHPUnit 5.7.9发布了,PHPUnit是面向 PHP 的测试框架,是单元测试框架xUnit 的一个实例。 更新内容:修复:Reverted backwards incompatible chang
  • PHPUnit 6.0.3 和 5.7.10 发布,PHP 单元测试框架
    PHPUnit 6.0.3 和 5.7.10 发布,PHP 单元测试框
    PHPUnit 6.0.3 和 5.7.10 发布,PHP 单元测试框架王练 发布于2017年02月05日 收藏 0 MongoDB漏洞是什么?应该如何防护? PHPUnit 6.0.3和 5.7.10 发布了,PHPUnit是面向 PHP 的测试框架,是单元测试框架xUnit 的一个实例。 6.0.3 更新内容: Fixed #2460 : 更
  • 组合使用Laravel和vfsStream测试文件上传
    核心要点 在应用开发中,测试是很重要的,在诸多的开发工具中,测试驱动开发是很伟大的一项; 测试文件上传并不像人们想象的那么简单; 目前,有很多很棒,但不为大家所熟知的测试工具; Larval能够让请求的校验更容易; 测试并不需要实际的文件系统,因为如
  • 如何使用 PHPUnit 測試 private 與 protected method?
    如何使用 PHPUnit 測試 private 與 protected m
    剛開始學習寫測試時,最多人的疑問就是該如何測試 private 與 protected method?,理論上不該去測試 private 與 protected ,本文會介紹一個 PHP 邪惡的技巧來完成測試,但建議除非萬不得已,不要使用此方法。 Motivation 在 PHPConf 第二天的 workshop,我曾
    11-22 PHPUnit
  • 如何使用 PHPUnit mock Closure?
    如何使用 PHPUnit mock Closure?
    若有需求需要抽換,物件導向編程教我們的是開 interface 達成解耦合,然後使用依賴注入,最後達成依賴反轉目標,隨著函數式編程越來越流行,函數式編程教我們將 closure 當成參數傳進函式,一樣可以解耦合與依賴反轉,尤其對於只使用一次的需求特別有效,不用
    11-22 PHPUnit
  • Phpstorm配置phpunit对php进行单元测试
    Phpstorm配置phpunit对php进行单元测试
    在 phpstorm 中配置 php 项目的单元测试,项目使用 Composer 进行管理,为了避免在项目中直接引入 phpunit 相关代码包,使项目的 vendor 目录变得臃肿,这里采用全局安装方式安装了 phpunit 代码包。 composer global require phpunit/phpunit=5.0.* 安装完成
  • PhpStorm 10 发布,PHP 7 和 PHPUnit 5 支持
    PhpStorm 10 发布,PHP 7 和 PHPUnit 5 支持
    PhpStorm 10 正式版发布 下载 ,此版本最主要的是 PHP 语言支持,编辑体验改进,调试器改进,代码分析改进和其他强大的新特性。 改进列表:PHP 语言和编辑体验:PHP 7支持 (including PHP 7 compatibility inspections),改进代码完成功能 新调试体验:PHP 交
  • PHP单元测试利器 PHPUNIT初探第1/2页
    PHP单元测试利器 PHPUNIT初探第1/2页
    你是否在程序开发的过程中遇到以下的情况:当你花了很长的时间开发一个应用后,你认为应该是大功告成了,可惜在调试的时候,老是不断的发现bug,而且最可怕的是,这些bug是重复出现的,你可能发现这些bug之间会有关联,但却老是找不到问题的所在。
    11-15 PHPUNIT
  • PHP单元测试利器 PHPUNIT深入用法(二)第1/2页
    PHP单元测试利器 PHPUNIT深入用法(二)第1/2页
    在上一篇PHP单元测试利器:PHPUNIT初探文章中,我们对phpunit有了一个初步的认识,在本文中将继续深入讲解下phpunit中的一些用法。
  • PHPUnit PHP测试框架安装方法
    PHPUnit是一个轻量级的PHP测试框架。它是在PHP5下面对JUnit3系列版本的完整移植,是xUnit测试框架家族的一员(它们都基于模式先锋Kent Beck的设计)。
点击排行