2017-10-11 116 views
0

我得到这个警告,当我在命令行中运行的PHPUnit:PHPUnit的6.4.1没有测试执行

PHPUnit 5.1.3 by Sebastian Bergmann and contributors. 

Time: 114 ms, Memory: 4.00MB 

No tests executed! 

这里是我的框架文件夹结构:

. 
├── App 
├── CHANGELOG 
├── composer.json 
├── composer.lock 
├── Config 
├── Database 
├── local.env.php 
├── phpunit.xml 
├── public 
├── README.md 
├── robot.txt 
├── silver 
├── Storage 
├── System 
├── Tests 
└── vendor 

测试目录:

Tests 
└── Unit 
    └── ControllerTest.php 

phpunit.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<phpunit backupGlobals="false" 
     backupStaticAttributes="false" 
     bootstrap="vendor/autoload.php" 
     colors="true" 
     convertErrorsToExceptions="true" 
     convertNoticesToExceptions="true" 
     convertWarningsToExceptions="true" 
     processIsolation="false" 
     stopOnFailure="false"> 
    <testsuites> 
     <testsuite name="Unit"> 
      <directory suffix="Test.php">./Tests/Unit</directory> 
     </testsuite> 
    </testsuites> 
</phpunit> 

composer.json文件:

"autoload-dev": { 
    "psr-4": { 
     "Tests\\": "Tests/" 
    } 
} 

controllerTest类:

<?php 

namespace Tests\Unit; 

use \PHPUnit\Framework\TestCase; 


class ControllerTest extends TestCase 
{ 
    /** @test */ 
    public function testFirstMethod() 
    { 
     $num = 20; 

     $this->assertEquals(22, $num); 
    } 
} 

任何建议或帮助将是非常赞赏的感谢。

+0

它肯定适合我。我使用phpunit 5.5.7。 – akond

+1

标题说PHPUnit的'6.4.1'和你的命令行说'5.1.3'?!? – bish

+0

@bish是啊你是正确的供应商版本是6.4.1,而phpunit CLI版本是5.1.3我不知道这些应该是相同的,因为在Linux上当你apt-get安装phpunit你默认得到5.1.3! –

回答

1

看起来您已经将PHPUnit的不同安装混淆了。

例如,您可能已经使用Composer安装PHPUnit,并将Composer生成的自动加载器配置为PHPUnit的引导脚本,但是然后您使用vendor/bin/phpunit以外的可执行文件调用PHPUnit。

+0

非常感谢你塞巴斯蒂安!来自PHPUnit创始人的一个很好的答案我已经解决了,非常感谢你! –