Como criar um conjunto de testes e um caso de teste em SoapUI
โก Resumo Inteligente
Criando um SoapUI Projetos, conjuntos de testes e casos de teste permitem a realizaรงรฃo de testes estruturados de serviรงos web SOAP. Este guia explica os fundamentos do protocolo SOAP, a importaรงรฃo de WSDL, a execuรงรฃo de requisiรงรตes, a configuraรงรฃo de asserรงรตes e a anรกlise de logs de resposta para testes funcionais e de regressรฃo confiรกveis.
Compreendendo o protocolo SOAP
Antes de criar um SoapUI O estudo de caso ajuda a revisitar os conceitos bรกsicos do protocolo SOAP. Compreender claramente como as solicitaรงรตes e respostas SOAP se movem entre sistemas facilita o seu uso. SoapUI para testรก-los de forma eficaz.
SOAP significa Protocolo de acesso a objetos simplesA seguir estรฃo as principais propriedades do protocolo SOAP:
- ร um protocolo baseado em XML usado para comunicaรงรฃo entre dois sistemas diferentes.
- ร independente de plataforma e idioma. Um sistema desenvolvido usando Java pode se comunicar com um desenvolvido em .NET.
- As solicitaรงรตes e respostas SOAP sรฃo transportadas via HTTP.
Aprenda o formato de mensagem SOAP
Uma mensagem SOAP รฉ um documento XML comum que contรฉm os seguintes elementos. Uma mensagem pode ser tanto uma solicitaรงรฃo quanto uma resposta.

