为什么在使用Laravel的文件中有多个测试方法会引发错误?

时间:2013-08-10 14:37:40

标签: php phpunit laravel

当我在带有laravel的测试文件中有多个测试时,我执行它们:

Fatal error: Cannot redeclare nameSort() (previously declared in C:\wamp\www\project\app\start\global.php:110) in C:\wamp\www\project\app\start\global.php on line 112

即使这是我的testfile:

class DealControllerTest extends TestCase {

    public function testIndex()
    {
        $this->assertTrue(true);
    }

    public function testApiKey()
    {
        $this->assertTrue(true);
    }
}

2 个答案:

答案 0 :(得分:6)

我能够通过将require替换为require_once for global.php文件中的包含来解决问题。

例如,

require app_path().'/helpers.php';

应该是

require_once app_path().'/helpers.php';

答案 1 :(得分:1)

原因是在global.php中声明的自定义辅助函数,我不得不将它们放在一个单独的类中来解决错误。因此,如果您有任何辅助函数,请将它们放在辅助类中,并通过将其添加到composer.json来自动加载它。