насмешливый веб-сервис - PullRequest
       31

насмешливый веб-сервис

0 голосов
/ 01 октября 2011

Я бы хотел издеваться над вызовом веб-службы, чтобы проверить мой код.Ниже приведен фрагмент кода, над которым я хочу издеваться.Я хотел бы проверить метод callWebService ().Я хочу, чтобы создать свой собственный HttpResponse, когда вызывается callRestClientService (критерии).Я пытался использовать JMock и EasyMock, но не смог получить желаемый результат.Во-первых, я верю, что я не смогу издеваться или создавать свой собственный HttpResponse.

Даже если я не могу смоделировать вызов шлюза, у меня уже есть локальный сервер, на который я могу сделать вызов, но мне пришлось бы смоделировать ответ, отправленный обратно сервером, для тестирования различных сценариев.

Может кто-нибудь помочь мне с этим .... Спасибо !!

public class RestClientServiceResponse
{
    public HttpResponse callRestClientService(final RestClientServiceCriteria criteria) throws IOException
    {
        final HttpUriRequest request = buildHttpUriRequest(criteria);
        return executeRestClientServiceCall(request);
    }

    public HttpResponse executeRestClientServiceCall(final HttpUriRequest request) throws IOException
    {
        final HttpClient client = new DefaultHttpClient();
        final HttpResponse httpResponse = client.execute(request);

        return httpResponse;
    }
}


public class CallWebService
{
    public void callWebService()
    {
        HttpResponse httpResponse = null;
        try
        {
            httpResponse = restClient.callRestClientService(criteria);
        }
        catch (final Exception e)
        {
        System.out.println(e);
        }
    }
}

Ответы [ 2 ]

0 голосов
/ 01 октября 2011

SoapUI - это инструмент с открытым исходным кодом, созданный для тестирования веб-сервисов, и он очень хорошо поддерживает макетирование сервисов.Прочтите этот урок о том, как это сделать.

0 голосов
/ 01 октября 2011

Если я вас правильно понял, просто используйте что-то вроде встроенного Jetty или Simple HTTP сервер.Я склонен использовать Simple, потому что у него, как правило, лучшая документация.Вы можете очень легко настроить его на возврат того, что вы хотите для теста.В зависимости от сложности, которую вам нужно, вы можете даже встраивать макет в сервер, позволяя выполнять обычные макетные операции над макетом, которые преобразуются в проверку HTTP-запросов и подготовку HTTP-ответов.

...