Pergunta

A minha organização está trabalhando na construção de webservices RESTful no JBoss appserver. A equipe de QA é usado para testar webservices SOAP de tão longe usando SoapUI. SoapUI tem uma nova versão que tem capacidades REST. Estamos pensando em usar isso.

  1. Existem quaisquer serviços RESTful disponíveis publicamente disponíveis na rede para livre que alguém poderia testar?
  2. Quais ferramentas estão disponíveis (e usado) para testar serviços Web RESTful?
Foi útil?

Solução

soapUI irá fazer o trabalho bem, veja este post para começar.

Outras dicas

Por favor, tente Firefox addon Poster, que é simples de usar e faz com que você se nd funcionando rapidamente

Você pode exercer serviços web usando pedaços bastante triviais de Python. Dependendo da sua segurança, você pode ser capaz de simplesmente usar urllib ou urllib2 do Python para fazer você pedidos REST e examinar suas respostas.

Além disso, você pode querer usar Python unittest para controlar a execução dos testes Python de seus serviços REST.

class TestSomeREST( unittest.TestCase ):
    def setUp(self):
        REALM = "blah@blah.com"
        self.client= RESTClient( "localhost", 18000, "tester", "tester", REALM )
    def test_1_get(self):
        response = self.client.get('/this/that/other/2/')
        self.failUnlessEqual(200, response.status_code)
        j1= JSONDecoder().decode(response.content)
        self.assertEquals(2, j1[0]['pk'] )
        entity= j1[0]['fields']
        self.assertEquals('Some Other Group', entity['name'])
        self.assertEquals('E1G2', entity['customer_id'])

O RESTClient usos classe urllib2 para passar através de autenticação digest para cada solicitação. É bastante complexo, mas posso compartilhar a essência se é do seu interesse.

Confira Fiddler

CURL Obtém você no meio do caminho. A outra metade está verificando os cabeçalhos, códigos de resposta e conteúdo entidade para se certificar de seu bom. Você pode usar uma variedade de ferramentas para que (em terra shell script, canalizando o cabeçalho e conteúdo para arquivos e diffing eles só poderia fazer o truque). Não seria tão difícil de refinar ainda mais o conjunto de ferramentas, talvez empilhamento enrolar-se com a estrutura de teste de unidade de sua escolha.

Eu construí um webservice resto testar painel com AJAX. Não foi tão difícil em tudo, na verdade. Você tem alguns problemas de segurança para trabalhar fora (ou seja, certificando-se de que você tem o conjunto de testes no mesmo servidor, ou talvez assinado Javascript.)

Para testar um serviço REST você pode tentar RESTO Assured que torna muito simples para serviços REST de teste e validação da resposta em Java (usando JUnit ou TestNG).

Confira Postman - https://chrome.google.com/webstore/detail/fdmmgilgnpjigdojojpjoooidkmcomcm / . Esta é uma ferramenta que eu tenho trabalhado ao longo dos últimos meses e, ultimamente, a partir do feedback que tenho recebido é tornar-se bastante útil para grandes projetos descansar enquanto ajudando com testes básicos terminal REST.

O código para isso está disponível no Github também. https://github.com/a85/POSTMan-Chrome-Extension

A maneira mais simples de serviço web de teste REST está usando curl no terminal.

Há alguns códigos que eu usei para testar o meu serviço web de trilhos. Você pode modificá-los para atender às suas serviços.

GET

curl http://localhost:3000/courses.json

POST

curl -H "Content-Type:application/json"  -d '{"courseCode":"55555","courseName":"SEEEE","courseYr":999}' http://localhost:3000/courses.json

colocar em Raills: EG1 (com todos os campos):

curl -H "X-Http-Method-Override: put" -H "Content-Type:application/json"  -d '{"courseCode":"123456","courseName":"AAAAAAAA","courseYr":12345}' http://localhost:3000/courses/5.json

EG2 (com o campo só pode ser editado):

curl -H "X-Http-Method-Override: put" -H "Content-Type:application/json"  -d '{"courseYr":999999999}' http://localhost:3000/courses/3.json

Excluir em trilhos com id fornecidas

 curl -H "X-Http-Method-Override: delete" -H "Content-Type:application/json"  -d '{"id":4}' http://localhost:3000/courses/5.json

Eu não testei ainda mas este aplicativo Java parece ser bom para serviços de teste REST. Há também um tutorial sobre Javalobby sobre isso.

Java App: http://code.google.com/p/rest-client /

Tuto: http://java.dzone.com/announcements/wiztoolsorg -restclient-21-rele

Você pode usar o simples cliente REST é uma extensão para o Google Chrome também https: // chrome. google.com/webstore/detail/fhjcajmcbmldlhcimfajhfbgofnpcjmb

