安装并使用PHPunit

    Linux 下安装PHPunit

    PHP 档案包 (PHAR) 
    要获取 PHPUnit,最简单的方法是下载 PHPUnit 的 PHP 档案包 (PHAR),它将 PHPUnit 所需要的所有必要组件(以及某些可选组件)捆绑在单个文件中:

    要使用 PHP档案包(PHAR)需要有 phar 扩展。

    要使用 PHAR 的 –self-update 功能需要有 openssl 扩展。

    如果启用了 Suhosin 扩展,需要在 php.ini 中允许执行 PHAR:

    suhosin.executor.include.whitelist = phar 
    如果要全局安装 PHAR:

$ wget https://phar.phpunit.de/phpunit.phar
$ chmod +x phpunit.phar
$ chmod +x phpunit.phar
$ sudo mv phpunit.phar /usr/local/bin/phpunit
$ phpunit --version

    PHPUnit x.y.z by Sebastian Bergmann and contributors. 
    也可以直接使用下载的 PHAR 文件:

$ wget https://phar.phpunit.de/phpunit.phar
$ php phpunit.phar –version

    PHPUnit x.y.z by Sebastian Bergmann and contributors.(笔者的版本是PHPUnit 5.7.4 by Sebastian Bergmann and contributors.) 
    注意:PHPunit是有对应版本的最新的版的支持php7.* 官方建议我们安装最新版php,当然不一样要安装最新的只是如果你的版本是php6.*+最好下载最新的PHPunit

  Windows下安装PHPunit

    1.   为 PHP 的二进制可执行文件建立一个目录,例如 D:\Server\bin

    2.   将 D:\Server\bin 添加加到 PATH 环境变量中(这样PHPunit全局生效)

    3.   下载 https://phar.phpunit.de/phpunit.phar 并将文件保存到 C:\bin\phpunit.phar(注意下载下来一般是phpunitx.y.phar,带版本号的,名字要和下面命令执行的文件一直不然执行命令会找不到文件以至于提示could not open file ….)

    4.   打开命令行(例如,按 Windows+R » 输入 cmd » ENTER)

      建立外包覆批处理脚本(最后得到 D:\Server\bin\phpunit.cmd):

C:\Users\username> cd D:Server\bin
C:\bin> echo @php "%~dp0phpunit.phar" %* > phpunit.cmd
C:\bin> exit

      新开一个命令行窗口,确认一下可以在任意路径下执行 PHPUnit: 

C:\Users\username> phpunit --version 

      PHPUnit 5.7.4 by Sebastian Bergmann and contributors. 
      注:如果全局下不能运行,那就到之前生成的目录下运行试试,如:(还不行就是上述步骤出错了,仔细检查下)

 C:\Users\username> cd D:Server\bin
D:\Server\bin phpunit --version

  编写测试

        注:这个文件创建上面生成批处理脚本的文件夹下 
        创建文件StackTest.php

<?php
use PHPUnit\Framework\TestCase;
class StackTest extends TestCase
{
public function testPushAndPop()
{
$stack = [];
$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));
}
}
?>
 

    进行测试

D:\Server\bin  phpunit StackTest.php
D:\Server\bin>phpunit login_test.php
PHPUnit 5.7. by Sebastian Bergmann and contributors. . / (%) Time: ms, Memory: .00MB OK ( test, assertions)
 

    PHPunit的安装和编写测试已经完成了。具体的操作请查看官方手册。 
    官网手册

    欢迎指正交流 QQ:407461375

