安装并使用PHPunit
安装并使用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
为 PHP 的二进制可执行文件建立一个目录,例如 D:\Server\bin
将 D:\Server\bin 添加加到 PATH 环境变量中(这样PHPunit全局生效)
下载 https://phar.phpunit.de/phpunit.phar 并将文件保存到 C:\bin\phpunit.phar(注意下载下来一般是phpunitx.y.phar,带版本号的,名字要和下面命令执行的文件一直不然执行命令会找不到文件以至于提示could not open file ….)
打开命令行(例如,按 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的更多相关文章
- 初试PHP单元测试TDD之安装PHPUnit
东风吹战鼓擂,一年一度的校招季开始了,最为一名即将踏入社会的搬砖工,自然也闲不下来了.各种总结.恶补.面经在所难免.当遇见敏捷开发时,有点蒙了,这是什么东东,绝对不能吃!既然是一种软件开发的方式,听上 ...
- PHPUnit安装(无需PEAR)
转自:http://www.cnblogs.com/bourneli/articles/2447155.html phpunit源代码下载:http://pear.phpunit.de/ 如何 ...
- linux下安装phpunit
安装pear 的命令如下: $ wget http://pear.php.net/go-pear.phar $ php go-pear.phar 如果报出PHP Warning: file_exis ...
- 在zend studio 9.* 中使用phpunit进行单元测试
单元测试在用PHP开发大型项目时必备的减少测试难度和提高测试效率的利器,而PHPUnit是php做单元测试时使用范围最广的一个.如果在window系统中开发,就要调用控制台来运行phpunit,非常的 ...
- PHP单元测试利器:PHPUNIT初探
开始动手安装phpunit 本文中将通过介绍php中的单元测试利器phpunit(http://phpunit.de/),并通过实际例子来讲解如何在实际工作中运用phpunit.首先安装phpunit ...
- 开始使用PHPUnit单元测试
何为单元测试: 指对软件中的基本单元进行测试,如函数.方法等,以检查其返回值或行为是否符合预期:实际中软件是很复杂的,由许多组件构成,执行流程连贯在一起,要进行单元片段的测试,就需要为其提供执行上下文 ...
- PHPUnit单元测试的简单使用
何为单元测试: 指对软件中的基本单元进行测试,如函数.方法等,以检查其返回值或行为是否符合预期:实际中软件是很复杂的,由许多组件构成,执行流程连贯在一起,要进行单元片段的测试,就需要为其提供执行上下文 ...
- PHPUnit 在phpstrom中composer项目的应用配置
在phpstorm的composer搭建的项目调试时出现这种错误时:是其配置的错误 'Cannot create phar '/data/AppStorm/DesignPatternsPHP/vend ...
- 在Mac系统下使用自己安装的PHP
今天在安装单元测试框架PHPUnit,需要PHP的最低版本是5.6,由于我的MacBook自带的PHP版本是5.5.36,不能满足安装条件. 看了一下这个网址:https://php-osx.liip ...
随机推荐
- win10 环境 gitbash 显示中文乱码问题处理
gitbash 是 windows 环境下非常好用的命令行终端,可以模拟一下linux下的命令如ls / mkdir 等等,如果使用过程中遇到中文显示不完整或乱码的情况,多半是因为编码问题导致的,修改 ...
- ABP源码分析一:整体项目结构及目录
ABP是一套非常优秀的web应用程序架构,适合用来搭建集中式架构的web应用程序. 整个Abp的Infrastructure是以Abp这个package为核心模块(core)+15个模块(module ...
- Win10 IIS本地部署网站运行时图片和样式不正常?
后期会在博客首发更新:http://dnt.dkill.net 异常处理汇总-服 务 器 http://www.cnblogs.com/dunitian/p/4522983.html 启用关闭win功 ...
- 协议森林16 小美的桌号(DHCP协议)
作者:Vamei 出处:http://www.cnblogs.com/vamei 转载请先与我联系. DHCP协议用于动态的配置电脑的网络相关参数,如主机的IP地址,路由器出口地址.DNS域名服务器地 ...
- 读python源码--对象模型
学python的人都知道,python中一切皆是对象,如class生成的对象是对象,class本身也是对象,int是对象,str是对象,dict是对象....所以,我很好奇,python是怎样实现这些 ...
- 拼图小游戏之计算后样式与CSS动画的冲突
先说结论: 前几天写了几个非常简单的移动端小游戏,其中一个拼图游戏让我郁闷了一段时间.因为要获取每张图片的位置,用`<style>`标签写的样式,直接获取计算后样式再用来交换位置,结果就悲 ...
- css中line-height行高的深入学习
之前对css中行高line-height的理解还是有些肤浅,深入后才发觉里面包罗万象.学习行高line-height,首先从基本原理开始 (标注该文章转载 http://www.cnblogs.com ...
- win7下利用ftp实现华为路由器的上传和下载
win7下利用ftp实现华为路由器的上传和下载 1. Win7下ftp的安装和配置 (1)开始->控制面板->程序->程序和功能->打开或关闭Windows功能 (2)在Wi ...
- Maven常用命令
开发中常用的命令: 1. mvn compile 编译源代码2. mvn test-compile 编译测试代码3. mvn test 运行测试4. mvn package 打包,根据pom.xml打 ...
- 一切从“简”,解放IT运维人员
运维人的神技 运维既是个技术活儿也是个苦差事,而运维人员被期望有着无限的技能:主机.存储.网络.操作系统样样精通,而且还要会写SQL.shell.开发语言java..net.python等等,对业务更 ...