SOA Cleaner, é uma ferramenta de teste que os testes tanto sabão e repouso (também WCF, mas parece que você não precisa desse recurso). É muito intuative, e utilizável. Escrito em .NET. A versão gratuita também está disponível. pode ser baixado do http://xyrow.com . Boa sorte!

Estou testando serviços RESTful com um no quadro casa .NET (nenhum problema portá-lo em Java). princípios básicos:

  • cliente de construção (para fazer as chamadas)
  • tipo de compilação aulas (XML e JSON)
  • resposta deserialize
  • material assert

Se você quiser mais informações, eu estou feliz de falar.

Eu estou usando extensão do console DESCANSO para Google Chrome e é por longe o melhor que eu tentei. Ele também suporta vários mecanismos de segurança como OAuth

(update 2: correção link)

Para java, existe também RESTFuse , que permite desenvolver testes de unidade que pode ser parecido com este :

@Rule
public Destination destination = new Destination("http://localhost:8080/rest/");


@HttpTest( method = Method.GET, path = "/status" ,authentications =
   @Authentication(type = AuthenticationType.BASIC, user = "joe", password = "doe")
)
public void testAuthRhqadmin() {
    com.eclipsesource.restfuse.Assert.assertOk(response);
}

Este teste é executado contra http://localhost:8080/rest/status e autentica como joe usuário com doe senha. O corpo do método, em seguida, verifica que a chamada GET retorna um código de status 200.

Tente Python de httplib. É muito fácil, você especifica o método, url, ea utilização urllib.urlencode para os parâmetros / corpo POST.

Isto pode ser combinado com o builtin unittest módulo se você gosta, por relatar de erros.

Estou usando o JMeter para isso, especialmente para coisas como testes de carga. É semelhante a SoapUI (que eu também usei), mas mais orientada para testar páginas web, o que torna bastante decente testar serviços RESTful também.

Eu escrevi um programa especificamente para testar Web REST Services. É uma aplicação muito simples escrito em .NET 2.0 (eu só testei no Windows Vista, mas deve funcionar em XP também). Os usos de aplicação HttpWebRequest para fazer solicitações e é apresentada a resposta resultante, bem como os cabeçalhos do pedido e resposta. Eu fiz um pouco de testes, mas eu pensei que poderia ajudá-lo a testar os seus serviços web.

RESTO Teste

Atualmente estou investigando wsclient aplicativo CLI para esta finalidade ( http://wso2.org/library/3362 ). Ele é bastante promissor, e pode ser usado para cortar um teste rápido a partir de um shell bash. Claro que, como muitos aqui mencionado, muitas das ferramentas que vêm com um sistema * nix irá fazer o trabalho com um pedacinho de codificação / scripting

Se você gosta usando Ruby há um RESTO-Client gem para ele

Para testadores eu acho Ruby é uma linguagem muito fácil de aprender, e tem algumas ferramentas excecllent como pepino para fazer testes de aceitação de estilo BDD.

Eu tentei vários clientes descanso e de longe o melhor que eu usei é o aplicativo Chrome: DHC .

DHC (aka Dev cliente HTTP) é projetado e desenvolvido por um desenvolvedor para os desenvolvedores para fazer a descoberta de recursos HTTP direta, manipulação e testar mais facilmente. Ao lado da função principal, envio / recebimento de solicitações HTTP personalizado / respostas, permite permanentemente para salvar um pedido para um repositório local para reutilização posterior e além disso a declaração pedido pode incluir variáveis ??que são contexto específico. Com o uso de contextos você pode alternar facilmente entre vários ambientes sem modificar pedido de declaração. (Por exemplo, a partir de um ambiente de teste de produção)

Testing Serviços REST completa web é uma tarefa fácil de fazer. Livre ad-ons estão disponíveis nos navegadores como cliente REST de onde você tem que enviar um serviço web com esperado tipo método / requerido: GET / POST / PUT / DELETE Se os parâmetros são combinados então a saída será gerada no corpo do navegador. enter descrição da imagem aqui

Eu sei que é questão muito antiga, mas poderia ser útil para outras pessoas. Só para responder a sua primeira pergunta que você pode verificar aqui para obter alguns webservices REST teste.

Fiddler e Poster plug-in Firefox pode ser usado para testar quaisquer serviços Web REST. SoapUI também vem com suporte RESTful webservices.

Para descanso avançada testando você pode tentar HttpMaster .
Ele suporta parâmetros dinâmicos, espectadores amigáveis ??para XML / JSON, e vários tipos de validações de dados de resposta que podem ser combinados em expressões lógicas.
Por básica http solicita algum plugin para o navegador será suficiente.

OnionTest ainda beta, mas bastante útil

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top