java – Mockito – 注入模拟列表

前端之家收集整理的这篇文章主要介绍了java – Mockito – 注入模拟列表前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有以下代码

  1. @Component
  2. public class Wrapper
  3. {
  4. @Resource
  5. private List
  1. @Component
  2. public class StrategyA implements Strategy{...}
  3. @Component
  4. public class StrategyB implements Strategy{...}

我想用Mockito为它创建一个测试.
我写的测试如下:

  1. @InjectMocks
  2. private Wrapper testedObject = new Wrapper ();
  3. // I was hoping that this list will contain both strategies: strategyA and strategyB
  4. @Mock
  5. private List

我在线获得NullPointerException:

  1. filter(strategy -> strategy.isApplicable(id))

,其中声明“策略”列表已初始化但为空.
有没有什么方法Mohito会像春天一样表现出来?将实现“策略”界面的所有实例自动添加到列表中?

顺便说一句我在Wrapper类中没有任何setter,如果可能的话我想以这种方式保留它.

最佳答案
Mockito无法知道你想把一些东西放在List策略中.

你应该重新考虑一下这样做

  1. @InjectMocks
  2. private Wrapper testedObject = new Wrapper ();
  3. private List

猜你在找的Spring相关文章