what is end end testing
O que é teste de ponta a ponta: estrutura de teste E2E com exemplos
O teste ponta a ponta é uma metodologia de teste de software para testar o fluxo de um aplicativo do início ao fim. O objetivo do teste ponta a ponta é simular o cenário real do usuário e validar o sistema em teste e seus componentes para integração e integridade de dados.
Ninguém quer ser conhecido por seus erros e negligência, e o mesmo acontece com os Testadores. Quando os Testadores recebem um aplicativo para testar, a partir desse momento, eles assumem a responsabilidade e o aplicativo também atua como uma plataforma para mostrar seus conhecimentos práticos e técnicos de teste.
Então, para descrevê-lo tecnicamente, para garantir que o teste seja feito completamente, é necessário realizar “ Teste de ponta a ponta ' .
Neste tutorial, aprenderemos o que é teste de ponta a ponta, como é feito, por que é necessário, quais são as matrizes usadas, como criar casos de teste específicos de ponta a ponta e alguns outros aspectos importantes também. Também aprenderemos sobre o teste do sistema e compará-lo com o teste de ponta a ponta.
Real também => Treinamento de ponta a ponta em um projeto ao vivo - Treinamento de controle de qualidade online gratuito.
O que você aprenderá:
melhor limpador de arquivos para windows 10
- O que é teste de ponta a ponta?
- Ferramentas de teste de ponta a ponta
- Como funciona o teste de ponta a ponta?
- Métodos de teste E2E
- Por que fazemos o teste E2E?
- Estrutura de Design de Teste E2E
- Métricas Envolvidas
- Conclusão
O que é teste de ponta a ponta?
O teste ponta a ponta é uma metodologia de teste de software para testar o fluxo de um aplicativo do início ao fim. O objetivo deste teste é simular o cenário real do usuário e validar o sistema em teste e seus componentes para integração e integridade de dados.
É executado do início ao fim em cenários do mundo real, como a comunicação do aplicativo com hardware, rede, banco de dados e outros aplicativos.
O principal motivo para realizar esse teste é determinar várias dependências de um aplicativo, bem como garantir que informações precisas sejam comunicadas entre vários componentes do sistema. Geralmente é realizado após a conclusão dos testes funcionais e de sistema de qualquer aplicativo.
Vejamos um exemplo do Gmail:
A verificação de ponta a ponta de uma conta do Gmail incluirá as seguintes etapas:
- Lançar uma página de login do Gmail por meio de URL.
- Login na conta do Gmail usando credenciais válidas.
- Acessando o Inbox. Abrindo e-mails lidos e não lidos.
- Redigindo um novo email, responda ou encaminhe um email.
- Abrindo itens enviados e verificando e-mails.
- Verificar emails na pasta Spam
- Sair do aplicativo Gmail clicando em ‘logout’
Ferramentas de teste de ponta a ponta
Ferramenta Recomendada:
# 1) TestCraft
Recomendamos o uso de uma ferramenta de automação de teste de ponta a ponta como o TestCraft.
TestCraft é uma plataforma de automação de teste Selenium sem código. Sua tecnologia revolucionária de IA e modelagem visual exclusiva permitem a criação e execução mais rápida de testes, eliminando a sobrecarga de manutenção de teste.
Os testadores criam cenários de teste totalmente automatizados sem codificação. Os clientes encontram bugs mais rapidamente, lançam com mais frequência, integram-se com a abordagem CI / CD e melhoram a qualidade geral de seus produtos digitais. Tudo isso está criando uma experiência de teste completa de ponta a ponta.
=> Visite o site do TestCraft
Como funciona o teste de ponta a ponta?
Para entender um pouco mais, vamos descobrir Como funciona?
Pegue umexemploda Indústria Bancária. Poucos de nós devem ter tentado Ações. Quando um titular de conta Demat compra qualquer ação, uma determinada porcentagem de um valor deve ser dada ao corretor. Quando o acionista vende aquela ação, independentemente de obter lucro ou prejuízo, uma determinada porcentagem do valor é novamente dada ao corretor. Todas essas transações são refletidas e gerenciadas nas contas. Todo o processo envolve a Gestão de Riscos.
Quando examinamos o exemplo acima, mantendo o teste de ponta a ponta em mente, descobriremos que todo o processo inclui vários números, bem como diferentes níveis de transações. Todo o processo envolve muitos sistemas que podem ser difíceis de testar.
Métodos de teste E2E
# 1) Teste horizontal:
Este método é usado muito comumente. Ocorre horizontalmente no contexto de vários aplicativos. Este método pode ocorrer facilmente em um único aplicativo ERP (Enterprise Resource Planning). Tome um exemplo de um aplicativo baseado na web de um sistema de pedidos online. Todo o processo incluirá contas, status de estoque dos produtos, bem como detalhes de envio.
# 2) Teste vertical:
Neste método, todas as transações de qualquer aplicativo são verificadas e avaliadas do início ao fim. Cada camada individual do aplicativo é testada de cima para baixo. Tome um exemplo de um aplicativo baseado na web que usa códigos HTML para alcançar servidores web. Nesses casos, a API é necessária para gerar códigos SQL no banco de dados. Todos esses cenários de computação complexos exigirão validação adequada e testes dedicados. Portanto, este método é muito mais difícil.
' Teste de caixa branca ' assim como ' Teste de caixa preta ' ambos estão associados a este teste. Ou, em outras palavras, podemos dizer que esta é a combinação dos benefícios dos testes de caixa branca e caixa preta. Dependendo do tipo de software que está sendo desenvolvido, em diferentes níveis, ambas as técnicas de teste, ou seja, caixa branca e caixa preta são usadas como e quando necessário. Basicamente, o teste End to End executa a abordagem funcional e arquitetônica de qualquer software ou programa para validar funções do sistema.
Os testadores como verificação de ponta a ponta porque escrever casos de teste do usuário ' s perspectiva e em um cenário do mundo real, pode evitar os dois erros comuns. ' faltando um bug ' e ' escrever casos de teste que não verificam cenários do mundo real ' . Isso fornece aos testadores uma imensa sensação de realização.
Abaixo estão listadas algumas diretrizes que devem ser mantidas em mente ao projetar os casos de teste para realizar este tipo de teste:
- Os casos de teste devem ser projetados da perspectiva do usuário final.
- Deve se concentrar em testar alguns recursos existentes do sistema.
- Vários cenários devem ser considerados para a criação de vários casos de teste.
- Diferentes conjuntos de casos de teste devem ser criados para enfocar vários cenários do sistema.
À medida que executamos quaisquer casos de teste, semelhante é o caso com este teste. Se os casos de teste forem 'Passados', ou seja, obtivermos a saída esperada, diz-se que o sistema passou com sucesso no teste de ponta a ponta. Da mesma forma, se o sistema não produz a saída desejada, então um novo teste de um caso de teste é necessário, tendo em mente as áreas de falha.
Por que fazemos o teste E2E?
No cenário atual, como também mostrado no diagrama acima, um sistema de software moderno compreende sua interconexão com vários subsistemas. Isso tornou os sistemas de software modernos muito complicados.
Esses subsistemas de que estamos falando podem estar dentro da mesma organização ou, em muitos casos, também podem ser de organizações diferentes. Além disso, esses subsistemas podem ser um tanto semelhantes ou diferentes do sistema atual. Como resultado, se houver qualquer falha ou falha em qualquer subsistema, isso pode afetar adversamente todo o sistema de Software, levando ao seu colapso.
Esses riscos principais podem ser evitados e podem ser controlados por este tipo de teste:
- Mantenha uma verificação e execute a verificação do fluxo do sistema.
- Aumente as áreas de cobertura de teste de todos os subsistemas envolvidos com o sistema de software.
- Detecta problemas, se houver, com os subsistemas e, assim, aumenta a produtividade de todo o sistema de software.
Abaixo mencionados estão os poucas atividades que estão incluídas no processo de ponta a ponta:
- Um estudo completo dos requisitos para realizar este teste.
- Apropriado configuração de ambientes de teste.
- Um estudo completo dos requisitos de Hardware e Software.
- Descrições de todos os subsistemas, bem como do sistema de software principal envolvido.
- Aliste as funções e responsabilidades de todos os sistemas e subsistemas envolvidos.
- Os métodos de teste usados neste teste, bem como os padrões que são seguidos, sua descrição.
- Projetos de casos de teste, bem como matriz de requisitos de rastreamento.
- Grave ou salve os dados de entrada e saída para cada sistema.
Estrutura de Design de Teste E2E
Analisaremos todas as 3 categorias, uma por uma:
# 1) Funções do usuário: As seguintes ações devem ser realizadas como parte da construção de funções do usuário:
- Listagem de recursos dos sistemas de software e seus subsistemas interconectados.
- Para qualquer função, acompanhe as ações realizadas, bem como os dados de entrada e saída.
- Encontre as relações, se houver, entre diferentes funções de usuários.
- Descubra a natureza das diferentes funções do usuário, ou seja, se são independentes ou reutilizáveis.
# 2) Condições: As seguintes atividades devem ser realizadas como parte das condições de construção com base nas funções do usuário:
- Para cada função do usuário, um conjunto de condições deve ser preparado.
- Tempo, condições de dados e outros fatores que afetam as funções do usuário podem ser considerados como parâmetros.
# 3) Casos de teste: Os seguintes fatores devem ser considerados para a construção de casos de teste:
- Para cada cenário, um ou mais casos de teste devem ser criados para testar toda e qualquer funcionalidade das funções do usuário.
- Cada condição deve ser listada como um caso de teste separado.
Métricas Envolvidas
Passando para as próximas atividades ou métricas importantes envolvidas neste teste :
- Status da preparação do caso de teste: Isso pode ser rastreado na forma de um gráfico para representar o progresso dos casos de teste planejados que estão em preparação.
- Acompanhamento semanal do progresso do teste: Isso inclui a representação semanal do progresso da execução dos casos de teste. Pode ser refletido através da representação percentual para casos de aprovação, reprovação, execução, não execução, inválida, etc.
- Status e relatório detalhado para defeitos: O relatório de status deve ser preparado diariamente para mostrar o status de execução do caso de teste, bem como os defeitos encontrados e registrados de acordo com sua gravidade. Semanalmente, deve ser calculada a porcentagem dos defeitos abertos e fechados. Além disso, com base na gravidade e na prioridade do defeito, o status dos defeitos deve ser rastreado semanalmente.
- Ambiente de teste: Isso mantém um registro da duração do tempo do ambiente de teste alocado, bem como o tempo do ambiente de teste realmente usado durante a execução deste teste.
Quase vimos todos os aspectos desse teste. Agora vamos distinguir ' Teste de Sistema ' e ' Teste de ponta a ponta ' . Mas antes disso, deixe-me dar uma ideia básica de 'Teste de sistema' para que possamos diferenciar facilmente entre as duas formas de teste de software .
Teste de sistema é a forma de teste que inclui uma série de testes diferentes cujo objetivo é realizar o teste completo do sistema integrado. O teste de sistema é basicamente uma forma de teste de caixa preta, onde o foco está no funcionamento externo dos sistemas de software do ponto de vista do usuário, considerando as condições do mundo real.
O teste do sistema envolve:
- Testando um aplicativo totalmente integrado incluindo o sistema principal.
- Determine se os componentes interagem uns com os outros e dentro do sistema.
- Verifique a saída desejada com base na entrada fornecida.
- Analisar a experiência do usuário ao usar vários aspectos do aplicativo.
Acima, vimos a descrição básica do teste do sistema para entendê-lo. Agora, veremos as diferenças entre “Teste de sistema” e “Teste de ponta a ponta”.
S.No. | Teste de ponta a ponta | Teste de Sistema |
---|---|---|
1 | Valida tanto o sistema de software principal como todos os subsistemas interconectados. | Conforme as especificações fornecidas no documento de Requisitos, ele apenas valida o sistema de software. |
dois | A ênfase principal está em verificar o fluxo do processo de teste de ponta a ponta. | A ênfase principal está na verificação e verificação de recursos e funcionalidades do sistema de software. |
3 | Durante a execução do teste, todas as interfaces, incluindo os processos de back-end do sistema de software, são levadas em consideração. | Durante a execução do teste, apenas as áreas funcionais e não funcionais e seus recursos são considerados para o teste. |
4 | O teste de ponta a ponta é executado / realizado após a conclusão do teste de sistema de qualquer sistema de software. | O teste do sistema é basicamente realizado após a conclusão do teste de integração do sistema de software. |
5 | O teste manual é mais preferido para realizar testes de ponta a ponta, pois essa forma de teste envolve o teste de interfaces externas, que também pode ser muito difícil de automatizar às vezes. E tornará todo o processo muito complexo. | Os testes manuais e de automação podem ser executados como parte do teste do sistema. |
Conclusão
Espero que você tenha aprendido vários aspectos dos testes de ponta a ponta, como seus processos, métricas e a diferença entre o teste de sistema e o teste de ponta a ponta.
Para qualquer versão comercial do software, a verificação de ponta a ponta desempenha um papel importante, pois testa todo o aplicativo em um ambiente que imita exatamente os usuários do mundo real, como comunicação de rede, interação de banco de dados, etc.
Principalmente, o teste de ponta a ponta é executado manualmente, pois o custo de automatizar esses casos de teste é muito alto para ser pago por todas as organizações. Isso não é apenas benéfico para a validação do sistema, mas também pode ser considerado útil para testar a integração externa.
Informe-nos se tiver dúvidas sobre o teste de ponta a ponta.
Leitura recomendada
- Melhores ferramentas de teste de software 2021 (QA Test Automation Tools)
- Principais diferenças entre o teste de caixa preta e o teste de caixa branca
- Download do e-book do Testing Primer
- Teste Funcional Vs Teste Não Funcional
- Programa do curso de teste de software - Plano de treinamento detalhado do curso online
- O que é Endurance Testing in Software Testing (exemplos)
- Teste da caixa preta: um tutorial aprofundado com exemplos e técnicas
- O que é teste de componente ou teste de módulo (aprender com exemplos)