Restlet позволяет вам запускать ваши веб-сервисы на различных серверных «коннекторах», и довольно легко переключаться с одного сервера на другой. Обычно мы запускаем наши веб-службы в кластере серверов приложений Sun Glassfish Java EE, но для их тестирования мы используем коннектор, который связывается с Simple HTTP Server для запуска веб-служб как отдельного приложения. Также имеются серверные коннекторы для AsyncWeb, Jetty, Grizzly и внутренний HTTP-сервер.
На стороне клиента вы должны рассмотреть клиентскую библиотеку Restlet. Это довольно лаконично и хорошо сочетается с серверами Restlet. Мы используем коннектор Apache HTTP Client.
Для тестирования мы создали класс Fetcher. Это реализовано с помощью клиентского API Restlet. Чтобы использовать его, вы в значительной степени вызываете метод fetch():
DTO person = fetch("/employee/1234");
DTO department = fetch("/department/" + person.getDepartment());
Fetch() прикрепляет данное имя ресурса к базовому URI веб-службы (скажем, «http://localhost:8182 "), использует клиентский API Restlet для получения XML-представления, а затем десериализует полученный XML в объект передачи данных (POJO).
Вы можете видеть, что это действительно делает модульное тестирование довольно простым. Перед модульными тестами вы запускаете веб-службы на отдельном сервере, таком как Simple или Jetty. Во время модульных тестов вы извлекаете DTO, деревья DOM, объекты json.org или что-то еще с помощью Fetcher, а затем применяете тестовые утверждения к тому, что было возвращено. Если вам нужно протестировать на более детальном уровне, вы можете напрямую использовать клиентский код Restlet.
person
Community
schedule
04.06.2009