Использование вложенных тестов Quarkus с различными профилями тестирования.JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Использование вложенных тестов Quarkus с различными профилями тестирования.

Сообщение Anonymous »

Я хочу создать тестовый пример для класса Foo. В этот класс Foo внедряется экземпляр Bar; однако существуют разные реализации Bar, и решение о том, какую из них следует использовать, зависит от свойства конфигурации. (Техническая реализация представляет собой метод-производитель, который создает экземпляры Bar. Этот метод-производитель получает свойство конфигурации и использует его для принятия решения о том, какую реализацию использовать.)
Я могу добиться этого, создав отдельные тестовые классы для различного поведения 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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»