Compreendendo o protocolo SOAP
Antes de criar um caso de teste SOAPUI, vamos entender o básico sobre o protocolo SOAP. Isso o ajudará a usar a IU SOAP para testar solicitações e respostas SOAP de maneira eficaz.
SOAP significa S exe O bject Um cesso P rotocolo. Abaixo estão as propriedades de um protocolo SOAP.
- É um protocolo baseado em XML para comunicação entre dois sistemas diferentes.
- É uma plataforma e independente de linguagem. Portanto, um sistema desenvolvido em Java pode se comunicar com um sistema desenvolvido em .NET.
- As solicitações / respostas SOAP são transportadas via HTTP.
Neste tutorial de teste, você aprenderá:
- Aprenda a mensagem SOAP FORMAT
- Crie um Projeto
- Criando suíte de teste
- Criando Caso de Teste
- Inserção de Etapa de Teste
- Compreendendo a resposta do sabão e painéis de registro
- Enviando Solicitação Manualmente e Lendo a Resposta
Aprenda a mensagem SOAP FORMAT
Uma mensagem SOAP é um documento XML comum que contém os seguintes elementos. A mensagem pode ser uma mensagem de solicitação ou uma mensagem de resposta.
Depois de configurar o espaço de trabalho que realizamos no último tutorial, temos que criar projetos, suítes de teste, casos de teste para testar um determinado serviço web. Vamos entender as etapas envolvidas em fazer o mesmo.
Crie um Projeto
Passo 1: Agora, dependendo do projeto, precisamos importar o protocolo SOAP / REST. Vamos criar um novo projeto SOAP.
Etapa 2: faremos uso da seguinte solicitação SOAP http://www.dneonline.com/calculator.asmx?wsdl
- Insira o nome do projeto
- Insira o caminho da solicitação WSDL. Neste caso http://www.dneonline.com/calculator.asmx?wsdl
- Clique OK
Observação:
- Criar solicitação de amostra para todas as operações? Ele cria uma solicitação de amostra para todas as operações disponíveis no WSDL fornecido. Assim que você inserir o endereço WSDL, esta opção será marcada automaticamente. Você pode desmarcá-lo.
- Criar um conjunto de testes para o WSDL importado: Cria um conjunto de testes dentro do projeto para o WSDL importado.
- Caminhos relativos : permite ao usuário salvar todos os arquivos relativos ao arquivo do projeto.
Passo 3: Ao criar o projeto SOAP com o WSDL acima citado, poderemos ver que existem duas operações que serão importadas para o projeto.
Passo 4)
Expanda a primeira solicitação e clique com o botão direito em 'Adicionar'. Em seguida, clique em 'Novo pedido'.
Em seguida, clique em 'OK'. Ele exibirá a solicitação SOAP no formato XML
- Insira 'intA' e 'intB'
- Clique no botão enviar
- O XML de resposta será exibido no painel do lado direito.
Você pode se perguntar por que criar casos de teste? Quando você pode testar diretamente o serviço da Web aqui
…Bem, você pode enviar uma solicitação para uma operação. E quanto aos outros? Quantas combinações de entradas para Adições você pode fazer usando esta operação ? Você tem que editar a solicitação para cada combinação.
Por exemplo: se você deseja adicionar de 4 e 4 em vez de 5 e 5
… Você precisa editar a operação novamente. Portanto, é necessário criar um conjunto / casos de teste para que todos os cenários possíveis sejam testados sem a necessidade de editar diretamente a própria operação.Criando suíte de teste
Etapa 1: dentro do projeto, os testadores podem criar um conjunto de testes clicando com o botão direito do mouse na raiz do projeto.
Etapa 2: Precisamos inserir o nome do conjunto de testes e clicar em OK.
Etapa 3: O conjunto de testes criado é exibido no painel do navegador, conforme mostrado abaixo.
Etapa 4: A janela Test Suite é aberta no painel direito. Como acabamos de criar, NÃO há casos de teste. Portanto, todas as opções estão desabilitadas.
Criando Caso de Teste
Etapa 1: Dentro de um conjunto de testes, podemos criar vários testes, clicando com o botão direito do mouse no 'conjunto de testes' e escolhendo 'Novo TestCase'.
Etapa 2: Especifique o nome do Caso de Teste e clique em 'OK'.
Etapa 3: O caso de teste criado tem zero etapas, conforme mostrado abaixo.
Nota : podemos ver que o caso de teste é adicionado com zero etapas de teste para todos os tipos de testes disponíveis. Ao adicionar as etapas do teste, os números entre colchetes mudariam automaticamente.
A etapa de teste funcional deve ir para 'Etapas de teste', enquanto uma etapa de teste de desempenho deve ir para 'Teste de carga' e uma etapa de teste de segurança deve ir para 'Testes de segurança'.
Etapa 4: podemos inserir uma variedade de etapas de teste, clicando com o botão direito do mouse nas etapas de teste e selecionando uma etapa de teste apropriada, conforme mostrado abaixo. Portanto, se você fosse testar um serviço da Web REST, selecionaria a solicitação de teste REST.
Inserção de Etapa de Teste
Agora vamos adicionar uma etapa de teste para validar a solicitação SOAP importada.
Etapa 1: adicione uma nova etapa 'Solicitação SOAP' conforme mostrado abaixo.
Etapa 2: digite o nome da etapa e clique em OK.
Etapa 3: Ao clicar em 'OK', uma caixa de diálogo é exibida para selecionar a operação a ser chamada. Todas as operações são listadas e o usuário pode selecionar a operação que deseja invocar.
- Existem muitas operações que serão listadas. As operações são as mesmas, exceto a versão SOAP usada.
CalculatorSoap - usa SOAP versão 1.1 enquanto,
CalculatorSoap12 - usa SOAP versão 1.2
- A versão não importa para nós neste contexto. Portanto, você pode selecionar o de sua escolha.
- Ao selecionar a operação, clique em 'Ok'
Etapa 4: ao adicionar um caso de teste, podemos adicionar asserções padrão. Asserções também chamadas de pontos de verificação / validação, das quais trataremos em detalhes no próximo tutorial.
Podemos adicionar os seguintes pontos de verificação / asserções durante a criação de casos de teste. Vamos criar um caso de teste com a opção que significa criar uma etapa de teste SEM nenhum dos pontos de validação abaixo
- Verifica se a mensagem de resposta é SOAP, ao executar o teste.
- Verifica se o esquema de resposta é válido.
- Verifica se a resposta SOAP contém FAULT.
Etapa 5: Ao criar o caso de teste, o XML da solicitação é mostrado abaixo. A estrutura do XML é explicada no instantâneo abaixo.
Etapa 6: a contagem de etapas de teste agora é incrementada para um, pois acabamos de adicionar uma etapa de teste. Da mesma forma, ao adicionar a etapa de teste de carga e segurança, o número correspondente seria automaticamente incrementado com base no número de etapas adicionadas.
Enviar pedido manualmente e ler a resposta
Etapa 1: Gostaríamos de adicionar dois números inteiros.
- intA - 5
- intB - 5
Próximo,
- Precisamos inserir essas entradas no lugar do ponto de interrogação que será enviado como XML de solicitação.
- Depois de inserir esses valores nas tags XML correspondentes, clique no botão 'enviar solicitação' para verificar a resposta.
Etapa 2: ao enviar uma solicitação, a solicitação de serviço da web é processada pelo servidor da web e envia de volta uma resposta conforme mostrado abaixo.
Ao ler a resposta, podemos concluir que 5 mais 5 é 10.
Compreendendo a resposta do sabão e painéis de registro
Conforme explicado no início deste tutorial, as mensagens SOAP são transportadas via protocolo HTTP. Vamos dar uma olhada nas mensagens RAW. Isso nos ajudará a aprender como a solicitação e a resposta SOAP foram transportadas por HTTP.
Etapa 1: Clique na guia 'RAW' em ambas as janelas de solicitação SOAP-UI.
- A solicitação é postada no servidor da web. Portanto, o método POST de Http é usado.
- A solicitação SOAP é transportada no corpo da mensagem Http.
Etapa 2: agora clique na guia 'RAW' na janela de resposta SOAP-UI para entender como a resposta é enviada via HTTP.
- Depois de processar a solicitação, o código de resposta Http (200) é mostrado, o que significa que foi um sucesso. O servidor da web o processou com sucesso.
- A resposta SOAP é enviada de volta ao cliente como parte do corpo da mensagem HTTP.
Um instantâneo rápido dos códigos de resposta Http para fácil compreensão e depuração. A tabela abaixo o ajudará a solucionar problemas com base no código HTTP recebido do servidor da web.
Código Http | Descrição |
1xx: | Informativo - Significa uma solicitação recebida e um processo contínuo. |
2xx: | Sucesso - A ação foi recebida, compreendida e aceita com sucesso. |
3xx: | Redirecionamento - significa que outras ações devem ser executadas para concluir a solicitação. |
4xx: | Erro do cliente - significa que a solicitação contém sintaxe incorreta ou não pode ser atendida |
5xx: | Erro do servidor - O servidor falhou em atender a uma solicitação aparentemente válida |
Etapa 3: vamos entender as outras informações que são exibidas na janela do caso de teste.
- NENHUM cabeçalho na solicitação que está sendo enviada
- Não representa nenhum anexo na solicitação que está sendo enviada ao servidor da web.
- Representa 10 informações de cabeçalho e as mesmas são exibidas ao clicar nele.
- Representa que não há anexos da mensagem de resposta.
LOGS PANE:
O painel Logs contém informações completas sobre a transação entre o cliente e o servidor. Os usuários poderão ver as guias do painel Log conforme mostrado abaixo. Discutiremos os painéis de log mais comumente usados ao trabalhar com SOAP-UI.
Log do SoapUI - exibe as informações de resposta do servidor da web. As mesmas informações são armazenadas no arquivo soapui.log da pasta SOAP-UI instalada no diretório 'bin'.
Log Http - Exibe todas as transferências de pacotes HTTP. Todas as informações em 'RAW' são mostradas no log HTTP.
Log de erros - o log de erros exibe todos os erros que encontramos durante toda a sessão do projeto. As mesmas informações estão disponíveis em 'soapui-errors.log' presente no diretório 'bin' do local de instalação do SOAP UI.
Registro de memória - esta guia monitora o consumo de memória e o exibe na forma de gráfico, conforme mostrado abaixo. É realmente útil quando uma operação que exige muita memória é executada.
Agora que criamos um conjunto de testes, caso de teste, etapa de teste e obtivemos uma resposta, a próxima etapa é validar a resposta. Trataremos de tipos de asserções no próximo tutorial.