我试图降低测试时间。目前我有一个测试,我需要测试分页链接和元数据。
在我的控制器中,我的分页设置为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名学生来测试数据?
答案 0 :(得分:1)
替换您的控制器以从用户接收paginate参数:
.validate()