Bean が注入された Micronaut クラスをテストしています。私のテストでは、@MockBean
それをオーバーライドするクラスを提供しています。ただし、Micronaut は依然として実際の依存関係を注入しているようです。
@MicronautTest
public class ClassUnderTestTest {
@Inject ClassUnderTest classUnderTest;
@Test
public void test() {
}
@MockBean
Dependency dependency() {
return mock(Dependency.class);
}
}
最低限の再現を Github: https://github.com/crummy/micronaut-test-dependenciesにアップロードしました。実際の依存関係は例外をスローし、テストも例外をスローします。私の@MockBean
.
注釈を に変更すると、次の@MockBean(Dependency.class)
エラーが発生しますMessage: No bean of type [di.failure.example.Dependency] exists
。これは私にとってさらに紛らわしいようです-今、私の本当のまたは私のモックの依存関係を解決しませんか?