У меня есть два теста пружинного джунта, которые требуют разных конфигураций. Они следующие:
package some.pkg.name;
@RunWith(SpringRunner.class)
@SpringBootTest
@ContextConfiguration(classes = {Test1.ContextConfig.class})
public class Test1 {
@Test
public void test1() {
// do something
}
@Configuration
@ComponentScan("some.pkg.name")
public static class ContextConfig {
// bean definitions here
}
}
package some.pkg.name;
@RunWith(SpringRunner.class)
@SpringBootTest
@ContextConfiguration(classes = {Test2.ContextConfig.class})
public class Test2 {
@Test
public void test2() {
// do something
}
@Configuration
public static class ContextConfig {
// bean definitions here
}
}
Когда я запускаю Test1
, я получаю бины Test1 и бобы Test2. Я был на это некоторое время, но не могу понять это. Что я делаю неправильно? Я попытался поместить классы конфигурации в их собственный пакет, но это не сработало. В Test1
мне нужно сканирование компонентов Spring, в Test2
бобы создаются «вручную». Компонент сканирования по умолчанию для проекта some.pkg
.
Есть идеи?