【问题标题】:How to Override a OnApplicationEvent method from Running on StartupEvent in Tests in Micronaut Application如何在 Micronaut 应用程序的测试中从 Run on StartupEvent 覆盖 OnApplicationEvent 方法
【发布时间】:2022-04-19 19:22:37
【问题描述】:

我有一个 OnApplicationEvent,它在服务器启动时执行一些花哨的预定代码。我想要做的是至少为我的一些单元测试禁用/覆盖这个调用。我在 Micronaut 应用程序中工作。

我该怎么做?

【问题讨论】:

  • 有类似@Requires(property="spec.name", value="SomeSpec") 的帮助吗?
  • 您能详细解释一下吗?我尝试阅读有关 @Requires 的信息,但无法理解。
  • 如果您的应用程序中的某个 bean 被标记了该注释,则该 bean 只会在 SomeSpec 测试运行时加载。你可以做一些事情,比如提供一个测试特定的 bean,@Replaces 一个现有的(生产)bean。有很多选择。
  • 我认为它有效。我添加了注释@Requires(notEnv = Environment.TEST)。现在我的应用程序类没有加载,但测试运行得很好。您能否提供一些资源链接,我可以在其中检查示例代码以更深入地理解这些注释。
  • “您能否提供一些资源链接,我可以在其中检查示例代码以更深入地理解这些注释。” - 一些相关信息可在docs.micronaut.io/2.5.7/guide/#replacesdocs.micronaut.io/2.5.7/guide/#factories 获得。

标签: overriding startup micronaut micronaut-test


【解决方案1】:

pks18 在@Requires(notEnv = Environment.TEST) 上的回答帮助了我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-17
    • 2019-04-07
    • 1970-01-01
    • 1970-01-01
    • 2018-11-05
    • 1970-01-01
    相关资源
    最近更新 更多