在单元测试期间禁用Micronaut中的定期任务执行

时间:2019-06-17 14:07:49

标签: micronaut

现在,我通过在单元测试期间使用的应用程序配置中为每个具有值initialDelay的周期性任务设置10h来禁用周期性任务。

然后任务方法的注释如下:

@Scheduled(fixedDelay = '10s', initialDelay = '${some-domain.periodic-task.initial-delay}')
void periodicTask() {
    // periodic task implementation
}

在单元测试中使用的 application.yaml 配置中:

someDomain:
  periodicTask:
    initialDelay: 10h

问题是:是否有更好的方法在单元测试期间如何禁用Micronaut中的定期任务执行?

因为我觉得我的解决方案不好-它是解决方法。但是我没有为此找到任何全局设置,也没有找到可以在单元测试中使用的特定注释。

谢谢

1 个答案:

答案 0 :(得分:1)

  

有没有更好的方法来禁用定期任务执行   单元测试中有Micronaut吗?

这实际上取决于细节,但是一个选择是用@Requires(notEnv="test")标记包含定期任务的bean。