用了这么久的php一直都是用xdebug在调试,今天想来试试php单元测试。
安装phpunit
为 PHP 的二进制可执行文件建立一个目录,例如 D:\phpunit
下载 http://phar.phpunit.cn/phpunit-6.2.phar 并将文件保存到 D:\phpunit\phpunit.phar
打开命令行
建立外包覆批处理脚本(最后得到 C:\bin\phpunit.cmd
)
C:\Users\Administrator>D:D:\>cd phpunitD:\phpUnit> echo @php "%~dp0phpunit.phar" %* > phpunit.cmd
2.编写测试类
新建一个Demo.php文件
<?php
class Demo{ public function foo(){ return "foo"; } public function bar(){ return "bar"; }}
在写一个test.php文件
<?php
include "Demo.php";use PHPUnit\Framework\TestCase;class TestDemo extends TestCase{ public function testFoo(){ $demo = new Demo(); $this->assertEquals(‘foo‘, $demo->foo());//返回foo断言成功 $this->assertEquals(‘bar‘,$demo->foo());//断言失败 }}
在命令行输入phpunit test.php运行
从图中可以看到,断言了2个,失败了一个