Я могу добиться этого, создав отдельные тестовые классы для различного поведения Foo (которое зависит от внедренного экземпляра Bar) и аннотирование каждого из них разными тестовыми профилями. Эти тестовые профили могут обеспечить конфигурацию, позволяющую внедрять различные реализации Bar.
Однако в идеале я хочу, чтобы тесты были в одном тестовом классе FooTest. Поскольку аннотация @TestProfile разрешена только для классов, я попробовал использовать вложенные тестовые классы следующим образом:
Код: Выделить всё
@QuarkusTest
class FooTest {
@Inject Foo foo;
@Nested
@TestProfile(ProfileA.class)
class TestForImplementationA {
@Test
void testSomething() {
foo.doSomething();
}
}
@Nested
@TestProfile(ProfileB.class)
class TestForImplementationB {
@Test
void testSomething() {
foo.doSomething();
}
}
}
Свойство конфигурации barType является обязательным, но его не удалось найти ни в одном источнике конфигурации.
Есть ли способ добиться того, чего я хочу , или мне придется придерживаться отдельного теста классы?
PS: пример проекта можно скачать по адресу https://www.dropbox.com/s/qn3mp4ls32d69 ... t.zip?dl=0
Подробнее здесь: https://stackoverflow.com/questions/712 ... t-profiles
Мобильная версия