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

这篇文章主要介绍了Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法,简明扼要的分析了Windows环境下wamp中php单元测试工具PHPUnit的安装步骤、操作注意事项以及生成日志文件配置方法,需要的朋友可以参考下。

本文实例讲述了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

  1. <?php
  2. use PHPUnit\Framework\TestCase;
  3. class StackTest extends TestCase
  4. {
  5. public function testPushAndPop()
  6. {
  7. $stack = [];
  8. $this->assertEquals(0, count($stack));
  9. array_push($stack, 'foo');
  10. $this->assertEquals('foo', $stack[count($stack)-1]);
  11. $this->assertEquals(1, count($stack));
  12. $this->assertEquals('foo', array_pop($stack));
  13. $this->assertEquals(0, count($stack));
  14. }
  15. }
  16. ?>

进行测试

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

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

#目录结构 windows

bin目录下

  1. ├── phpunit.phar
  2. ├── phpunit.cmd
  3. ├── phpunit.xml
  4. ├── build.xml
  5. ├── ArrTest.php
  6. └── tmp
  7. ├── logfile.json
  8. ├── logfile.tap
  9. └── logfile.xml

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

  1. <logging>
  2. <log type="json" target="tmp/1ogfile.json"/>
  3. <log type="junit" target="tmp/logfile.xml" logIncompleteSkipped="false"/>
  4. <log type="tap" target="tmp/logfile.tap"/>
  5. </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