Используя Restlet я создал маршрутизатор для своего JAVA-приложения.
От использования завихрения я знаю, что каждая различная работа запросов GET, POST & DELETE для каждого из URIs и возвращает корректный ответ JSON.
Я желаю установить тесты JUnit для каждого URI для создания процесса тестирования легче. Однако я не к верному лучший способ выполнить запрос к каждому из URIs для получения ответа JSON, который я могу затем сравнить, чтобы удостовериться, что результаты как ожидалось. Какие-либо мысли о том, как сделать это?
Вы можете просто использовать Restlet Клиент
, чтобы делать запросы, затем проверяет каждый ответ и его представление.
Например:
Client client = new Client(Protocol.HTTP);
Request request = new Request(Method.GET, resourceRef);
Response response = client.handle(request);
assert response.getStatus().getCode() == 200;
assert response.isEntityAvailable();
assert response.getEntity().getMediaType().equals(MediaType.TEXT_HTML);
// Representation.getText() empties the InputStream, so we need to store the text in a variable
String text = response.getEntity().getText();
assert text.contains("search string");
assert text.contains("another search string");
На самом деле я не очень хорошо знаком с JUnit, assert
или модульным тестированием в целом, поэтому прошу прощения, если что-то не так с моим примером. Надеюсь, это все еще иллюстрирует возможный подход к тестированию.
Удачи!