![]() |
1
2
基本上,你没有。 您应该测试行为,而不是实现。私有方法是一个实现细节。 尽管如此,您可以随心所欲,Laravel/Lumen提供了许多选项: 正确的方法: 看看@Felippe Duarte的答案。要使用mockry而不是PHPUnit来添加测试代码,请执行以下操作:
服务容器滥用方式: 控制器:
测试:
这将起作用,因为
Service Container
在尝试实例化时,Laravel将识别您定义的
不建议这样做,因为它很容易被滥用,而且不太明确。 |
![]() |
2
2
您不能模拟此代码的事实是代码设计不好的迹象。 我在这里展示的示例只是一个想法,重点是创建一个新类,表示与第三方系统的通信。
然后按照单一责任原则创建另一个类来完成它应该做的事情
然后您可以适当地模拟:
|
![]() |
Joyner · 如何避免laravel(php)中的嵌套查询? 6 年前 |
![]() |
MMSs · 在Lumen中模拟路由控制器中的方法调用以进行测试 6 年前 |
|
Dominykas Äesonis · Lumen API花式过滤 6 年前 |
![]() |
Gordon Freeman · 贝宝沙盒账户不显示交易 6 年前 |
|
user8116198 · Laravel |唯一验证where子句 7 年前 |
![]() |
zerociudo · Lumen define表格名称不起作用 7 年前 |
![]() |
ImFireblade · 如何在lumen上的刀片文件中导入库? 7 年前 |
![]() |
Michael · Lumen 5.5始终出现404错误 7 年前 |