多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 简介 如果是laravel项目,在命令行运行 vendor/bin/phpunit 就可以看到 他的配置文件在项目根目录下的phpunit.xml 看tests目录有Feature和Unit Feature是相当于洋葱从里面往外面扩散,相当于浏览器访问 Unit是相当于洋葱从外往里面剥,做了很多断言 https://phpunit.de/manual/current/zh_cn/writing-tests-for-phpunit.html # 编写单元测试 ~~~ 在Feature目录下创建个测试文件 php artisan make:test XXTest 在tests目录下创建个测试文件 php artisan make:test XXTest --unit ~~~ 我们在tests/Unit下新建个php文件IndexTest.php,命名规则是你要测试的类名+Test,然后这个类继承TestCase ~~~ namespace Tests\Unit; use App\Index; use Tests\TestCase; class IndexTest extends TestCase { //方法名是test开头 public function testName() { $index=new Index('hello'); //判断值等不等于'hello' $this->assertEquals('hello',$index->name()); } } ~~~ 除了方法前面加test,还有种注释`/** @test */`,也能让phpunit认识 ~~~ /** @test */ public function Name() { $index=new Index('hello'); $this->assertEquals('hello',$index->name()); } ~~~ ## 只测试其中的一个方法或类 ~~~ vendor/bin/phpunit --filter testName ~~~ 后面跟你要测试的方法名 --- ~~~ vendor/bin/phpunit --filter IndexTest ~~~ 后面跟你要测试的类名