Testar Webservice

Existem inúmeras ferramentas que possibilitam a integração com Webservices SOAP. A generalidade das tecnologias de desenvolvimento tem suporte de integração com webservices de forma nativa ou através de integração com outros serviços.

Estas são algumas das ferramentas disponíveis:

Testar com o SoapUI

Neste exemplo vamos demonstrar como realizar o teste com o webservice da INCM usando o SoapUI.

O SoapUI é uma ferramenta open source para testes de API. É uma ferramenta amplamente usada por developers, testers e utilizadores finais, com suporte para a generalidade dos testes funcionais de Serviços Web SOAP e API REST. Para além dos testes funcionais o SoapUI também permite tarefas de análise, testes de segurança, de virtualização e de mocking.

Criar Projeto SOAP a partir de um WSDL

  1. No SoapUI crie um novo projeto através da menu File > New SOAP Project

  2. Dê um Nome ao projeto e coloque seguinte URL no campo Initial URL:

     https://keys-tst.cryptosaft.incm.pt/service/public?wsdl
  3. Pode deixar as restantes opções tal e qual como estão por defeito e clique em OK.

O SoapUI tratará de gerar o serviço e um conjunto de testes de simulação opcionais.

Trabalhar com WSDL no SoapUI

WSDL ou Web Service Description Language consiste numa linguagem baseada na definição de XML. É usada para descrever as funcionalidades do serviço SOAP podendo comparar-se com um schema de XML, embora para fins distintos. Os ficheiros WSDL são fundamentais para testar e usar corretamente webservices baseados em SOAP. Para saber mais pode visitar esta página.

Após a criação do projeto, as ligações do serviço serão carregadas no SoapUI.

Operações

O serviço de WSDL apresenta duas operações, KeyRequestOperation e KeyRetrieveOperation. Ambas com suporte às funções de pedido e de resposta a mensagens.

Pedidos

Os pedidos são apresentados sob a forma de nós das operações. No SoapUI podem ser adicionados quantos pedidos quantos os necessários, mas, por defeito são sempre criados pedidos de exemplo.

KeyRequestOperation

A resposta a este pedido desencaderá o envio de uma mensagem para a caixa de correio viaCTT.

KeyRetrieveOperation

O código RetrieveCode que permite invocar a operação KeyRetrieveOperation é enviado para a caixa de correio viaCTT do utilizador.

A mensagem deste pedido contem os valores correspondentes à chave de cifra Key e o vetor de inicialização IV necessários para realizar o processo de cifra do ficheiro SAF-T (PT) da Contabilidade.

Last updated