如何知道索引返回的内容是否正确?

How to know if what the index is returning is correct?

我目前有这个简单的功能,看看我是否正在访问控制器索引()。

在我的控制器上

public function index(Request $request)
{
        
    $sortOption = $request->input('sortDesc') == 'true' ? 'desc' : 'asc';
    $sortField = $request->input('sortBy') == 'null' ? 'name' : $request->input('sortBy');

    if (($request->input('filter') != 'null' && $request->input('sortBy') != 'null') ||
        ($request->input('filter') != 'null' && $request->input('sortBy') == 'null')) {
        $carriers = MyModel::orWhere('name', 'like', '%' . $request->input('filter') . '%')
        ->orWhere('email', 'like', '%' . $request->input('filter') . '%')
        ->orderBy($sortField, $sortOption)->orderBy('id', 'desc')
        ->paginate($request->input('size'));
    }

    if ($request->input('filter') == 'null' && $request->input('sortBy') != 'null') {
        $carriers = MyModel::orderBy($sortField, $sortOption)
        ->orderBy('id', 'desc')
        ->paginate($request->input('size'));
    }

    if ($request->input('filter') == 'null' && $request->input('sortBy') == 'null') {
        $carriers = MyModel::orderBy('status', 'desc')->orderBy('id', 'desc')
        ->paginate($request->input('size'));
    }

    return response()->json($carriers);
    
}

和路线

Route::resource('/route/controllerRoute', 'MyController')->middleware('checkPermission:permission_index');

和我的测试:

public function testGetListOfExcessCarriers(){
   $response = $this->call('POST', 'controllerRoute.index', array(
        'shortBy'=>'asc',
        'filter'=>'xyz'
        ));
   $response->assertStatus(200);

}

我得到的结果是:

如何查看从该索引请求获得的响应?


我还有这个问题:因为碰巧我正在测试那条路线,但我添加了一条不存在的路线,正如你在那里看到的那样,但结果是成功的。可能是什么?

 $this->call('GET', 'eASDÑLKQWQ!!!', array(
        'sortBy'=>'asc',
        'sortDesc'=>true,
        'filter'=>''
        ))
        ->assertSuccessful();

看看这个documentation

例如,您可以断言您在响应中看到了特定文本:

$response->assertSeeText($value);

或者响应包含某个 json 值:

$response->assertJson(array $data, $strict = false);

如果你想查看响应的内容,调试你的断言,你可以使用:

$response->dump();

如文档所述here