PHPUNIT 单元测试

在windows上的安装可以参考其手册

首先下载phpunit.phar文件

1. 为php的二进制可执行文件建立 一个目录,如C:\bin

2. 将C:\bin添加到系统环境变量中,

3. 打开命令行cmd

4. 新建批处理脚本,C:\bin\phpunit.cmd

    

cd C:\bin



echo @php "%~dp0phpunit.phar" %* > phpunit.cmd



exit

在命令提示符后执行以上命令后,会在C:\bin目录下生成 phpunit.cmd文件

5. 打开一个新窗口后,确认一下PHPUNIT在任意路径下可以执行

  

C:\Users\username> phpunit --version

PHPUnit x.y.z by Sebastian Bergmann.

有此提示后说明PHPUNIT安装成功。

 

二、编写PHPUNIT测试用例

  用PHPUNIT测试数组操作

  1.针对类 Class 的测试写在类 ClassTest 中。
  2.ClassTest(通常)继承自 PHPUnit_Framework_TestCase。
  3.
  4.在测试方法内,类似于 assertEquals()(参见附录 A, 断言)这样的断言方法用来际值与预期值的匹配做出断言。

例 2.1. 用 PHPUnit 测试数组操作

<?php

class StackTest extends PHPUnit_Framework_TestCase

{

    public function testPushAndPop()

    {

        $stack = array();

        $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));

    }

}

?>

例子中我使用断言的方法assertEquals来断言我期待$stack相关的值

注意代码中高亮的方法indexEquals,它并没有使用test开头,但是我在注释中增加了@test标签,那么phpunit依然会将其作为一个测试方法运行,下面我们来运行方法和运行结果

 

进入命令行,使用phpunit StackTest来执行StackTest.php的测试,运行结果如下:

。。。。

详细的使用可以参考官方手册。

 

你可能感兴趣的:(单元测试)