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 curl获取301或302转向的网址问题的解决方法
Jun 02 PHP
ThinkPHP关联模型操作实例分析
Sep 23 PHP
php定时删除文件夹下文件(清理缓存文件)
Jan 23 PHP
PHP读取RSS(Feed)简单实例
Jun 12 PHP
Zend Framework教程之Zend_Config_Xml用法分析
Mar 23 PHP
Yii2验证器(Validator)用法分析
Jul 23 PHP
PhpStorm terminal无法输入命令的解决方法
Oct 09 PHP
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
Dec 14 PHP
php实现PDO中捕获SQL语句错误的方法
Feb 16 PHP
完美解决Thinkphp3.2中插入相同数据的问题
Aug 01 PHP
php array_chunk()函数用法与注意事项
Jul 12 PHP
laravel dingo API返回自定义错误信息的实例
Sep 29 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
Apache设置虚拟WEB
2006/10/09 PHP
解析在apache里面给php写虚拟目录的详细方法
2013/06/24 PHP
Jquery实战_读书笔记2 选择器
2010/01/22 Javascript
JSON 和 JavaScript eval使用说明
2010/06/13 Javascript
基于JQuery的asp.net树实现代码
2010/11/30 Javascript
JQuery创建DOM节点的方法
2015/06/11 Javascript
Bootstrap页面布局基础知识全面解析
2016/06/13 Javascript
第一次接触神奇的Bootstrap菜单和导航
2016/08/01 Javascript
又一款js时钟!transform实现时钟效果
2016/08/15 Javascript
Vuejs第一篇之入门教程详解(单向绑定、双向绑定、列表渲染、响应函数)
2016/09/09 Javascript
微信小程序 教程之wxapp视图容器 scroll-view
2016/10/19 Javascript
js实现百度地图定位于地址逆解析,显示自己当前的地理位置
2016/12/08 Javascript
10分钟彻底搞懂Http的强制缓存和协商缓存(小结)
2018/08/30 Javascript
JavaScript模板引擎应用场景及实现原理详解
2018/12/14 Javascript
[51:15]2014 DOTA2国际邀请赛中国区预选赛 Orenda VS LGD-GAMING
2014/05/22 DOTA
[03:40]2014DOTA2国际邀请赛 B神专访:躲箭真的很难
2014/07/13 DOTA
[04:52]2015国际邀请赛LGD战队晋级之路
2015/08/14 DOTA
讲解Python中的递归函数
2015/04/27 Python
一些常用的Python爬虫技巧汇总
2016/09/28 Python
Python sqlite3事务处理方法实例分析
2017/06/19 Python
python实现反转部分单向链表
2018/09/27 Python
python如何解析配置文件并应用到项目中
2019/06/27 Python
python中scrapy处理项目数据的实例分析
2020/11/22 Python
Python爬虫之Selenium警告框(弹窗)处理
2020/12/04 Python
Mavi牛仔裤美国官网:土耳其著名牛仔品牌
2016/09/24 全球购物
印度服装购物网站:Limeroad
2018/09/26 全球购物
英国折扣零售连锁店:QD Stores
2018/12/08 全球购物
逻辑链路控制协议
2016/10/01 面试题
业务助理岗位职责
2013/11/18 职场文书
四年级评语大全
2014/04/21 职场文书
环保倡议书格式范文
2014/05/14 职场文书
激励口号大全
2014/06/17 职场文书
医院党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
2014年社区矫正工作总结
2014/11/18 职场文书
MySQL性能压力基准测试工具sysbench的使用简介
2021/04/21 MySQL
SpringBoot中HttpSessionListener的简单使用方式
2022/03/17 Java/Android