【问题标题】:Phalcon UnitTestingPhalcon 单元测试
【发布时间】:2013-09-22 10:54:21
【问题描述】:

我正在运行文档中的示例:http://docs.phalconphp.com/en/latest/reference/unit-testing.html#sample-unit-test

我想从 Phalcon\Test\UnitTestCase 创建一个抽象单元测试,如文档中所述。但是,当我运行测试时,我变成了:

PHP Fatal error:  Class 'Phalcon\Test\UnitTestCase' not found 

我已遵循确切的文档步骤。有没有人遇到同样的问题并解决了?

【问题讨论】:

  • 您的项目中是否配置了自动加载?

标签: php unit-testing phalcon


【解决方案1】:

这个类是孵化器的一部分:https://github.com/phalcon/incubator

$loader = new Phalcon\Loader();

$loader->registerNamespaces(array(
    'Phalcon' => '/path/to/incubator/Library/Phalcon/'
));

$loader->register();

【讨论】:

  • 我也一样。我使用作曲家进行安装。但我还是明白了。作曲家不是将它们安装在正确的位置吗?有点迷茫……
【解决方案2】:

我想通了。

基本上我们必须做两件事。

  1. 是@twistedxtra 的答案。 (设置孵化器所在的路径)

  2. 在我们创建的testsTestUnitTest.php中,有如下一行

class UnitTest extends \UnitTestCase {

我们必须将该行更改为

class UnitTest extends \Phalcon\Test\UnitTestCase {

我们所做的是设置正确的命名空间,以便代码知道UnitTestCase 类在哪里。

就是这样。干杯...!!!

【讨论】:

    【解决方案3】:

    确保在测试文件夹中运行 phpunit 命令。这很重要。

    不要运行phpunit tests/之类的东西

    【讨论】:

    • 不知道为什么这被否决了,因为这显然是众多问题之一,而且建议是正确的!我遇到了同样的问题,只是因为我是从不同的目录运行它,而自动加载器未能正确匹配路径。
    猜你喜欢
    • 1970-01-01
    • 2014-11-04
    • 2016-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-08
    • 1970-01-01
    相关资源
    最近更新 更多