作者:zxy寒 | 来源:互联网 | 2023-05-16 08:38
为了它的价值(迟到),我最近遇到了这个问题,而我正在为一个简单的网站制作一个新的Laravel 5.1项目.我尝试调试它,当我尝试时感到困惑:
php artisan make:test homeTest
(它有一个只是断言为true的默认测试是真的)
并看到了输出
No tests executed!
问题最终对我而言与我的PHP安装有关 - "phpunit"是全局注册和配置不同,而Laravel安装附带的phpunit配置恰到好处并完美运行.
因此修复程序正在运行供应商配置的phpunit(与app /和tests /相同的根目录):
./vendor/bin/phpunit
希望能帮助别人!
1> RoboBear..:
为了它的价值(迟到),我最近遇到了这个问题,而我正在为一个简单的网站制作一个新的Laravel 5.1项目.我尝试调试它,当我尝试时感到困惑:
php artisan make:test homeTest
(它有一个只是断言为true的默认测试是真的)
并看到了输出
No tests executed!
问题最终对我而言与我的PHP安装有关 - "phpunit"是全局注册和配置不同,而Laravel安装附带的phpunit配置恰到好处并完美运行.
因此修复程序正在运行供应商配置的phpunit(与app /和tests /相同的根目录):
./vendor/bin/phpunit
希望能帮助别人!
我认为这很可能是正确的答案.我已经删除了项目,所以我无法仔细检查,但是对于使用composer的未来项目,我总是使用`vendor/bin/phpunit`而不是全局的`phpunit`二进制文件.我甚至已经删除了全局的`phpunit`二进制文件,所以我不会再意外地犯同样的错误 - 而且从那时起它就没有出现过.我将此标记为已接受的答案,因为它很可能是原因.
调用`。/ vendor / bin / phpunit`为我完成了最新的laravel 5.4安装
@Noitidart你可以为`./ vendor/bin/phpunit`创建一个`alias`
2> Lionel..:
您的XML文件很好.但是,您必须确保文件tests/
夹中的PHP文件的名称如下:
tests/Test.php <---注意大写的"T"
测试/用户Test.php
测试/ fooBar Test.php
等.
文件名必须以"Test.php"结尾.这就是PHPUnit在目录中寻找的东西.
此外,每个测试方法都必须具有以"test"开头的名称:
public function testFooBar()
{
// Your test code
}
希望有所帮助!
或者您可以使用`--test-suffix = anything.php`来覆盖
3> Ndong Akwo..:
在Windows上,在终端上使用以下命令
.\vendor\bin\phpunit
那是命令
phpunit
返回"没有执行测试!"
在Mac上
./vendor/bin/phpunit
希望能帮助到你.
4> igors..:
我的虚拟机上的PHPUnit更新到版本6后,我遇到了同样的问题.甚至--debug和--verbose没有任何用处,只是"没有执行测试".最后,事实证明在新版本中更改了类和命名空间,它只是不想执行包含对旧类的引用的文件.我的修复只是在每个测试用例中替换:
class MyTestCase extends \PHPUnit_Framework_TestCase {...}
有:
use PHPUnit\Framework\TestCase;
class MyTestCase extends TestCase {...}