Com os fundamentos do SOAP estabelecidos, o prรณximo passo รฉ construir o SoapUI Estrutura do projeto, conjuntos de testes e casos de teste necessรกrios para validar um determinado serviรงo web. O passo a passo abaixo utiliza um SoapUI Exemplo de projeto para criar um novo projeto SOAP.
Criando um projeto SOAP em SoapUI
O Projeto SOAP contรฉm a definiรงรฃo WSDL importada, juntamente com todas as solicitaรงรตes de exemplo geradas para cada operaรงรฃo.
Passo 1: Dependendo do tipo de projeto, importe o protocolo SOAP ou REST. Neste exemplo, crie um novo projeto SOAP.
Passo 2: Utilize a seguinte solicitaรงรฃo SOAP URL: 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 exemplo para todas as operaรงรตes: Gera uma solicitaรงรฃo de exemplo para cada operaรงรฃo no WSDL. Ativado por padrรฃo quando o endereรงo do WSDL รฉ inserido; pode ser desmarcado se nรฃo for necessรกrio.
- Crie um conjunto de testes para o WSDL importado: Adiciona um SoapUI Conjunto de testes dentro do projeto para o WSDL importado.
- Caminhos relativos: Salva todos os arquivos em relaรงรฃo ao arquivo do projeto para facilitar a portabilidade.
Passo 3: Apรณs a criaรงรฃo do projeto SOAP com o WSDL acima, duas operaรงรตes serรฃo importadas para o projeto.
Passo 4: Expanda a primeira solicitaรงรฃo e clique com o botรฃo direito do mouse. Adicione, entรฃo clique Novo pedido.
Entรฃo clique OKA solicitaรงรฃo SOAP รฉ exibida em formato XML.
- Insira valores para intA e intB.
- Clique na Enviar botรฃo.
- O XML de resposta aparece no painel do lado direito.
Por que criar casos de teste em vez de solicitaรงรตes diretas?
ร possรญvel enviar uma solicitaรงรฃo para uma รบnica operaรงรฃo diretamente, mas essa abordagem rapidamente encontra limitaรงรตes quando vรกrias combinaรงรตes de entrada precisam ser testadas. Por exemplo, a mudanรงa de 5+5 para 4+4 exige a ediรงรฃo da solicitaรงรฃo a cada vez. Um conjunto de testes com casos de teste permite manter todos os cenรกrios reutilizรกveis โโsem alterar a operaรงรฃo original.
Como criar um conjunto de testes em SoapUI
Um conjunto de testes รฉ um contรชiner que agrupa casos de teste relacionados. Siga os passos abaixo para criar um.
Passo 1) Clique com o botรฃo direito do mouse na raiz do projeto.
Dentro do projeto, crie um conjunto de testes clicando com o botรฃo direito do mouse na raiz do projeto.
Etapa 2) Insira os detalhes do conjunto de testes.
Insira o nome do conjunto de testes e clique. OK.
Etapa 3) Verifique o conjunto de testes criado.
O novo conjunto de testes aparece no painel de navegaรงรฃo, conforme mostrado abaixo.
Passo 4) Abra o conjunto de testes.
A janela do Conjunto de Testes รฉ aberta no painel direito. Como ainda nรฃo existem Casos de Teste, todas as opรงรตes de aรงรฃo permanecem desabilitadas.
Como criar um caso de teste em SoapUI
Os casos de teste residem dentro de um conjunto de testes e agrupam as etapas de teste individuais que exercitam um serviรงo web.
Passo 1: Dentro de um conjunto de testes, crie vรกrios testes clicando com o botรฃo direito do mouse no conjunto de testes e escolhendo a opรงรฃo desejada. Novo caso de teste.
Passo 2: Especifique o nome do Caso de teste e clique OK.
Passo 3: O caso de teste criado inicialmente nรฃo possui etapas, conforme mostrado abaixo.
Observaรงรฃo: O caso de teste รฉ adicionado com zero etapas de teste para cada tipo de teste. ร medida que as etapas sรฃo adicionadas, os nรบmeros entre parรชnteses sรฃo atualizados automaticamente.
As etapas de teste funcional pertencem a Etapas de teste, etapas de desempenho entram em Teste de cargae as verificaรงรตes de seguranรงa estรฃo em vigor. Testes de Seguranรงa.
Passo 4: Insira diferentes tipos de etapas de teste clicando com o botรฃo direito do mouse. Etapas de teste e selecionando a opรงรฃo apropriada. Para um serviรงo web REST, selecione a Solicitaรงรฃo de Teste REST em vez de uma solicitaรงรฃo SOAP.
Adicionando uma etapa de teste em SoapUI
Adicione uma etapa de teste para validar a solicitaรงรฃo SOAP importada dentro do Caso de Teste.
Passo 1: Adicionar uma nova etapa do tipo Solicitaรงรฃo SOAP como mostrado abaixo.
Passo 2: Digite o nome da etapa e clique OK.
Passo 3: Uma caixa de diรกlogo รฉ exibida para selecionar a operaรงรฃo a ser realizada. Todas as operaรงรตes disponรญveis sรฃo listadas para seleรงรฃo.
- Diversas operaรงรตes sรฃo apresentadas aqui. As operaรงรตes sรฃo idรชnticas, exceto pela versรฃo SOAP: CalculatorSoap usa a versรฃo 1.1 do SOAP, enquanto CalculatorSoap12 usa a versรฃo 1.2.
- A versรฃo nรฃo importa neste cenรกrio, portanto, qualquer uma pode ser selecionada.
- Apรณs selecionar a operaรงรฃo, clique OK.
Passo 4: Ao adicionar um caso de teste, asserรงรตes padrรฃo podem ser aplicadas. Asserรงรตes, tambรฉm chamadas de pontos de verificaรงรฃo ou pontos de validaรงรฃo, serรฃo abordadas no prรณximo tutorial.
Os seguintes pontos de verificaรงรฃo podem ser adicionados ao criar um caso de teste. O exemplo abaixo cria um caso de teste sem nenhum ponto de validaรงรฃo habilitado.
- Verifica se a mensagem de resposta รฉ SOAP apรณs a execuรงรฃo do teste.
- Verifica se o esquema de resposta รฉ vรกlido.
- Verifica se a resposta SOAP contรฉm um elemento FAULT.
Passo 5: Ao criar um caso de teste, o XML da solicitaรงรฃo aparece conforme mostrado abaixo. A estrutura do XML รฉ explicada na imagem.
Passo 6: A contagem de etapas de teste foi incrementada para um, pois uma etapa foi adicionada. A adiรงรฃo de etapas de teste de carga e seguranรงa incrementarรก seus respectivos contadores automaticamente.
Enviar uma solicitaรงรฃo manualmente e ler a resposta em SoapUI
Passo 1: O exemplo abaixo soma dois nรบmeros inteiros.
- intA โ 5
- intB โ 5
Seguinte:
- Insira esses valores no lugar dos pontos de interrogaรงรฃo no XML da solicitaรงรฃo.
- Apรณs atualizar as tags XML correspondentes, clique em Enviar solicitaรงรฃo para verificar a resposta.
Passo 2: Apรณs o envio da solicitaรงรฃo, o serviรงo web รฉ processado pelo servidor web e a resposta รฉ retornada, conforme mostrado abaixo.
A resposta confirma que 5 mais 5 รฉ igual a 10.
Entendendo a resposta SOAP e os painรฉis de registro
Como mencionado anteriormente, as mensagens SOAP sรฃo transportadas via HTTP. Inspecionar as mensagens RAW ajuda a esclarecer como a solicitaรงรฃo e a resposta SOAP sรฃo transmitidas pelo HTTP.
Passo 1: Clique na Cru guia na SoapUI janela de solicitaรงรฃo.
- A solicitaรงรฃo รฉ enviada ao servidor web, portanto, o mรฉtodo HTTP POST รฉ utilizado.
- A solicitaรงรฃo SOAP รฉ transmitida no corpo da mensagem HTTP.
Passo 2: Agora clique no Cru guia na SoapUI janela de resposta para entender como a resposta รฉ entregue via HTTP.
- Apรณs o processamento da solicitaรงรฃo, o cรณdigo de resposta HTTP (200) รฉ exibido, indicando sucesso.
- A resposta SOAP รฉ retornada ao cliente dentro do corpo da mensagem HTTP.
A tabela abaixo resume os cรณdigos de resposta HTTP mais comuns para facilitar a depuraรงรฃo.
| HTTP Code | Descriรงรฃo |
|---|---|
| 1xx | Informativo: Solicitaรงรฃo recebida, processamento em andamento. |
| 2xx | Sucesso: A aรงรฃo foi recebida, compreendida e aceita com sucesso. |
| 3xx | Redirecionamento: ร necessรกrio realizar mais aรงรตes para concluir a solicitaรงรฃo. |
| 4xx | Erro do cliente: A solicitaรงรฃo contรฉm sintaxe incorreta ou nรฃo pode ser atendida. |
| 5xx | Erro do servidor: O servidor nรฃo conseguiu atender a uma solicitaรงรฃo aparentemente vรกlida. |
Passo 3: A janela de Caso de Teste tambรฉm exibe metadados adicionais para a solicitaรงรฃo e a resposta.
- Indica que NรO hรก cabeรงalho na solicitaรงรฃo que estรก sendo enviada.
- Indica que NรO hรก anexos na solicitaรงรฃo enviada ao servidor web.
- Indica 10 itens de cabeรงalho na resposta, visรญveis ao clicar.
- Indica que nรฃo hรก anexos na mensagem de resposta.
Painel de Registros
O painel de registros exibe todas as informaรงรตes trocadas entre o cliente e o servidor. As guias de registro mais usadas sรฃo descritas abaixo.
SoapUI Registro: Exibe informaรงรตes de resposta do servidor web. Os mesmos dados sรฃo armazenados no arquivo soapui.log dentro do diretรณrio. SoapUI diretรณrio bin.
Log HTTP: Exibe todas as transferรชncias de pacotes HTTP. Todas as informaรงรตes visรญveis na visualizaรงรฃo RAW tambรฉm sรฃo registradas no Log HTTP.
Registro de erros: Exibe todos os erros encontrados durante toda a sessรฃo do projeto. As mesmas informaรงรตes sรฃo armazenadas no arquivo soapui-errors.log dentro do diretรณrio. SoapUI diretรณrio bin.
Registro de memรณria: Monitora o consumo de memรณria e o exibe em forma de grรกfico. Isso รฉ รบtil ao executar operaรงรตes que consomem muita memรณria.
Com um conjunto de testes, casos de teste e etapas de teste definidos e uma resposta bem-sucedida recebida, o prรณximo passo รฉ validar essa resposta. Os tipos de asserรงรฃo serรฃo abordados no prรณximo tutorial.






























