junit - Junit:注入依赖项
问题描述
我遇到了一个关于在类中注入依赖项的问题。
A 类有一个依赖项 B,它用 @Autowired 注释。B类本身用@Service注解
在 A 的单元测试中,情况如下:
@InjectMocks
private A a = new A();
@Mock B b
这工作得很好。单元测试中的 b 被模拟,并且在类 A 中,依赖项 B 被正确注入。
然后我做了一个改变,现在 A 有了另一个依赖项,C.C 也是一个服务,它也自动在 A 中,就像 B 一样。
在单元测试中,我现在做:
@InjectMocks
private A a = new A();
@Mock
B b;
@Mock
C c;
但它不起作用。在单元测试代码中,c 被模拟,但在 A 中,依赖项 C 没有被注入并且它为空。
在谷歌搜索中,我看到了这篇文章。它提供了解决方案,但我无法理解为什么依赖项 C 没有被注入,而 B 被注入。
解决方案
推荐阅读
- laravel - Sweet Alert 2 重定向取消
- r - Sum the leading X rows of a column?
- r - R:循环数据框,选择行和数据点并呈现 R Markdown 报告
- c# - 文本框已聚焦,但在我单击之前无法键入 - XAML/C#/WPF
- powerbi - 计算(SUM(..)..)与 SUMX
- sql - 返回具有共同特定列但包含相同列值的行
- html - Using NgFor instead of HTML
- vhdl - 8输入与非门
- mysql - Get records from table 1 which are not presented in table 2
- bookshelf.js - Bookshelf.js:fetchAll withRelations 工作吗?