Laravel base_path()给出错误 - 调用未定义的方法baseDir()

时间:2018-01-24 05:29:58

标签: php laravel laravel-5.5

我有一个测试人员课程,我尝试使用全局帮助程序方法base_path(),但我收到以下错误:

Error: Call to undefined method Illuminate\Container\Container::basePath()
/myproject/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php:182
/myproject/tests/Feature/DataCsvSeedTest.php:31
/myproject/vendor/phpunit/phpunit/src/TextUI/Command.php:195
/myproject/vendor/phpunit/phpunit/src/TextUI/Command.php:148

看起来Laravel中的helper.php调用了basePath(),但无法找到它。我是否缺少全局帮助函数的命名空间或其他设置?使用Laravel 5.5。

<?php    
namespace Tests\Feature;
use Tests\TestCase;

class DataCsvSeedTest extends TestCase
{
   public function setUp()
   {
    $baseDir = base_path();
    print "basedir = ". $baseDir;
   }
}

1 个答案:

答案 0 :(得分:5)

啊......这是一个testClass,

class DataCsvSeedTest extends TestCase
{
   public function setUp()
   {
     parent::setUp();

     $baseDir = base_path();
     print "basedir = ". $baseDir;
   }
}

当你覆盖setUp方法时,不要预先调用父设置,这将启动应用程序。