Мне нужно создать тесты для некоторого класса. Этот класс в основном проекте (src/main/java/..
) легко внедряется в другие классы, поскольку у меня есть собственный класс ResourceConfig, который объявляет, какие пакеты необходимо сканировать для поиска классов обслуживания.
Теперь я создал тестовые каталоги (в src/test/java/..
) и создал класс, что-то вроде:
public class TheMentionedClassIntegrationTest {
@Inject
private TheMentionedClass theMentionedClass ;
@Test
public void testProcessMethod() {
assertNotNull(theMentionedClass);
}
}
Но проблема в том, что что бы я ни делал, класс всегда равен нулю. В других тестах проекта я использовал класс JerseyTest
. Поэтому я попытался сделать то же самое здесь, расширить TheMentionedClassIntegrationTest
с помощью JerseyTest
, переопределить метод configure
, создать свой частный класс ResourceConfig
, который регистрирует Binder
(по умолчанию для всего проекта), а также зарегистрировать TheMentionedClassIntegrationTest
.
Это не сработало. Я делал много разных попыток, но ни одна из них не увенчалась успехом. Я думаю, что работать с HK2
чрезвычайно сложно, нет хорошей документации или что-то в этом роде..
Ребята, у вас есть идея, как внедрить TheMentionedClass в тестовый класс? Может мой подход неверен?
Спасибо!