У меня есть следующий тестовый класс, но не имеет значения, что я установил как «Контекстно-ориентированные местоположения» - он никогда не устанавливал мой UserService. И это не вызывает никакой ошибки, когда я устанавливаю несуществующий файл в свойствах-местоположениях ... что я делаю неправильно?Весна: JUnit-Test: applicationContext не загружен
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:applicationContextTest.xml" })
public class BasicPersistenceTest {
@Autowired
private UserService userService;
@Test
public void testUserLogin() throws Exception {
User result = userService.getUser("stefan", "walkner");
Assert.assertNotNull(result);
}
@Test
public void testLogin() {
User user = userService.getUser("stefan", "walkner");
Assert.assertNull(user);
}
public UserService getUserService() {
return userService;
}
public void setUserService(UserService userService) {
this.userService = userService;
}
}
весна-версия: 2.5.6.SEC01
JUnit-Version: 4,5
JDK: 1,5
При использовании @Autowired вам не нужен сеттер для свойства, и я не понимаю, почему вы хотите иметь для него публичный getter. – crunchdog
Я удалил геттер/сеттер и включил метод setup(). bizzarely, похоже, что setup() - метод никогда не вызывается ... Я помещаю там Assert.assertNotNull (null) и точку останова отладки, но он никогда не попадает туда ... – swalkner
Вы комментировали настройку() с аннотацией @Before? И вы не получаете никаких ошибок в Spring injection? Как объявляется ваш компонент UserService, можете ли вы опубликовать его тоже? – crunchdog