我得到的phpunit并安装它为this link使用最简单的方式进行测试。phpunit找不到类,PHP致命错误
我刚下载phpunit.phar文件,chmod & rename &移动到/ usr/local/bin然后,我运行phpunit --version,它就ok了。
PHPUnit 3.7.27 by Sebastian Bergmann
我写了一个简单的测试
public function testSomething(){ $this -> assertTrue(true) }
然后我去到源文件夹,
phpunit --colors Test
它的工作原理。所以,我决定写一个复杂的演示。
我的项目文件夹结构是这样的。
Project Name --> app --> api --> tests
现在我写
app/api/FlyApi.php
<?php class FlyApi { public function makeFly(){ //do something else } }
一个简单的类然后我再写测试类FlyApi.php
<?php class FlyApiTest extends PHPUnit_Framework_TestCase { public function testFly(){ //new a FlyApi $flyApi = new FlyApi(); //do something } }
在这条线
$flyApi = new FlyApi()
我得到了错误。PHP致命错误:类 'FlyApi' 在/home/kevin/Workspace/fly/app/api/FlyApi.php未发现线路23
是,这条线
$flyApi = new FlyApi()
0
A
回答
1
您没有加载您的FlyApi
类的定义。
该解决方案是Laravel具体:
你应该延长TestCase
而非PHPUnit_Framework_TestCase
。
1
尝试将您的/api/
文件夹添加到您的ClassLoader
,app\start\global.php
。
你会发现本节:
ClassLoader::addDirectories(array(
app_path().'/commands',
app_path().'/controllers',
...
app_path().'/api/
));
+0
是的,我已经添加了,但仍然有错误。 – diligent
1
您是否使用Laravel的phpunit.xml文件?它包括Laravel的(和作曲家的)autoload.php
文件,它可以让你使用它里面的所有自动加载类。
最后,什么是整个错误?它应该(希望)告诉你它正在尝试加载哪个类(如果命名空间是错误的,它会给你提供线索)。
相关问题
- 1. PHP致命错误:类'TestCase'找不到
- 2. php致命错误:找不到类'Slim'
- 3. PHP致命错误:类'Swift_Validate'找不到
- 4. PHP致命错误:找不到类'PHPMailer'
- 5. AWS S3 PHP SDK错误 - PHP致命错误:找不到类'RequestCore'
- 6. PHP致命错误:类“sfContext”未找到
- 7. “PHP致命错误:未找到'HttpRequest'类'
- 8. PHP致命错误:未找到'SoapClient'类
- 9. PHP致命错误:类“X”未找到
- 10. PHP致命错误:未找到'HttpRequest'类
- 11. PHP致命错误:类“SassParser”未找到
- 12. PHP致命错误:未找到类
- 13. PHP致命错误:未找到类'Token'
- 14. PHP致命错误:类“MongoClient”未找到
- 15. PHP致命错误:类“PEAR_Exception”未找到
- 16. PHP致命错误:类“PDO”未找到
- 17. phpUnit致命错误
- 18. PHP致命错误:未找到接口'PHPUnit \ Framework \ TestListener'
- 19. PhpThumb错误 - PHP致命错误:类'PhpThumb'找不到
- 20. PHP致命错误:未捕获错误:类'CakeTestSuite'中找不到
- 21. PHPUnit 6.2致命错误:未在/.../Database/Model.php中找到类'Eloquent'
- 22. 致命错误:类'ZipArchive' - 使用PHPUnit时未找到
- 23. PHPUnit的,致命错误:类“库MySQLi”未找到
- 24. PHPUnit和CodeIgniter - 致命错误:没有找到'CIUnit_TestCase'类
- 25. 找不到Laravel Trait PHP致命错误
- 26. PHP致命错误:'SoapClient'找不到
- 27. Codeigniter命令行错误 - PHP致命错误:未找到'CI_Controller'类
- 28. 致命错误CodeIgniter:找不到类'PHPExcel_IOFactory'
- 29. 致命错误:找不到类“响应”
- 30. Symfony:致命错误:类'PHPUnit_Framework_TestCase'找不到
从技术上讲,你只是想要'FlyApi'的类定义,因为PHPUnit不会为你做一些神奇的自动加载。在测试之前提供被测试的单元是您的工作(或者如果该类尚不存在:测试失败并伴随Phpunit崩溃是完全可以的,因为测试已经在TDD之前的代码之前编写过)。 – hakre