Java 如何对调度程序进行单元测试?

Java 如何对调度程序进行单元测试?,java,unit-testing,testing,junit,Java,Unit Testing,Testing,Junit,所以我有一个调度器类,在其中我注入了一个在超时时调用方法的服务。 基本上是这样的: @Singleton @Startup public class Scheduler{ @Resource public TimerService timerService; @Inject private SomeService someService; @PostConstruct void postConstruct() { TimerConfig config= new TimerC

所以我有一个调度器类,在其中我注入了一个在超时时调用方法的服务。 基本上是这样的:

@Singleton
@Startup
public class Scheduler{

@Resource
public TimerService timerService;

@Inject
private SomeService someService;

@PostConstruct
void postConstruct() {
        TimerConfig config= new TimerConfig();
        config.setPersistent(false);
        timerService.createIntervalTimer(60000, 60000, config);
}

@Timeout
public void runsomeTask(Timer timer) {
    someService.doSomething();
}
或者这个:

@Singleton
public class OtherScheduler{

@Inject
private SomeService someService;

@Schedule(second = "0", minute = "*/15", hour = "0", dayOfWeek = "*", persistent = false)
public void runsomeTask(Timer timer) {
    someService.doSomething();
    }
}

到目前为止,我只测试了本地服务器上的调度器类。所以我的问题是,我如何才能为此编写单元测试?如果您能提供一些代码示例或很好的解释,我将不胜感激。

欢迎使用StackOverflow。查看关于使用Java8时钟类测试基于时间的代码的建议