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

时间:2022-09-11 07:47:04

本文实例讲述了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程序设计有所帮助。