如何在测试中从数据库中获取数据 Laravel 5
How to get data from DB in Test Laravel 5
你好,我写了测试,想从数据库中获取数据,所以我接下来做
Company.php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Company extends Model
{
protected $table = 'companies';
}
MyTest.php
<?php
use App\Models\Company;
class MyTest extends TestCase {
public function testFileUploadAction()
{
$company = Company::find(1);
}
}
但有错误
Fatal error: Call to a member function connection() on a non-object
in
/myproject/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php
on line 3146
那么我如何在测试中从数据库中获取数据?
更新:
我所有的测试都工作正常,只有在测试中从数据库获取数据时才会出现问题。
模型 工作正常。
**更新
我找到了解决方案
错误是因为应用程序没有启动所以我添加
$app = require __DIR__.'/../bootstrap/app.php';
$app->make('Illuminate\Contracts\Console\Kernel')->bootstrap();
一切正常
我发现解决方案错误是因为应用程序未启动,所以我添加
$app = require __DIR__.'/../bootstrap/app.php';
$app->make('Illuminate\Contracts\Console\Kernel')->bootstrap();
一切正常
你好,我写了测试,想从数据库中获取数据,所以我接下来做
Company.php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Company extends Model
{
protected $table = 'companies';
}
MyTest.php
<?php
use App\Models\Company;
class MyTest extends TestCase {
public function testFileUploadAction()
{
$company = Company::find(1);
}
}
但有错误
Fatal error: Call to a member function connection() on a non-object in /myproject/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php on line 3146
那么我如何在测试中从数据库中获取数据?
更新: 我所有的测试都工作正常,只有在测试中从数据库获取数据时才会出现问题。
模型 工作正常。
**更新 我找到了解决方案 错误是因为应用程序没有启动所以我添加
$app = require __DIR__.'/../bootstrap/app.php';
$app->make('Illuminate\Contracts\Console\Kernel')->bootstrap();
一切正常
我发现解决方案错误是因为应用程序未启动,所以我添加
$app = require __DIR__.'/../bootstrap/app.php';
$app->make('Illuminate\Contracts\Console\Kernel')->bootstrap();
一切正常