单元测试 Laravel 的 FormRequest
2022-08-30 14:00:14
						我正在尝试对各种自定义输入进行单元测试。我发现的解决方案是:FormRequest
- 建议使用该方法并使用预期值断言 (链接到答案)。这是矫枉过正,因为它会直接依赖于路由和控制器。 - $this->call(…)- response
- 泰勒的测试,来自 Laravel 框架,在 .那里有很多嘲笑和开销。 - tests/Foundation/FoundationFormRequestTest.php
我正在寻找一种解决方案,我可以在其中根据规则对单个字段输入进行单元测试(独立于同一请求中的其他字段)。
示例表单请求:
public function rules()
{
    return [
        'first_name' => 'required|between:2,50|alpha',
        'last_name'  => 'required|between:2,50|alpha',
        'email'      => 'required|email|unique:users,email',
        'username'   => 'required|between:6,50|alpha_num|unique:users,username',
        'password'   => 'required|between:8,50|alpha_num|confirmed',
    ];
}
所需测试:
public function testFirstNameField()
{
   // assertFalse, required
   // ...
   // assertTrue, required
   // ...
   // assertFalse, between
   // ...
}
public function testLastNameField()
{
    // ...
}
如何单独和单独地对每个字段的每个验证规则进行单元测试(断言)?
 
					 
				 
				    		 
				    		 
				    		