Я ничего не знаю о портлетах, но это так.
Есть portletUnit .
portletUnit - это среда тестирования
используется для тестирования портлетов JSR-168 снаружи
Контейнер портлета так же, как servletUnit
используется для тестирования сервлетов вне
Контейнер сервлетов. Прогнозируемый
спроектирован для отображения функционально
servletUnit на портлеты с
servletUnit сам обеспечивает
основа для портлета Unit.
Дополнительную информацию можно найти в его блоге Project PortletUnit , включая PortletUnit и Spring Portlet: проверка ошибок проверки формы .
При тестировании с помощью portletUnit это
не очевидно, как проверить, были ли
любые ошибки формы. К счастью, используя
особенность рендера слушателя
PortletRunner
, есть простой способ
проверить ошибки валидатора.
Есть также статья в блоге, написанная Нильс-Хельге Гарли Хегвик в 2007 году под названием Тестирование портлетов с Jetty, Pluto и JWebUnit .
Вспоминая отличную статью от
Блог Йоханнеса Бродволла о
интеграционное тестирование с Jetty и
JWebUnit, я хотел расширить его
подход к использованию встроенного
Установка Jetty-Плутон, которую я создал. это
оказалось довольно легко.
Наконец, документация Spring Framework 10.2 Модульное тестирование .
The
org.springframework.mock.web.portlet
пакет содержит набор Portlet API
макет объектов, предназначенных для использования с
Каркас Spring's Portlet MVC.
[...] org.springframework.test.web
пакет содержит ModelAndViewAssert
,
который может быть использован в сочетании с
любая среда тестирования (например, JUnit 4+,
TestNG и т. Д.) Для модульных тестов, занимающихся
с объектами Spring MVC ModelAndView
.
[...] Чтобы проверить свои контроллеры Spring MVC, используйте
ModelAndViewAssert
в сочетании с
MockHttpServletRequest
,
MockHttpSession
и т. Д. Из
org.springframework.mock.web package
.
Вот похожая статья, написанная Джоном Фергюсоном Смартом под названием
Модульное тестирование ваших приложений Spring-MVC .
Одна из замечательных вещей об этом
рамки, насколько это тестируемо. В
Spring-MVC, любые пользовательские валидаторы (для
проверка поля и формы) и
редакторы свойств (для преобразования текста
поля для конкретных типов Java)
очень легко проверить - вы можете просто проверить
они, как будто они где изолированные POJO.
Spring-MVC также поставляется с полным комплектом
фиктивных объектов, которые вы можете использовать (с
немного практики) чтобы проверить
Контроллеры к содержанию вашего сердца.
Например, вы можете использовать такие классы, как
MockHttpServletRequest
и
MockHttpServletResponse
для симуляции
ваш HTTP-запрос и ответ
объекты. Это также облегчается
тот факт, что Controller
s может быть
создаются как обычные классы Java.
Например, представьте, что вы тестируете
класс контроллера для страницы, которая
обновляет запись сведений о клиенте. Вы
может сделать это очень просто следующим образом:
public class UpdateClientTest {
//
// Prepare your request
//
request.setMethod("POST");
request.setParameter("id", "100");
request.setParameter("firstName", "Jane");
request.setParameter("lastName", "Doe");
//
// Invoke the controller
//
controller = new ChoosePeriodController();
ModelAndView mav = controller.handleRequest(request, response);
//
// Inject any service objects you need
//
controller.setClientService(clientService);
...
//
// Inspect the results
//
assert mav != null;
assertEquals("displayClient",mav.getViewName());
Client client = (Client) mav.getModel().get("client");
assertEquals("Jane",client.getFirstName());
assertEquals("Doe",client.getLastName());
...
}
...