Начиная с весны 3.2, вы можете иметь в своих тестах компоненты с запросом и сессией, которые могут быть прочитаны in the Spring reference manual, section 11.3.5.Весенний сеанс бобов в тесте TestNG?
Например:
@RunWith(SpringJUnit4ClassRunner.class)
@WebAppConfiguration
@ContextConfiguration({"classpath:applicationContext.xml"})
public class Test1
{
@Autowired
private MySessionBean state;
@Test
public void test() {
System.out.println(state.toString());
}
}
Вышеуказанные работы. Однако, пытаясь приспособить это к TestNG:
@WebAppConfiguration
@ContextConfiguration({"classpath:applicationContext.xml"})
public class Test2 extends AbstractTestNGSpringContextTests
{
@Autowired
private MySessionBean state;
@Test
public void test() {
System.out.println(state.toString());
}
}
Это сгенерирует исключение:
java.lang.IllegalStateException: запрос Нет нитка переплете найдено: Are Вы имеете в виду атрибуты запроса за пределами фактический веб-запрос, или обработка запроса за пределами первоначально принимающего потока?
Я делаю что-то неправильно или тестирует с помощью боковых зон с сессией, поддерживаемых только JUnit, а не TestNG?