如何单元测试私人课

时间:2019-03-06 13:44:22

标签: java testing mockito

我们如何对私人课程进行单元测试?

例如,带有限定符的@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());
    }
}

编辑: 我的示例失败了:两次限定符类都是私有的

1 个答案:

答案 0 :(得分:0)

如果我@@@@@@@@@@@@@@@@@@@

我认为我必须@模拟实施...

但是我不能编写实现私有类的测试。

相关问题