top 25 functional testing interview questions
Perguntas e respostas mais comuns da entrevista de teste funcional:
Como o próprio nome define, o teste funcional é o processo de testar um aplicativo em relação às especificações do documento de requisitos.
O teste funcional pode ser executado manualmente ou por meio de automação, mas cada processo inclui o teste do aplicativo, fornecendo um conjunto de entradas e determinando ou verificando o resultado / saída comparando o resultado real com os resultados esperados.
O teste funcional tem várias fases que devem ser consideradas durante o teste. Neste artigo, veremos várias perguntas e respostas da entrevista que o ajudarão a se preparar bem.
Perguntas mais populares da entrevista de teste funcional
P # 1) O que você entende pelo termo 'teste funcional'?
Responda: Uma técnica de teste de caixa preta, em que a funcionalidade de um aplicativo é testada para gerar a saída desejada, fornecendo certa entrada, é chamada de 'teste funcional'.
A função do teste funcional não é apenas validar o comportamento do aplicativo de acordo com a especificação do documento de requisitos, mas também verificar se o aplicativo está pronto para ser lançado no ambiente ativo ou não.
Abaixo estão algumas técnicas de teste funcional que são comumente usadas:
- Teste de unidade
- Teste de fumaça
- Teste de integração
- Teste de sistema
- Testando usabilidade
- Teste de regressão
- Testes de aceitação do usuário
P # 2) Quais são as etapas importantes que são abordadas nos testes funcionais?
Responda: A seguir estão as etapas que devem ser abordadas como parte do teste funcional:
- Compreender a especificação do documento de Requisitos e esclarecer as dúvidas e consultas na forma de comentários de revisão.
- Escrever os casos de teste em relação à especificação do requisito, tendo em mente todos os cenários que devem ser considerados para todos os casos.
- Identificar as entradas de teste e solicitar os dados de teste necessários para executar os casos de teste, bem como para verificar a funcionalidade do aplicativo.
- Determine os resultados reais de acordo com os valores de entrada a serem testados.
- Execute os casos de teste que determinam se o comportamento do aplicativo é o esperado ou se ocorreu algum defeito.
- Compare o resultado real e o resultado calculado para descobrir o resultado real.
Q # 3) Explique a diferença entre o teste funcional e o teste não funcional.
Responda: A diferença entre o teste funcional e o teste não funcional pode ser explicada como abaixo:
Teste funcional | Teste Não Funcional |
---|---|
O teste funcional é executado para determinar o comportamento do sistema de acordo com os requisitos funcionais do cliente. | O teste não funcional é o processo para determinar o desempenho do sistema de acordo com as expectativas do cliente |
O teste funcional é executado primeiro com a ajuda das ferramentas de teste manual e de automação. | O teste não funcional é realizado após o teste funcional com as ferramentas eficazes necessárias. |
É fácil realizar o teste manual, pois os requisitos do cliente são a entrada no teste funcional. | É difícil realizar testes manuais, pois escalabilidade, confiabilidade, velocidade e outros parâmetros de desempenho são inseridos em testes não funcionais. |
O teste funcional é dos seguintes tipos: • Teste de Unidade • Teste de fumaça • Teste de Sanidade • Teste de integração • Testes de aceitação do usuário • Teste de regressão | O teste não funcional é dos seguintes tipos: • Teste de performance • Teste de carga, estresse, volume • Teste de segurança • Teste de compatibilidade |
P # 4) Como ‘Build’ é diferente de ‘Release’?
Resposta: Construir é um arquivo executável que se refere à parte de um aplicativo que é entregue a um testador para testar a funcionalidade implementada do aplicativo junto com algumas correções de bug. O build pode ser rejeitado pela equipe de teste se não passar na lista de verificação crítica que contém a funcionalidade principal do aplicativo.
Pode haver várias compilações no ciclo de teste de um aplicativo.
Lançamento refere-se ao aplicativo de software que não está mais em fase de teste e após a conclusão do teste e do desenvolvimento, o aplicativo é entregue ao cliente. Uma versão possui várias compilações associadas a ela.
P # 5) Explique o ciclo de Bug.
Responda: Bug é considerado um erro indesejado, falha, engano, etc. que ocorreu dentro do aplicativo e o impede de entregar a saída desejada. Quando qualquer defeito ou bug é encontrado em um aplicativo durante o teste, desde o registro de um defeito até sua resolução, um bug passa por um ciclo de vida definido conhecido como Ciclo de Vida do Bug.
A figura abaixo lhe dará uma ideia do ciclo de vida do Bug:
(imagem fonte )
Todo o processo ocorre conforme e quando um problema ou bug é encontrado. É relatado / registrado na ferramenta de rastreamento de bugs seguindo um formato considerável. Esses bugs são atribuídos ao desenvolvedor e seu status é definido como ‘Aberto’. O desenvolvedor agora pode revisar o bug, reproduzi-lo no final e começar a trabalhar nele.
Se o bug for corrigido, o desenvolvedor altera seu status para 'Corrigido' ou o status pode ser movido para 'preciso de mais informações', 'não corrige', 'não é possível reproduzir' etc., em outros casos. O QA então realiza a regressão, ou seja, verifica novamente os bugs com uma ação específica e responde de acordo.
Se os problemas / bug agora estiverem se comportando conforme o esperado, seu status será alterado para Verificado / Fechado, caso contrário, reabra.
P # 6) Liste alguns status de Bug junto com sua descrição.
webdriver selênio com pepino exemplo em eclipse
Responda: Listados abaixo estão alguns status de bug junto com suas descrições:
- Novo: Quando o defeito ou bug é registrado pela primeira vez, ele é chamado de Novo.
- Atribuído: Depois que o testador registra um bug, seu bug é revisado pelo líder do testador e, em seguida, é atribuído à equipe de desenvolvedor correspondente.
- Abrir: O testador registra um bug no estado aberto e permanece no estado aberto até que o desenvolvedor execute alguma tarefa nesse bug.
- Resolvido / corrigido: Quando um desenvolvedor resolve o bug, ou seja, agora o aplicativo está produzindo a saída desejada para um problema específico, o desenvolvedor altera seu status para Resolvido / Corrigido.
- Verificado / fechado: Quando um desenvolvedor altera o status para resolvido / corrigido, o testador agora testa o problema no final e, se for corrigido, ele altera o status do bug para ‘Verificado / Fechar’.
- Reabrir: Se um testador for capaz de reproduzir o bug novamente, ou seja, o bug ainda existe mesmo após a correção pelo desenvolvedor, seu status é marcado como Reabrir.
- Não é um bug / inválido: Um bug pode ser marcado como inválido ou não um bug pelo desenvolvedor quando o problema relatado está de acordo com a funcionalidade, mas é registrado devido a uma interpretação incorreta.
- Adiado: Normalmente, quando o bug é de prioridade mínima para o lançamento e se houver falta de tempo, nesse caso, esses bugs de prioridade mínima são adiados para o próximo lançamento.
- Não pode se reproduzir: Se o desenvolvedor não conseguir reproduzir o bug em seu final, siga as etapas conforme mencionado no problema.
P # 7) O que é conhecido como teste baseado em dados?
Responda: O teste baseado em dados é a metodologia em que uma série de scripts de teste contendo casos de teste são executados repetidamente usando fontes de dados como planilha do Excel, arquivo XML, arquivo CSV, banco de dados SQL para valores de entrada e a saída real é comparada com a esperada na verificação processar.
Por exemplo, um estúdio de teste é usado para testes orientados a dados.
Algumas vantagens dos testes baseados em dados são:
- Reutilização.
- Repetibilidade.
- Separação de dados de teste da lógica de teste.
- O número de casos de teste é reduzido.
Q # 8) Quais são os pontos importantes que devem ser considerados ao escrever casos de teste?
Responda: Escrever um caso de teste é considerado a atividade mais importante do processo de execução de teste, que requer habilidades de escrita, bem como conhecimento profundo do aplicativo para tornar os casos de teste eficazes e reutilizáveis.
Alguns pontos importantes que devem ser considerados ao escrever casos de teste incluem:
- Deve haver um entendimento claro dos requisitos do cliente antes de começar a escrever os casos de teste. Nada deve ser assumido e todas as dúvidas em relação aos requisitos devem ser esclarecidas.
- Cada requisito deve ser incluído na forma de casos de teste e nada deve ser deixado de fora. Normalmente a matriz de rastreabilidade é mantida para manter uma verificação em cada implementação de requisito e conclusão de teste.
- De acordo com as especificações do documento de requisitos, todos os requisitos funcionais e não funcionais, incluindo interface UI e compatibilidade, devem ser cobertos.
- Os casos de teste devem ser verificados de tempos em tempos para verificar se não há repetição ou redundância.
- A prioridade é um fator importante que deve ser definido para casos de teste durante a escrita. Essa prioridade ajuda o testador a testar o aplicativo primeiro com os casos de teste de alta prioridade que incluem funcionalidade básica, depois os casos de teste de prioridade média e depois os de baixa prioridade.
- Para um determinado lançamento, os casos de teste também podem ser desenvolvidos em Sprint para que o testador, assim como o desenvolvedor, possam analisar a qualidade do produto com base na execução do caso de teste.
- A estrutura dos casos de teste deve ser facilmente compreendida e deve estar em uma linguagem simples. Os valores de dados de entrada para casos de teste devem ser válidos, bem como em uma ampla faixa.
P # 9) O que é teste de automação?
Responda: O teste de automação é uma metodologia de teste em que uma ferramenta de automação é usada para executar o conjunto de casos de teste a fim de aumentar a cobertura do teste e também a velocidade de execução do teste. O teste de automação não requer nenhuma intervenção humana, pois executa testes pré-programados e é capaz de relatar e comparar resultados com execuções de teste anteriores.
Repetibilidade, facilidade de uso, precisão e maior consistência são algumas das vantagens dos testes de automação.
Algumas ferramentas de teste de automação estão listadas abaixo:
- Selênio
- Telúrio
- agua
- SABÃO
P # 10) Explique o termo Teste de Estresse e Teste de Carga.
Responda:
Teste de Estresse é uma forma de teste de desempenho em que o aplicativo é obrigado a passar por esforço ou estresse, ou seja, a execução do aplicativo acima do limite da quebra para determinar o ponto em que o aplicativo falha. Essa condição geralmente surge quando há muitos usuários e muitos dados.
O teste de estresse também verifica a recuperação do aplicativo quando a carga de trabalho é reduzida.
Teste de carga é uma forma de teste de desempenho em que o aplicativo é executado acima de vários níveis de carga para monitorar o desempenho máximo do servidor, tempo de resposta, rendimento do servidor, etc. Por meio do teste de carga, a estabilidade do processo, o desempenho e a integridade do aplicativo são determinados sob a carga do sistema simultânea .
P # 11) O que você entende por teste de volume?
Responda: O teste de volume é uma forma de teste de desempenho que determina os níveis de desempenho do rendimento do servidor e o tempo de resposta quando usuários simultâneos, bem como grande carga de dados do banco de dados, são colocados no sistema / aplicativo em teste.
Q # 12) Quais são as diferentes técnicas de teste usadas nos testes funcionais?
Responda: Existem duas técnicas de teste diferentes que são usadas no teste funcional.
quais são bons sites para assistir anime
Eles podem ser definidos como abaixo:
- Teste baseado em requisitos: Esta forma de teste funcional é realizada priorizando os requisitos com base em critérios de risco. Isso também garante que todos os caminhos de teste críticos foram incluídos no processo de teste.
- Teste baseado em processos de negócios: Essa forma de teste funcional é executada da perspectiva do processo de negócios. Os cenários incluem o conhecimento dos processos de negócios para a realização de testes.
P # 13) O que você entende por Teste Exploratório? Quando é realizado?
Responda: Teste exploratório significa testar ou explorar o aplicativo sem seguir nenhum cronograma ou procedimento. Durante a execução de testes exploratórios, os testadores não seguem nenhum padrão e usam seu pensamento pronto para uso e diversas ideias para ver como o aplicativo funciona.
Seguir esse processo cobre até mesmo a menor parte do aplicativo e ajuda a encontrar mais problemas / bugs do que no processo de teste de caso de teste normal.
O teste exploratório é geralmente realizado nos casos em que:
- Há um testador experiente na equipe de teste que pode usar sua experiência de teste para aplicar todos os melhores cenários possíveis.
- Todos os caminhos críticos foram cobertos e os principais casos de teste são preparados de acordo com as especificações de requisitos que foram executadas.
- Existe uma aplicação crítica e nenhum caso possível pode ser perdido em qualquer caso.
- Um novo testador entrou na equipe, explorar o aplicativo os ajudará a entender melhor, bem como eles seguirão suas próprias mentes durante a execução de qualquer cenário, em vez de seguir o caminho mencionado no documento de requisitos.
P # 14) Para qualquer aplicativo da Web, quais são os recursos de login possíveis que devem ser testados?
Responda: Listados abaixo estão os possíveis cenários que podem ser executados para testar totalmente o recurso de login de qualquer aplicativo:
- Verifique os campos de entrada, por exemplo, nome de usuário e senha com valores válidos e inválidos.
- Tente inserir um ID de e-mail válido com uma senha incorreta e também insira um e-mail inválido e uma senha válida. Verifique se a mensagem de erro adequada é exibida.
- Insira credenciais válidas e faça login no aplicativo. Feche e reabra o navegador para verificar se ainda está conectado.
- Entre no aplicativo após o login e navegue novamente de volta para a página de login para verificar se o usuário é solicitado novamente para efetuar login ou não.
- Faça login em um navegador e abra o aplicativo em outro navegador para verificar se você também está conectado a outro navegador ou não.
- Altere a senha após fazer o login no aplicativo e tente fazer o login com a senha antiga.
Existem alguns outros cenários possíveis que podem ser testados.
Q # 15) Explique o teste de acessibilidade e sua importância no cenário atual.
Responda: O teste de acessibilidade é uma forma de teste de usabilidade em que o teste é realizado para garantir que o aplicativo possa ser facilmente manipulado por pessoas com deficiência, como audição, daltonismo, baixa visibilidade, etc. No cenário de hoje, a web adquiriu o lugar principal em nossa vida em a forma de sites de comércio eletrônico, aprendizado eletrônico, pagamentos eletrônicos, etc.
Assim, para crescer melhor na vida, todos deveriam poder fazer parte da tecnologia, especialmente as pessoas com alguma deficiência.
Listados abaixo estão alguns tipos de software que ajudam e auxiliam pessoas com deficiência a usar a tecnologia:
- Software de reconhecimento de voz
- Software leitor de tela
- Software de ampliação de tela
- Teclado especial
P # 16) O que é teste Adhoc?
Responda: O teste adhoc, geralmente conhecido como teste aleatório, é uma forma de teste que não segue nenhum caso de teste ou requisito do aplicativo. O teste adhoc é basicamente uma atividade não planejada em que qualquer parte do aplicativo é verificada aleatoriamente para encontrar defeitos.
Nesses casos, os defeitos encontrados são muito difíceis de reproduzir, pois nenhum caso de teste planejado é seguido. O teste adhoc geralmente é realizado quando há um tempo limitado para realizar o teste elaborativo.
Q # 17) O que é particionamento de equivalência?
Responda: O particionamento de equivalência, também conhecido como particionamento de classe de equivalência, é uma forma de teste de caixa preta em que os dados de entrada são divididos em classes de dados. Esse processo é feito de forma a reduzir o número de casos de teste, mas ainda cobrindo o requisito máximo.
A técnica de particionamento de equivalência é aplicada onde os valores dos dados de entrada podem ser divididos em intervalos. O intervalo dos valores de entrada é definido de tal forma que apenas uma condição de cada partição de intervalo deve ser testada, assumindo que todas as outras condições da mesma partição se comportarão da mesma forma para o software.
Por exemplo: Para identificar a taxa de juros de acordo com o saldo da conta, podemos identificar a faixa de valor do saldo na conta que recebe uma taxa de juros diferente.
Q # 18) Explique a análise de valor limite.
Responda: O método de análise de valor limite verifica os valores limite das partições de classe de equivalência. A análise de valor de limite é basicamente uma técnica de teste que identifica os erros nos limites em vez de dentro dos valores de intervalo.
Por exemplo , Um campo de entrada pode permitir um mínimo de 8 caracteres e um máximo de 12 caracteres, então 8-12 é considerado o intervalo válido e 13 são considerados o intervalo inválido. Conseqüentemente, os casos de teste são gravados para um valor de partição válido, valor de limite exato e valor de partição inválido.
Q # 19) Explique a diferença entre Severidade e Prioridade.
Responda: Gravidade do defeito é definido pelo nível ou grau de impacto do defeito na aplicação em teste. Quanto maior a gravidade do defeito, maior é o impacto na aplicação.
A seguir estão as 4 classes nas quais a gravidade do defeito é categorizada:
- Crítico
- Principal
- Médio
- Baixo
Prioridade de defeito define a ordem na qual o defeito deve ser resolvido primeiro, ou seja, quanto maior a prioridade do defeito implica que o aplicativo está inutilizável ou travado em algum ponto e o defeito deve ser resolvido o mais rápido possível.
A seguir estão as 3 classes nas quais uma prioridade de defeito é definida:
- Alto
- Médio
- Baixo
Q # 20) Quando realizamos o teste de fumaça?
Responda: O teste de fumaça é executado no aplicativo após o recebimento da compilação. O testador normalmente testa o caminho crítico e não a funcionalidade em profundidade para ter certeza se o build deve ser aceito para testes adicionais ou rejeitado em caso de falha no aplicativo.
Uma lista de verificação de fumaça geralmente contém o caminho crítico do aplicativo sem o qual um aplicativo é bloqueado.
P # 21) O que você entende por teste de sanidade?
Responda: O teste de integridade é executado após o recebimento do build para verificar a nova funcionalidade / defeitos a serem corrigidos. Nesta forma de teste, o objetivo é verificar a funcionalidade aproximadamente conforme o esperado e determinar se o bug foi corrigido e também o efeito do bug corrigido no aplicativo em teste.
Não adianta aceitar a construção pelo testador e perder tempo se o teste de Sanity falhar.
Q # 22) O que você entende por Matriz de Rastreabilidade de Requisitos?
Responda: A Matriz de Rastreabilidade de Requisitos (RTM) é uma ferramenta para manter um controle da cobertura de requisitos durante o processo de teste.
Na RTM, todos os requisitos são categorizados como seu desenvolvimento no decorrer do sprint e seus respectivos ids (implementação de novo recurso / aprimoramento / problemas anteriores, etc.) são mantidos para manter um controle de que tudo mencionado no documento de requisitos foi implementado antes do lançamento de o produto.
O RTM é criado assim que o documento do requisito é recebido e é mantido até o lançamento do produto.
P # 23) Quais são os fatores a serem considerados no teste baseado em risco?
Responda: Por meio do teste baseado em risco de um projeto, não se trata apenas de entregar um projeto sem riscos, mas o principal objetivo do teste baseado em risco é alcançar o resultado do projeto realizando as melhores práticas de gerenciamento de risco.
Os principais fatores a serem considerados nos testes baseados em risco são os seguintes:
- Para identificar quando e como implementar o teste baseado em risco em um aplicativo apropriado.
- Identificar as medidas que atuam bem na localização e tratamento de riscos em áreas críticas da aplicação.
- Para atingir o resultado do projeto que equilibra o risco com a qualidade e o recurso do aplicativo.
Q # 24) Diferencie entre teste de regressão e reteste.
Responda: A diferença entre o teste de regressão e o reteste pode ser explicada da seguinte forma:
Teste de regressão | Testando novamente |
---|---|
O teste de regressão é a forma de teste realizada para garantir que a implementação de qualquer novo recurso ou correção não afete nenhuma outra parte ou funcionalidade do aplicativo. | O reteste é a forma de testar o aplicativo após a correção de defeitos para os casos de teste que falharam na última execução. |
Como parte do teste de regressão, novas mudanças no aplicativo não devem afetar as funcionalidades existentes. | Como parte do reteste, é feita a verificação de defeitos. |
Com base no requisito do projeto, o teste de regressão pode ser executado em paralelo com o reteste. | O novo teste é executado antes do teste de regressão devido à sua alta prioridade. |
Também conhecido como teste genérico e é feito para casos de teste aprovados. | Também conhecido como teste planejado e só é feito para casos de teste com falha. |
Como o teste manual pode ser demorado e caro, a automação pode ser feita para o teste de regressão. | A automação não pode ser feita para novo teste. |
Q # 25) Explique o teste de aceitação do usuário.
Responda: O teste de aceitação do usuário geralmente é realizado após o produto ser totalmente testado. Nessa forma de teste, os próprios usuários de software ou, digamos, cliente, usam o próprio aplicativo para se certificar de que tudo está funcionando conforme a necessidade e perfeitamente no cenário do mundo real.
UAT também é conhecido como teste de usuário final.
Conclusão
Por meio deste artigo, tentei explicar cada um dos tópicos dos Testes Funcionais, para que qualquer pessoa que esteja se preparando para a entrevista possa entender facilmente o tópico e se lembrar dele também.
Estas perguntas e respostas da entrevista de teste funcional irão guiá-lo para limpar qualquer entrevista com total confiança.
Desejamos a todos muito sucesso.
Espero que estas Perguntas e Respostas da Entrevista de Teste Funcional o ajudem em algum momento de sua carreira.
Leitura recomendada
- Teste Funcional Vs Teste Não Funcional
- 16 Novos recursos da ferramenta Micro Focus UFT (Unified Functional Testing) - QTP vs UFT
- 5 melhores ferramentas alternativas de teste funcional unificado (UFT) da HP
- Um guia de teste não funcional completo para iniciantes
- Um guia passo a passo para Jubula - a ferramenta de teste funcional automatizado de código aberto
- Teste funcional versus teste de desempenho: deve ser feito simultaneamente?
- Guia de teste funcional completo com seus tipos e exemplos
- Tutorial do Parrot QA: revisão da ferramenta de teste funcional em vários navegadores
- Spock para integração e teste funcional com selênio
- As diferenças entre teste de unidade, teste de integração e teste funcional
- 25 principais perguntas e respostas da entrevista de teste funcional
- 30 principais ferramentas de teste funcional em 2021