小智 28
我有完全相同的问题,在这里找到答案:
bcrypt()是一种昂贵的调用,它是密码散列算法的一部分.由于生成的假密码被硬编码为"secret",因此无需每次都使用bcrypt()密码.通过使用静态变量,我们可以一次bcrypt()密码,然后在每次后续工厂调用(在同一请求中)使用相同的哈希值.因此,例如,假设您正在设置需要100个用户的测试.
$users = factory(User::class, 100)->create();该代码将调用工厂关闭100次.如果没有静态$ password变量,bcrypt()将运行100次,这可能需要几秒钟.使用静态变量,bcrypt()现在只运行一次,结果用于所有100个用户,这大大提高了测试速度.
所以静态$ password不是为了从外面包含一些密码.获得性能只是一个聪明的技巧.
| 归档时间: |
|
| 查看次数: |
2729 次 |
| 最近记录: |