使用CDI和ServletContextListener对应用程序进行单元测试

时间:2017-09-19 14:14:37

标签: unit-testing junit cdi cdi-unit

我有一个CDI Web应用程序,它有一个ServletContextListener来初始化启动时的一些东西。

在那个ServletContextListener中,这个(除其他外)发生了:

test

这很好用,因为这可以确保在实例化其他CDI bean之前执行init(例如App,它也会注入Config)

但是,我无法弄清楚如何实现单元测试的逻辑。使用jglue的CDI-Unit,我可以在我的测试类中执行此操作:

@Inject
Config config;

public void contextInitialized(ServletContextEvent event) {
    ....

    config.init(....)
}

但是当我运行我的测试时,我不断遇到问题,因为App中的@PostConstruct需要Config才能进入。那么,我怎样才能及时调用Config.init()方法呢?

0 个答案:

没有答案