how perform backend testing
O que é teste de back-end e como realizá-lo?
Os aplicativos de software são complexos; há mais do que aquilo que os olhos veem.
A maioria esforços de teste de sistema vá até a GUI. Isso ocorre porque o teste valida se o software é 'adequado para uso' pelo usuário final ou não. Os usuários finais usam GUI e nós também; é por isso que é realmente importante que o software funcione bem nesta área.
Porém, o software também possui muitos outros elementos que não estão diretamente visíveis ou disponíveis para o usuário interagir diretamente. Isso não torna esses elementos menos importantes e eles também devem ser submetidos a testes completos.
A combinação de todos esses elementos de bom funcionamento torna um aplicativo de software totalmente formado. Podemos combinar tudo o que não vemos diretamente como ‘Back-end’.
Alguns dos elementos de teste de back-end são:
- Base de dados
- APIs
- Servidores
Dependendo da natureza da aplicação, um back-end pode incluir várias configurações de rede, protocolos de comunicação, etc. Mas, na maioria das vezes, existem três elementos.
Vamos agora ver o que está envolvido no teste de cada um desses componentes e como.
O que você aprenderá:
Teste de banco de dados de back-end
Mais comumente, quando o termo ‘Teste de back-end’ é usado, isso implica em teste de banco de dados.
O banco de dados é um elemento importante de qualquer aplicativo. Quando a GUI e o banco de dados interagem perfeitamente, seu aplicativo funciona bem. Se houver problemas, você terá resultados inconsistentes, ameaças à segurança e gargalos de desempenho.
Os bancos de dados geralmente são validados para:
- Propriedades ACID
- Operações CRUD
- Esquema
- Migração
- Conformidade com a regra de negócios
- Segurança
- atuação
Os sistemas avançados de manutenção de ETL e data warehouse também precisarão da execução de testes.
Para mais informações sobre esses tipos de teste , verifique os seguintes artigos que já estão em nosso site =>
- Tudo sobre teste de banco de dados - Por que, como e o que testar?
- Teste ETL vs. DB
- Teste ETL - Dicas, Técnicas, Processo e Desafios
Além do conteúdo nos links acima, o aspecto importante a reiterar é que os testes de banco de dados, ETL e data warehouse precisam de conhecimento aprimorado do SQL .
Muitas ferramentas são frequentemente empregadas por testadores para interagir e validar o comportamento do banco de dados por meio de consultas.
Vejamos algumas categorias dessas ferramentas de teste de banco de dados de back-end:
# 1) Interfaces que permitem conectar e executar suas consultas nos bancos de dados.
perguntas e respostas da entrevista datastage pdf
Alguns deles têm uma GUI e outros não.
- SAPO: Tenho certeza que todo mundo já ouviu falar disso. Suporta muitos bancos de dados e plataformas. Ele vem nas versões gratuita e comercial. Mais informações, recursos e a versão gratuita podem ser encontrados em mundo dos sapos
- pHpMyAdmin: Esta é uma excelente ferramenta de código aberto que permite executar consultas e interagir com seu banco de dados por meio de uma interface de usuário. Eu usei isso pessoalmente e minha equipe adora como a ferramenta é intuitiva. Precisamos de zero treinamento para ficarmos confortáveis. Eu recomendo fortemente esta ferramenta se você estiver procurando por um meio de conexão para seus bancos de dados MySQL e MariaDB phpmyadmin
- HeidiSQL: Muito semelhante ao pHpMyAdmin. Ele se conecta ao MySQL, bancos de dados Microsoft SQL e PostgreSQL. Código aberto. Encontre mais informações em Hheidisql
A lista de ferramentas é infinita, mas as opções acima são algumas das opções mais populares.
# 2) Carga do banco de dados e ferramentas de benchmarking de desempenho:
- HammerDB: É uma ferramenta de código aberto que muitos especialistas em banco de dados garantem. Eu pessoalmente não usei isso, mas suporta muitos bancos de dados. Pelas capturas de tela e pela aparência, parece uma ferramenta que vale a pena conferir. Mais detalhes em hammerdb
- SLOB: A ferramenta Silly Little Oracle Benchmark ajuda você a cronometrar e avaliar o estilo de E / S das transações de banco de dados. Ele pode ajudá-lo a entender os tempos de CPU, memória e processamento para transações em massa em seu sistema. Mais detalhes em Kevinclosson
- Swingbench : Esta é uma ferramenta muito semelhante ao HammerDB. Isso funciona em bancos de dados Oracle e é muito eficaz. Para entender a ferramenta e seus recursos, experimente este guia: Dominicgiles
Teste de API
A API estritamente falando não é o back-end, mas como estamos agrupando livremente tudo o que não é visível para o usuário final como o back-end, vamos falar sobre isso brevemente.
API significa Interface de Programa de Aplicativo e é basicamente aqui que reside toda a lógica de programação. Ele não tem uma IU, o que é um dos maiores desafios quando se trata de testá-lo. Por outro lado, uma vez que as APIs são geralmente criadas antes que a IU do aplicativo passe a existir, testar a API geralmente significa teste antecipado.
Mensagens e chamadas de envio / recebimento são usadas em vez de envio e recebimento direto de dados de entrada e saída.
A ferramenta mais popular usada para teste de API é SOAPUI.
- STH como um tutorial extenso sobre SoapUI em => 15+ Tutoriais SoapUI - Seu guia completo para SoapUI
- O HP UFT também pode ajudá-lo com isso => 16 novos recursos do HP UFT - QTP vs UFT
Todos os bancos de dados e os próprios aplicativos são instalados em servidores que mantêm esses sistemas em funcionamento.
Existem alguns testes que são executados aqui:
# 1) Instalação: Assim que a instalação estiver concluída, você pode ir para as respectivas pastas e certificar-se de que os arquivos / elementos foram para suas pastas de destino da maneira que deveriam. Agora, se você está se perguntando 'como vou saber para onde tudo precisa ir?', Pergunte às suas equipes de desenvolvimento ou implantação e elas podem confirmar isso para você.
Esta etapa pode não ser obrigatória, mas algumas empresas usam implantações manuais. Nesse caso, pode se tornar um importante teste de fumaça / sanidade degrau.
# 2) Logs: Existem registros mantidos para cada status de transação nos servidores. Isso nos dará insights sobre se o processo de ponta a ponta foi um sucesso.
Às vezes, o front end está enviando dados válidos e o banco de dados pode ser atualizado corretamente. E se essa operação estiver lançando uma exceção, causando um vazamento de memória ou algum tipo de mau funcionamento? São os logs do lado do servidor que revelam essas informações para você.
Não é uma regra, mas geralmente, a maioria dos servidores são sistemas baseados em UNIX. Portanto, para poder trabalhar com eles facilmente, você precisará de uma maneira de se conectar ao seu servidor.
PuTTy, sem dúvida, é a escolha mais popular para se conectar aos seus servidores. Massa é um produto de código aberto e não precisa de instalação. Tudo que você precisa fazer é fazer o download e usá-lo.
Os sistemas UNIX não têm uma interface gráfica de usuário e é isso que os torna perfeitos para serem servidores de aplicativos e bancos de dados. Eles são seguros, abstratos, mais rápidos e baratos. Existem muitos sabores de UNIX e devido à ausência de GUI, teremos que usar comandos para nos comunicarmos com o servidor. Todos nós temos nossos recursos essenciais para Comandos UNIX e este é meu: freeengineer
# 3) Desempenho e segurança do servidor:
Assim como qualquer outra parte do software, o servidor deve ser seguro e ágil.
por favor pergunta da entrevista sql para experientes
Existem muitas ferramentas disponíveis para verificar isso e para encontrar uma que funcione para você, verifique esta lista: Mais de 30 ferramentas de teste de aplicativos da Web mais populares
Finalmente,
Como você deve ter notado, este artigo sozinho não o ajudará a aprender o teste de back-end em sua totalidade. No entanto, ele indica recursos e referências que o ajudarão a dominá-lo. Portanto, marque-o para referência!
Além disso, para aqueles de nós que tendem a pensar que o teste funcional tem tudo a ver com GUI e front end, este artigo deve expor que não é o caso.
Esteja você procurando no banco de dados ou verificando no log o status de uma transação ou enviando uma mensagem de solicitação para um determinado serviço, você está validando a adequação do programa a ser usado.
Em outras palavras, é funcionalidade. O ‘onde você testa’ e ‘como você testa’ são diferentes.
Assim como um aplicativo precisa estar trabalhando de todos os lados para ter sucesso, nós, testadores, temos que entender e explorar as muitas facetas de um sistema de software para declará-lo pronto para ser usado.
Sobre o autor: Este artigo foi escrito pelo membro da equipe STH Swati S.
É a sua vez de compartilhar!
Conte-nos como nos saímos com este artigo. Existe algum outro tipo de teste de back-end que você faz? Quais ferramentas você usa? Que técnicas você achou úteis? Quaisquer desafios?
Seus comentários, perguntas, participação e leitores são preciosos para nós!
Leitura recomendada
- Melhores ferramentas de teste de software 2021 (QA Test Automation Tools)
- Teste Alfa e Teste Beta (um guia completo)
- Download do e-book do Testing Primer
- Teste ETL Tutorial de teste de data warehouse (um guia completo)
- Tipos de teste de software: diferentes tipos de teste com detalhes
- Como realizar testes de ETL usando a ferramenta Informatica PowerCenter
- Teste Funcional Vs Teste Não Funcional
- Perguntas e respostas da entrevista de teste de ETL