Мы пытаемся написать тесты для наших представлений, но для правильного отображения некоторых из них требуются переменные сеанса. Вот как выглядит стандартный тест:
@Test
public void indexTest() {
running(fakeApplication(), new Runnable() {
public void run() {
Content html = views.html.index.render(loginForm);
assertThat(contentType(html)).isEqualTo("text/html");
assertThat(contentAsString(html)).contains("log in");
}
});
}
loginForm — это фиктивная форма, которую мы объявили в тестовом классе.
Однако, когда мы пытаемся запустить этот тест, мы получаем следующую ошибку:
«Отсюда нет доступного HTTP-контекста»
Мы пытались использовать testServer и пытались получить контекст http из запросов к этому серверу, но безрезультатно.
Спасибо :-)
Изменить @nico_ekito
Это код, окружающий мою форму входа:
Form<Login> loginForm = Controller.form(Login.class);
Однако я считаю, что проблема заключается в вызываемом контроллере, поскольку представление не использует никаких свойств сеанса. Однако метод аутентификации () (в контроллере, который отображается, когда форма отправляется в представление), однако, использует сеансы.