我的测试非常简单,我只想知道网址是否返回200 OK状态。
public function test_categories_page_is_accessible()
{
$response = $this->get(route('category.index'));
$response->assertStatus(200);
}
但是由于某种原因,它失败了。但是,当我在控制器中删除模型查询时,仅返回视图即可通过测试。该页面可以在浏览器中访问,没有任何问题。
// CategoryController.php
// Fails
public function index()
{
$models = Category::all();
return view('category-index', [
'categories' => $models,
]);
}
// Fails
public function index()
{
$models = Category::all();
return view('category-index', [
'categories' => [],
]);
}
// Passes
public function index()
{
// $models = Category::all();
return view('category-index', [
'categories' => [],
]);
}
我不知道为什么会这样,并且在SO上找不到类似的东西。
完全忽略了phpunit.xml中的设置。更改了DB_CONNECTION和DB_DATABASE,现在可以正常使用。