1. 安装phpunit
我们今天只讨论linux版本,因为很多成熟的项目在windows下是不能完全兼容的,他依赖很多linux固有的工具
wget http://phar.phpunit.cn/phpunit.phar php phpunit.phar --version
安装成功的情况下会显示
PHPUnit 6.5.3 by Sebastian Bergmann and contributors.
请使用高版本的php运行phpunit.phar,低版本的php将会报错不兼容(建议使用php7或以上的版本)
2. 测试
建立一个程序文件 src/test.inc,内容如下:
class testUnit{ public function time(){ return time(); } }
建立一个测试文件 tests/test.inc,内容如下:
use PHPUnit\Framework\TestCase; class testUnit_test extends TestCase{ public function test_hello(){ $my = new testUnit(); $ret = $my->time(); $this->assertEquals( 0, $ret ); } }
启动测试脚本
php phpunit.phar --bootstrap src/test.inc tests/test.inc
成功的话会显示如下内容
PHPUnit 6.5.3 by Sebastian Bergmann and contributors. . 1 / 1 (100%) Time: 72 ms, Memory: 8.00MB OK (1 test, 1 assertion)
3. 小结
phpunit的工作方式,一句话就是:通过内建的TestCase对象自带的各种判定(断言)方法对我们要测试的程序代码的返回值进行判定。
那么我们使用phpunit的好处是什么呢?就是“好多人已经在用了”。。。
其实这种玩意,哪个工程师也都会写,而且还可以结合自己的项目写得很贴近很好用。
那么为什么我们非要用人家的东西呢??
其原因就是因为人家老外写代码很标准,很规范。而且,他们有大把的时间把一个小东西写得非常细致,非常专业,非常。。。反正就是给工具化,产品化了。
算了吧,既然人家都在用,学吧~~