机油测试引发未捕获的异常
Posted
技术标签:
【中文标题】机油测试引发未捕获的异常【英文标题】:Oil test raises uncaught exception 【发布时间】:2014-05-22 07:23:14 【问题描述】:我在“php oil test”命令的丛林中徘徊了几天。
我在 windows7 中通过 pear 安装了 phpunit。 安装后,当我执行“php oil test”命令时,出现以下错误。
> php油测试
未捕获的异常 Oil\Exception: PHPUnit 似乎没有安装。
但是,看起来 phpunit 安装正确,因为“phpunit --version”命令工作正常(请参阅下文)。
>phpunit --version
Sebastian Bergmann 的 PHPUnit 4.0.14。
当然,“pear list”命令显示的是PHPUnit包。
>梨列表
安装包,CHANNEL PEAR.PHPUNIT.DE:
包版本状态 File_Iterator 1.2.3 稳定版
PHPUnit 4.0.14 稳定版
PHPUnit_SkeletonGenerator 1.2.1 稳定版
PHP_CodeCoverage 1.0.2 稳定版
PHP_Timer 1.0.0 稳定版
PHP_TokenStream 1.2.2 稳定版
Text_Template 1.2.0 稳定版
我尝试了以下页面列出的一些方法,但仍然无法解决。
Installing PHPUnit via PEAR
谁能给出一些建议来运行“php oil test”命令而不会出错?
欢迎任何建议!
添加我的代码。
/fuel/core/classes/testcase.php/fuel/app/tests/controller_testcase.php命名空间 Fuel\Core;
类 TestCase 扩展 \PHPUnit_Framework_TestCase
使用 Fuel\Core\Log;
使用 Fuel\Core\DBUtil;
使用 Fuel\Core\DB;
使用 Fuel\Core\TestCase;
使用 Fuel\Core\Config;
使用 Fuel\Core\Request;
类 ControllerTestCase 扩展 TestCase
公共函数 setUp()
..
php 已安装 C:\php 和 pear.bat & phpunit.bat 也在那里。 C:\php\pear 文件夹中不存在 PHPUnit 文件夹。
【问题讨论】:
您确定它包含在您的路径中吗? 感谢您的信息。但是 phpunit 已包含在我的系统“路径”环境中:-(您还有其他想法吗? 对不起,我的意思是它包含在你的代码中,你的代码中包含 phpunit_framework_testcase 吗? 好吧.. 我还在丛林中。它看起来 ./fule/core/TestCase 类扩展了 PHPUnit_Framework_TestCase 类。我的代码扩展了 TestCase 类。所以我认为在这一点上没有问题。但是 PHPUnit_Framework_TestCase 类在我的任何地方都不存在。而且 PHPUnit/Autoload.php 也不存在。于是我又尝试通过pear重新安装phpunit,但是“php oil test”命令还是不行:- 请用您的代码更新您的问题 【参考方案1】:Oil 使用配置键“oil.phpunit.autoload_path”来查找 PHPUnit 自动加载器的位置,如果没有定义,它使用“PHPUnit/Autoload.php”,结合定义的 PHP 包含路径。
然后它会尝试包含这个文件,并检查“PHPUnit_Framework_TestCase”类是否可用。如果没有,它会显示您看到的错误消息。
它与使用定义路径定位的 PHPUnit 二进制文件无关。
这只是意味着安装PHPunit的位置不在PHP的搜索路径中,也没有配置自定义路径。
【讨论】:
以上是关于机油测试引发未捕获的异常的主要内容,如果未能解决你的问题,请参考以下文章
vb.net制作的Excel文件 未捕获通过反射调用的方法而引发的异常
终结器 java.lang.IllegalStateException 引发的未捕获异常:Binder 已终结