Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法


Posted in PHP onMay 28, 2018

本文实例讲述了Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法。分享给大家供大家参考,具体如下:

phpunit下载网站 http://www.phpunit.cn/

一、安装PHPUnit

1.选择版本

我用的是php版本是5.6.25 所以我选择的是PHPUnit 5.7

2.安装过程

① 为 PHP 的二进制可执行文件建立一个目录,例如 C:\bin

② 将 ;C:\bin 附加到 PATH 环境变量中  【将 php的目录 ;E:\wamp64\bin\php\php5.6.25 也附加到 PATH 环境变量中 】

③ 下载phpunit.phar 并将文件保存到 C:\bin\phpunit.phar

④ 打开CMD命令行

⑤ 建立外包覆批处理脚本(最后bin目录下会自动生成 C:\bin\phpunit.cmd 文件):

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

⑥ 【注意下载下来一般是phpunitx-y.phar,带版本号的 所以要去掉版本号  修改文件名为 phpunitx.phar】

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

C:\bin>phpunit --version
PHPUnit 5.7.19 by Sebastian Bergmann and contributors.

二、使用PHPUnit进行测试

在C:\bin 目录下创建文件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));
  }
 }
?>

进行测试

C:\bin>phpunit StackTest.php
PHPUnit 5.7.19 by Sebastian Bergmann and contributors.
.                 1 / 1 (100%)
Time: 543 ms, Memory: 13.00MB
OK (1 test, 5 assertions)

三、phpunit 生成三种日志文件的配置方法

#目录结构 windows

bin目录下

├── phpunit.phar
├── phpunit.cmd
├── phpunit.xml
├── build.xml
├── ArrTest.php
└── tmp
      ├── logfile.json
      ├── logfile.tap
      └── logfile.xml

#日志XML文件配置 新建文件 build.xml 放置在根目录

<logging>
<log type="json" target="tmp/1ogfile.json"/>
<log type="junit" target="tmp/logfile.xml" logIncompleteSkipped="false"/>
<log type="tap" target="tmp/logfile.tap"/>
</logging>

#命令

*生成xml格式的日志文件

phpunit --log-junit tmp/logfile.xml ArrTest.php

*生成tap格式的日志文件

phpunit --log-tap tmp/logfile.tap ArrTest.php

*生成json格式的日志文件

phpunit --log-json tmp/logfile.json ArrTest.php

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php下实现在指定目录搜索指定类型文件的函数
Oct 03 PHP
发一个php简单的伪原创程序,配合商城采集用的
Oct 12 PHP
php正则表达式(regar expression)
Sep 10 PHP
php去除字符串换行符示例分享
Feb 13 PHP
PHP CURL 多线程操作代码实例
May 13 PHP
使用PHP和JavaScript判断请求是否来自微信内浏览器
Aug 18 PHP
php判断当前操作系统类型
Oct 28 PHP
PHP实现图片不变型裁剪及图片按比例裁剪的方法
Jan 14 PHP
php文件上传类的分享
Jul 06 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
Jun 14 PHP
laravel框架邮箱认证实现方法详解
Nov 22 PHP
如何在PHP中读写文件
Sep 07 PHP
PHP测试框架PHPUnit组织测试操作示例
May 28 #PHP
php empty 函数判断结果为空但实际值却为非空的原因解析
May 28 #PHP
PHP排序二叉树基本功能实现方法示例
May 26 #PHP
Thinkphp5+uploadify实现的文件上传功能示例
May 26 #PHP
PHP ADODB实现事务处理功能示例
May 25 #PHP
PHP ADODB实现分页功能简单示例
May 25 #PHP
ThinkPHP5.0框架控制器继承基类和自定义类示例
May 25 #PHP
You might like
不错的PHP学习之php4与php5之间会穿梭一点点感悟
2007/05/03 PHP
解析在apache里面给php写虚拟目录的详细方法
2013/06/24 PHP
php实现扫描二维码根据浏览器类型访问不同下载地址
2014/10/15 PHP
php实现的生成排列算法示例
2019/07/25 PHP
node.js正则表达式获取网页中所有链接的代码实例
2014/06/03 Javascript
nodejs中使用monk访问mongodb
2014/07/06 NodeJs
jQuery Ajax调用WCF服务详细教程
2015/03/31 Javascript
JavaScript数据存储 Cookie篇
2016/07/02 Javascript
jQuery实现拖拽可编辑模块功能代码
2017/01/12 Javascript
jquery 仿锚点跳转到页面指定位置的实例
2017/02/14 Javascript
vue awesome swiper异步加载数据出现的bug问题
2018/07/03 Javascript
如何检查一个对象是否为空
2019/04/11 Javascript
原生js无缝轮播插件使用详解
2020/03/09 Javascript
[57:36]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第三场 2月1日
2021/03/11 DOTA
Python字符串格式化的方法(两种)
2017/09/19 Python
Python中的上下文管理器和with语句的使用
2018/04/17 Python
解决新django中的path不能使用正则表达式的问题
2018/12/18 Python
机器学习实战之knn算法pandas
2019/06/22 Python
OpenCV+face++实现实时人脸识别解锁功能
2019/08/28 Python
IronPython连接MySQL的方法步骤
2019/12/27 Python
Python连接Oracle之环境配置、实例代码及报错解决方法详解
2020/02/11 Python
css3使用animation属性实现炫酷效果(推荐)
2020/02/04 HTML / CSS
如何用H5实现一个触屏版的轮播器的实例
2017/01/09 HTML / CSS
ET Mall东森购物网:东森严选
2017/03/06 全球购物
台湾最大银发乐活百货:乐龄网
2018/05/21 全球购物
德国高端单身人士交友网站:ElitePartner
2018/12/02 全球购物
结婚典礼证婚词
2014/01/08 职场文书
四年级语文教学反思
2014/02/05 职场文书
反邪教标语
2014/06/23 职场文书
促销活动总结怎么写
2014/06/25 职场文书
应聘护士求职信
2014/07/21 职场文书
教师工作自我鉴定范文
2014/09/14 职场文书
投诉信范文
2015/07/02 职场文书
建国70周年的心得体会(2篇)
2019/09/20 职场文书
python编程简单几行代码实现视频转换Gif示例
2021/10/05 Python
nginx中封禁ip和允许内网ip访问的实现示例
2022/03/17 Servers