安装并使用PHPunit的更多相关文章

  1. 初试PHP单元测试TDD之安装PHPUnit

    东风吹战鼓擂,一年一度的校招季开始了,最为一名即将踏入社会的搬砖工,自然也闲不下来了.各种总结.恶补.面经在所难免.当遇见敏捷开发时,有点蒙了,这是什么东东,绝对不能吃!既然是一种软件开发的方式,听上 ...

  2. PHPUnit安装(无需PEAR)

    转自:http://www.cnblogs.com/bourneli/articles/2447155.html   phpunit源代码下载:http://pear.phpunit.de/   如何 ...

  3. linux下安装phpunit

    安装pear 的命令如下: $ wget http://pear.php.net/go-pear.phar $ php go-pear.phar 如果报出PHP Warning:  file_exis ...

  4. 在zend studio 9.* 中使用phpunit进行单元测试

    单元测试在用PHP开发大型项目时必备的减少测试难度和提高测试效率的利器,而PHPUnit是php做单元测试时使用范围最广的一个.如果在window系统中开发,就要调用控制台来运行phpunit,非常的 ...

  5. PHP单元测试利器:PHPUNIT初探

    开始动手安装phpunit 本文中将通过介绍php中的单元测试利器phpunit(http://phpunit.de/),并通过实际例子来讲解如何在实际工作中运用phpunit.首先安装phpunit ...

  6. 开始使用PHPUnit单元测试

    何为单元测试: 指对软件中的基本单元进行测试,如函数.方法等,以检查其返回值或行为是否符合预期:实际中软件是很复杂的,由许多组件构成,执行流程连贯在一起,要进行单元片段的测试,就需要为其提供执行上下文 ...

  7. PHPUnit单元测试的简单使用

    何为单元测试: 指对软件中的基本单元进行测试,如函数.方法等,以检查其返回值或行为是否符合预期:实际中软件是很复杂的,由许多组件构成,执行流程连贯在一起,要进行单元片段的测试,就需要为其提供执行上下文 ...

  8. PHPUnit 在phpstrom中composer项目的应用配置

    在phpstorm的composer搭建的项目调试时出现这种错误时:是其配置的错误 'Cannot create phar '/data/AppStorm/DesignPatternsPHP/vend ...

  9. 在Mac系统下使用自己安装的PHP

    今天在安装单元测试框架PHPUnit,需要PHP的最低版本是5.6,由于我的MacBook自带的PHP版本是5.5.36,不能满足安装条件. 看了一下这个网址:https://php-osx.liip ...

随机推荐

  1. Android性能优化之利用Rxlifecycle解决RxJava内存泄漏

    前言: 其实RxJava引起的内存泄漏是我无意中发现了,本来是想了解Retrofit与RxJava相结合中是如何通过适配器模式解决的,结果却发现了RxJava是会引起内存泄漏的,所有想着查找一下资料学 ...

  2. Hawk 7. 常见问题

    本页面您可以通过关键字搜索来获取信息. 理性使用爬虫 爬虫是一种灰色的应用,虽然作为Hawk的设计者,但我依然不得不这么说. 各大网站都在收集和整理数据上花费了大量的精力,因此抓取的数据应当仅仅作为科 ...

  3. UWP开发之ORM实践:如何使用Entity Framework Core做SQLite数据持久层?

    选择SQLite的理由 在做UWP开发的时候我们首选的本地数据库一般都是Sqlite,我以前也不知道为啥?后来仔细研究了一下也是有原因的: 1,微软做的UWP应用大部分也是用Sqlite.或者说是微软 ...

  4. 年度巨献-WPF项目开发过程中WPF小知识点汇总(原创+摘抄)

    WPF中Style的使用 Styel在英文中解释为”样式“,在Web开发中,css为层叠样式表,自从.net3.0推出WPF以来,WPF也有样式一说,通过设置样式,使其WPF控件外观更加美化同时减少了 ...

  5. H5项目开发分享——用Canvas合成文字

    以前曾用Canvas合成.裁剪.图片等<用H5中的Canvas等技术制作海报>.这次用Canvas来画文字. 下图中"老王考到驾照后"这几个字是画在Canvas上的,与 ...

  6. 一起学 Java(二)面向对象

    一.方法函数 函数也称为方法,就是定义在类中的具有特定功能的一段独立代码.用于定义功能,提高代码的复用性. 函数的特点1> 定义函数可以将功能代码进行封装,便于对该功能进行复用:2> 函数 ...

  7. javascript运动系列第一篇——匀速运动

    × 目录 [1]简单运动 [2]定时器管理 [3]分享到效果[4]移入移出[5]运动函数[6]透明度[7]多值[8]多物体[9]回调[10]函数完善[11]最终函数 前面的话 除了拖拽以外,运动也是j ...

  8. error C4430:missing type specifier 解决错误

    错误    3    error C4430: missing type specifier - int assumed. Note: C++ does not support default-int ...

  9. 防线修建 bzoj 2300

    防线修建(1s 512MB)defense [问题描述] 近来A国和B国的矛盾激化,为了预防不测,A国准备修建一条长长的防线,当然修建防线的话,肯定要把需要保护的城市修在防线内部了.可是A国上层现在还 ...

  10. Mach-O 的动态链接(Lazy Bind 机制)

    ➠更多技术干货请戳:听云博客 动态链接 要解决空间浪费和更新困难这两个问题最简单的方法就是把程序的模块相互分割开来,形成独立的文件,而不再将它们静态的链接在一起.简单地讲,就是不对那些组成程序的目标文 ...