我们如何对私人课程进行单元测试?
例如,带有限定符的@Autowired私有类的示例 我想验证是否有资格参加电话
public class MyClass {
@Autowired
IHelloService helloService;
public void sayHello(List<Person> list) {
for(Person person : list) {
helloService.sayHello(person);
}
}
}
。
@Primary
@Component
public class SayHelloService implements ISayHello {
@Autowired
@Qualifier("french")
ISayHello french;
@Autowired
@Qualifier("english")
ISayHello english;
@Override
public void sayHello(Person person) {
switch (person.getLanguage) {
case "EN":
english.sayHello(Person person);
break;
case "FR":
french.sayHello(Person person);
break;
default:
break;
}
}
}
。
@Qualifier("french")
Component
class SayHelloFrenchService implements ISayHello {
public void sayHello(Person person) {
sysout("Bonjour " + person.getName());
}
}
@Qualifier("english")
Component
class SayHelloFrenchService implements ISayHello {
public void sayHello(Person person) {
sysout("Hello " + person.getName());
}
}
编辑: 我的示例失败了:两次限定符类都是私有的
答案 0 :(得分:0)
如果我@@@@@@@@@@@@@@@@@@@
我认为我必须@模拟实施...
但是我不能编写实现私有类的测试。