Laravel用较少的数据测试分页

时间:2018-05-04 20:55:45

标签: php laravel laravel-5

我试图降低测试时间。目前我有一个测试,我需要测试分页链接和元数据。

在我的控制器中,我的分页设置为15但是在我的测试中我必须使用工厂创建16个实例才能在第2页上断言数据。

TestGetStudents.php

public function testGetStudents() {
    Students::saveMany(factory(Student::class, 16)->make());

    $this->get('url/students/list?page=2')
         ->assertJson([
              'meta' [
                   'current_page' => 2 
              ]
         ]);
}

StudentController.php

public function list() {
    return Students::paginate();
}

如何编写测试而无需在第二页上创建16名学生来测试数据?

1 个答案:

答案 0 :(得分:1)

替换您的控制器以从用户接收paginate参数:

.validate()