Reflection 我们如何在不使用powermockito的情况下模拟私有方法
我们可以在不使用powermockito的情况下模拟私有方法吗。我知道这是可能的,虽然powermockito,但我只是想与大家核实一下,是否有可能通过其他方式实现。 谢谢Reflection 我们如何在不使用powermockito的情况下模拟私有方法,reflection,mockito,powermock,powermockito,Reflection,Mockito,Powermock,Powermockito,我们可以在不使用powermockito的情况下模拟私有方法吗。我知道这是可能的,虽然powermockito,但我只是想与大家核实一下,是否有可能通过其他方式实现。 谢谢 -Sam根据设计,如果没有PowerMockito或类似的工具,这是不可能的 查看他们给出以下原因的地方: 它需要对从来都不是防弹的类装入器进行黑客攻击 更改API(必须使用自定义测试运行程序、注释类、, 等等) 这很容易解决-只需更改 方法从私有到包保护(或受保护) 它需要 团队需要花时间实施和维护它。但事实并非如此 在给
-Sam根据设计,如果没有PowerMockito或类似的工具,这是不可能的 查看他们给出以下原因的地方:
是的,我们可以为此使用Java供应商提供的反射API。吹毛求疵:“……没有PowerMockito”或类似的工具,这是不可能的。我想每个在受保护和私有方法上编写复杂逻辑的人最好去获取powermock或将其公开到包级别。因为简单的嘲弄不考虑是否有人将他们的逻辑隐藏在私有的和受保护的方法中。我们可以使用反射api来测试私有方法,但模拟是完全不同的!!!