39 top automation testing interview questions
Perguntas mais frequentes da entrevista de teste de automação para candidatos de nível iniciante e avançado:
A automação de teste desempenha um papel muito importante em todo o ciclo de vida do software. Na maioria das vezes, quando queremos nos preparar para uma entrevista de teste de automação, nos concentramos apenas em questões específicas da ferramenta.
No entanto, devemos também considerar o fato de que aprender e conhecer a ferramenta é apenas um meio e não o objetivo final.
Assim, sempre que estivermos nos preparando para uma entrevista com um testador de automação, devemos considerar “Automação” como um todo e focar na estrutura e nas etapas envolvidas.
Todos nós sabemos que o teste de software é uma parte muito importante do desenvolvimento de software. Mas, com o rápido crescimento das metodologias e ambientes de desenvolvimento de software, torna-se difícil testar manualmente tudo para um aplicativo dentro de um tempo limitado junto com as restrições de custo.
Assim, os testes de automação estão crescendo rapidamente no mercado para acelerar o ritmo de desenvolvimento. Este tutorial inclui as principais perguntas da entrevista sobre testes de automação. Tentei citar as questões curtas e rápidas que são muito específicas para a automação como um todo e não são específicas para nenhuma “ferramenta”.
39 principais perguntas da entrevista de teste de automação
Cobrimos questões básicas de automação de teste, bem como algumas questões avançadas para candidatos de nível intermediário a especialista com até 2 a 5 anos de experiência.
P # 1) O que é automação?
Responda: Automação é qualquer ação que pode reduzir o esforço humano.
P # 2) O que é teste de automação?
Responda: O processo de usar ferramentas de software ou scripts especiais para realizar tarefas de teste, como inserir dados, executar as etapas do teste e comparar os resultados, etc., é conhecido como teste de automação.
P # 3) O que todas as coisas você pode automatizar?
Responda:
- Conjunto de testes de regressão
- Conjunto de testes de fumaça / sanidade
- Criação de implantação
- Criação de dados de teste
- Automatização por trás da GUI, como teste de APIs e métodos.
P # 4) Quando o teste de automação é útil?
Responda: O teste de automação é útil nos seguintes cenários:
a) Teste de regressão: Em caso de correção de bug ou implementação de novo módulo, temos que nos certificar de que a funcionalidade já implementada ou inalterada não seja afetada. Nesse caso, acabamos executando o caso de teste de regressão várias vezes.
Por exemplo: Após cada solicitação de mudança ou correção de bug, após cada iteração no caso de abordagem de desenvolvimento incremental, etc.
b) Teste não funcional: Testando os aspectos não funcionais de um aplicativo.
Por exemplo, Os testes de carga ou desempenho, etc. são muito difíceis para humanos rastrear e analisar.
c) Cálculo complexo verificações ou cenários de teste que são propensos a erros humanos.
d) Execução repetida dos mesmos testes: Às vezes, temos que executar o mesmo conjunto de casos de teste para um conjunto diferente de dados ou após cada versão de compilação ou em vários hardwares, softwares ou combinação de ambos.
Automatizar os casos de teste nos cenários acima ajuda a atingir a velocidade dos testes e minimizar erros humanos.
P # 5) Como você identifica os casos de teste que são adequados para automação?
Responda: Identificar os casos de teste apropriados para automação é a etapa mais importante para a automação.
Q # 6) Você pode alcançar 100% de automação?
Responda: 100% de automação seria difícil de alcançar porque haveria muitos casos de teste de borda e alguns casos que são executados raramente. Automatizar esses casos que não são executados e que muitas vezes não agregam valor ao pacote automatizado.
P # 7) Como decidir a ferramenta que se deve usar para testes de automação em seus projetos?
Resposta: Para identificar a ferramenta de teste de automação em seu projeto:
para) Compreenda os requisitos do seu projeto completamente e identifique os cenários de teste que você deseja automatizar.
b) Pesquise a lista de ferramentas que oferecem suporte aos requisitos do seu projeto.
c) Identifique seu orçamento para a ferramenta de automação. Selecione as ferramentas dentro do seu orçamento.
d) Identifique se você já possui recursos qualificados para as ferramentas. Se você não tiver os recursos qualificados necessários, identifique o custo para treinar os recursos existentes ou contratar novos recursos.
é) Agora compare cada ferramenta para critérios-chave como:
- É fácil desenvolver e manter os scripts da ferramenta?
- Uma pessoa não técnica também pode executar os casos de teste com pouco treinamento?
- A ferramenta oferece suporte a diferentes tipos de plataformas, como web, celular, desktop, etc, com base nos requisitos do seu projeto?
- A ferramenta tem funcionalidade de relatório de teste? Se não, é facilmente configurável para a ferramenta?
- Como é a ferramenta de suporte para navegadores cruzados para aplicativos baseados na web?
- Quantos tipos de teste diferentes esta ferramenta suporta?
- Quantos idiomas a ferramenta suporta?
f) Depois de comparar as ferramentas, selecione a ferramenta que está dentro do seu orçamento e atende aos requisitos do seu projeto, e oferece mais vantagens com base nos critérios-chave mencionados acima.
Q # 8) Atualmente não tenho nenhuma automação em vigor no meu projeto, mas agora quero implementar a automação, quais seriam os meus passos?
Responda:
- Primeiro, identifique qual tipo de teste / casos de teste você deseja automatizar.
- Identifique a ferramenta
- Projete a estrutura
- Crie arquivos de utilitário e arquivos de ambiente.
- Inicie o script
- Identifique e trabalhe na elaboração de relatórios.
- Alocar tempo para aprimorar e manter os scripts.
As etapas necessárias para implementar o teste de automação em um projeto incluem:
- Compreenda as vantagens e desvantagens dos testes de automação e identifique os cenários de teste que são adequados para a automação.
- Selecione a ferramenta de automação mais adequada para automatizar os cenários identificados
- Encontre o especialista em ferramentas para ajudar na configuração da ferramenta e do ambiente necessário para executar os casos de teste usando a ferramenta.
- Treine a equipe para que possam escrever scripts na linguagem de programação que a ferramenta suporta.
- Crie a estrutura de teste ou identifique aquela já existente que atenda aos seus requisitos.
- Escreva um plano de execução para SO, navegadores, dispositivos móveis, etc.
- Escreva scripts de programação para casos de teste manuais para convertê-los em casos de teste automatizados.
- Relate o status do caso de teste usando o recurso de relatório da ferramenta.
- Mantenha os scripts para mudanças em andamento ou novos recursos.
P # 9) Como você decide qual ferramenta usar?
Responda: Concluindo qual ferramenta é mais adequada pois o projeto requer muito brainstorming e discussões.
P # 10) Depois de identificar a ferramenta, quais seriam seus próximos passos?
Responda: Assim que finalizarmos a ferramenta, nossa próxima etapa será projetar a estrutura.
Q # 11) O que é uma estrutura?
Responda: Uma estrutura é um conjunto da estrutura de todo o pacote de automação. É também uma diretriz, que se seguida pode resultar em uma estrutura de fácil manutenção e aprimoramento.
Essas diretrizes incluem:
- Padrões de codificação
- Manipulação dos dados de teste
- Manter e lidar com os elementos (repositório de objetos em QTP)
- Manipulação de arquivos de ambiente e arquivo de propriedades
- Relatório de dados
- Manuseio de logs
P # 12) Quais são os atributos de uma boa estrutura?
Resposta: As características incluem:
- Modular: A estrutura deve ser adaptável a mudanças. Os testadores devem ser capazes de modificar os scripts de acordo com o ambiente ou alteração das informações de login.
- Reutilizável: Os métodos ou utilitários comumente usados devem ser escritos em um arquivo comum que seja acessível a todos os scripts.
- Consistente: O conjunto deve ser escrito em um formato consistente, seguindo todas as práticas de codificação aceitas.
- Independente: Os scripts devem ser escritos de forma que sejam independentes uns dos outros. No caso de um teste falhar, ele não deve reter os casos de teste restantes (a menos que seja uma página de login)
- Histórico: É bom ter implementado o recurso de registro na estrutura. Isso ajudaria no caso de nossos scripts rodarem por mais horas (digamos no modo noturno), se o script falhar a qualquer momento, ter o arquivo de log nos ajudará a detectar a localização junto com o tipo de erro.
- Comunicando: É bom ter o recurso de relatório automaticamente incorporado à estrutura. Uma vez feito o script, podemos ter os resultados e relatórios enviados por e-mail.
- Integração: A estrutura de automação deve ser de fácil integração com outros aplicativos, como integração contínua ou acionamento de script automatizado assim que o build for implantado.
P # 13) Você pode viver sem uma estrutura?
Responda: Frameworks são diretrizes e não regras obrigatórias, então podemos dispensar um framework, mas se o criarmos e seguirmos, o aprimoramento e a manutenção seriam fáceis de implementar.
P # 14) Quais são os diferentes tipos de ferramenta de automação que você conhece?
Responda: Ferramenta de código aberto como Selenium, JMeter, etc.
Ferramentas pagas como QTP, Load Runner, Ranorex, RFT e Rational Robot.
P # 15) Qual é geralmente a estrutura de um framework?
Responda: Normalmente, a estrutura deve ter - (seria diferente de projeto para projeto)
- Uma pasta “src” (fonte) contendo os scripts de teste reais.
- Uma pasta “lib” (biblioteca) contendo todas as bibliotecas e métodos comuns.
- Uma pasta “class” contendo todos os arquivos da classe (no caso usando java).
- Uma pasta “log” contendo o (s) arquivo (s) de log.
- Um arquivo / pasta com todos os IDs de elementos da web.
- Um arquivo contendo o URL, o ambiente e as informações de login.
Q # 16) Onde você manterá informações como URL, login, senha?
Responda: Essas informações devem ser sempre mantidas em um arquivo separado.
P # 17) Por que você deseja manter esse tipo de informação em um arquivo separado e não diretamente no código?
Responda: URL, login e senhas são os tipos de campos usados com frequência e mudam de acordo com o ambiente e a autorização. No caso de embuti-lo em nosso código, temos que alterá-lo em cada arquivo que tenha sua referência.
No caso de existirem mais de 100 arquivos, fica muito difícil alterar todos os 100 arquivos e isso, por sua vez, pode levar a erros. Portanto, esse tipo de informação é mantida em um arquivo separado para que a atualização seja fácil.
P # 18) Quais são os diferentes tipos de frameworks?
Responda: Diferentes tipos de estruturas incluem:
- Estrutura baseada em palavras-chave
- Estrutura baseada em dados
- Estrutura Híbrida
- Scripting Linear
Q # 19) Você pode contar algumas boas práticas de codificação durante a automação?
Responda: Algumas das boas práticas de codificação incluem:
- Adicione comentários apropriados.
- Identifique os métodos reutilizáveis e grave-os em um arquivo separado.
- Siga as convenções de codificação específicas do idioma.
- Mantenha os dados de teste em um arquivo separado.
- Execute seus scripts regularmente.
Q # 20) Algum tipo de teste que você acha que não deveria ser automatizado?
Responda:
- Testes que raramente são executados.
- Teste exploratório
- Testando usabilidade
- Teste que é executado rapidamente quando feito manualmente.
Q # 21) Você acha que o teste pode ser feito apenas no nível da IU?
best python ide mac os x
Responda: Hoje, conforme estamos mudando para o modo Agile, o teste não se limita à camada de IU. O feedback inicial é fundamental para um projeto ágil. Se nos concentrarmos apenas na camada de IU, estaremos realmente esperando até que a IU seja desenvolvida e esteja disponível para teste.
Em vez disso, podemos testar antes mesmo que a IU seja realmente desenvolvida. Podemos testar diretamente as APIs ou os métodos usando ferramentas como Cucumber e FitNesse .
Dessa forma, estamos fornecendo feedback muito cedo e testando antes mesmo de a IU ser desenvolvida. Seguir essa abordagem nos ajudará a testar apenas o aspecto da GUI de pequenas mudanças cosméticas ou algumas validações na IU e ajudará os desenvolvedores, dando mais tempo para corrigir os bugs.
P # 22) Como você seleciona qual ferramenta de automação é mais adequada para você?
Responda: A seleção da ferramenta de automação depende de vários fatores como:
- O escopo do aplicativo que queremos automatizar.
- Sobrecarga de gerenciamento, como custo e orçamento.
- É hora de aprender e implementar a ferramenta.
- Tipo de suporte disponível para a ferramenta.
- Limitação da ferramenta
Q # 23) O que você acha que impede os testadores de fazerem automação? Existe uma maneira de superar isso?
Responda: O principal obstáculo para os testadores é aprender a programar / codificar quando desejam automatizar. Como os testadores não codificam, a adaptação à codificação é um pouco desafiadora para os testadores.
Podemos superá-lo:
- Colaborar com desenvolvedores ao automatizar.
- Sendo que a automação é responsabilidade de toda a equipe e não apenas dos testadores.
- Dedicando tempo e foco na automação.
- Obter suporte de gerenciamento adequado.
Você pode salvar essas perguntas da entrevista de teste de automação como um pdf e imprimir para leitura posterior.
P # 24) O que é uma estrutura de teste de automação?
Responda: Uma estrutura, em geral, é um conjunto de diretrizes. Um conjunto de diretrizes, premissas, conceitos e práticas de codificação para a criação de um ambiente de execução no qual os testes serão automatizados é conhecido como estrutura de teste de automação.
Uma estrutura de teste de automação é responsável por criar um equipamento de teste com um mecanismo para se conectar ao aplicativo em teste, obter a entrada de um arquivo, executar os casos de teste e gerar os relatórios para a execução do teste. Uma estrutura de teste de automação deve ser independente do aplicativo e deve ser fácil de usar, modificar ou estender.
P # 25) Quais são os módulos importantes de uma estrutura de teste de automação?
Responda: Módulos importantes de uma estrutura de teste de automação são:
- Ferramenta de asserção de teste: Essa ferramenta fornecerá declarações de assert para testar os valores esperados no aplicativo em teste. Por exemplo. TestNG, Junit, etc.
- Configuração de dados: Cada caso de teste precisa obter os dados do usuário do banco de dados ou de um arquivo ou embutidos no script de teste. O módulo de dados do Frameworks deve cuidar da entrada de dados para scripts de teste e as variáveis globais.
- Ferramenta de gerenciamento de compilação: A estrutura precisa ser construída e implementada para o uso de criação de scripts de teste.
- Ferramenta de integração contínua: Com o CICD (Integração Contínua e Desenvolvimento Contínuo) em vigor, a ferramenta de integração contínua é necessária para integrar e implantar as mudanças feitas no framework a cada iteração.
- Ferramenta de relatórios: Uma ferramenta de relatório é necessária para gerar um relatório legível depois que os casos de teste são executados para uma melhor visualização das etapas, resultados e falhas.
- Ferramenta de registro: A ferramenta de registro no framework ajuda na melhor depuração do erro e bugs.
P # 26) Explique algumas ferramentas de teste de automação.
Responda: Algumas das famosas ferramentas de teste de automação são explicadas abaixo:
(i) Selênio : Selenium é uma estrutura de teste para teste de automação de aplicativos da web. Ele oferece suporte a vários navegadores e é independente do sistema operacional. Selenium também oferece suporte a várias linguagens de programação como Java, C #, PHP, Ruby e Perl, etc.
Selênio é um conjunto de bibliotecas de código aberto que pode ser usado para desenvolver estruturas de teste adicionais ou scripts de teste para testar aplicativos baseados na web.
(ii) UFT : O Unified Functional Testing é uma ferramenta licenciada para testes funcionais. Ele fornece uma ampla gama de recursos como APIs, serviços da web, etc. e também oferece suporte a várias plataformas, como desktops, web e celular. Os scripts do UFT são escritos em linguagem de script visual basic.
(Ii) épocas : Appium é uma ferramenta de teste de aplicativos móveis de código aberto. É usado para automatizar testes em aplicativos móveis de plataforma cruzada, nativos, híbridos e baseados na web. Appium automatiza qualquer aplicativo móvel de qualquer idioma com acesso total a APIs e bancos de dados a partir do código de teste.
O Appium é baseado na arquitetura cliente-servidor e evoluiu a partir do selênio.
(iv) Pepino : Cucumber é uma ferramenta de desenvolvimento baseada em comportamento de código aberto. É usado para testes de automação de aplicativos baseados na web e suporta linguagens como ruby, java, scala, groovy, etc. Cucumber lê especificações executáveis escritas em texto simples e testa o aplicativo em teste para essas especificações.
Para que o pepino entenda os cenários em texto simples, temos que seguir algumas regras básicas de sintaxe conhecidas como Gherkin.
(v) TestComplete : TestComplete é uma ferramenta de teste automatizada de IU licenciada para testar o aplicativo em diferentes plataformas, como desktops, web, móvel, etc. Ele fornece flexibilidade para gravar um caso de teste em um navegador e executá-lo em vários navegadores e, portanto, oferece suporte a testes de navegadores cruzados.
TestComplete possui algoritmo de reconhecimento de objeto embutido que identifica exclusivamente um objeto e o armazena no repositório.
P # 27) Quais são os diferentes tipos de técnicas de framework de teste?
Responda: Existem quatro tipos de técnicas de estrutura de teste de automação.
Eles estão:
(i) Estrutura de teste modular:
Essa estrutura é construída sobre o conceito de abstração. Nessa estrutura, o testador cria scripts para cada módulo do aplicativo em teste individualmente e, em seguida, esses scripts são combinados na ordem hierárquica para criar grandes casos de teste.
Ele cria uma camada de abstração entre os módulos, portanto, quaisquer modificações nos scripts de teste para um módulo não afetam os outros módulos.
Vantagens desta estrutura:
- Manutenção e escalabilidade mais fáceis de casos de teste.
- Criar casos de teste usando módulos já com script é mais fácil e rápido.
Desvantagens:
- Os casos de teste têm dados embutidos neles. Portanto, executar o mesmo script de teste com dados diferentes é uma grande mudança no nível do script.
(ii) Estrutura de teste orientado a dados:
Na estrutura de teste orientado a dados, os dados de entrada e os dados de saída esperados correspondentes aos dados de entrada são armazenados em um arquivo ou banco de dados e o script automatizado executa o mesmo conjunto de etapas de teste para vários conjuntos de dados. Com esta estrutura, podemos executar vários casos de teste onde apenas os dados de entrada diferem e as etapas de execução são as mesmas.
Vantagens:
- Reduz o número de scripts de teste que precisam ser executados. Executamos o mesmo script várias vezes com dados diferentes.
- Menos codificação para testes de automação.
- Maior flexibilidade para manter e corrigir os bugs ou aprimorar a funcionalidade.
- Os dados de teste podem ser criados antes mesmo que o sistema automatizado para teste esteja pronto.
Desvantagens:
- Apenas casos de teste semelhantes com o mesmo conjunto de etapas de execução podem ser combinados para vários conjuntos de dados. Os diferentes conjuntos de etapas de execução requerem um caso de teste diferente.
(iii) Estrutura de teste orientado por palavras-chave:
É uma estrutura de teste independente de aplicativo que usa tabelas de dados e palavras-chave autoexplicativas. Palavras-chave explicam as ações a serem realizadas no aplicativo em teste e a tabela de dados fornece os dados de entrada e saída esperados.
O teste baseado em palavras-chave é um incremento do teste baseado em dados.
Vantagens:
- Menos codificação e o mesmo script podem ser usados para vários conjuntos de dados.
- Experiência em automação não é necessária para criar um caso de teste usando as palavras-chave já existentes para ações.
- As mesmas palavras-chave podem ser usadas em vários casos de teste.
Desvantagens:
- Essa estrutura é mais complicada, pois precisa cuidar das ações de palavras-chave e também da entrada de dados.
- Os casos de teste ficam mais longos e complexos, afetando, assim, a manutenção dos mesmos.
(iv) Estrutura de teste híbrido:
Esta estrutura é uma combinação de todas as estruturas de teste mencionadas acima (Modular, Orientado por Dados e Orientado por Palavras-chave).
Nesta estrutura, os casos de teste são desenvolvidos a partir de scripts modulares combinando-os na estrutura de teste modular. Cada um dos casos de teste usa um script de driver que usa um arquivo de dados como na estrutura baseada em dados e um arquivo de ação baseado em palavras-chave.
Vantagens:
- Modular e fácil de manter.
- Menos codificação pode cuidar de mais casos de teste.
- Um caso de teste pode ser executado com vários conjuntos de dados.
Desvantagens:
- Complexo de ler, manter e melhorar.
P # 28) Quando você prefere o teste manual ao invés do teste de automação?
Responda: Preferimos o teste manual ao invés do teste de automação nos seguintes casos:
- O projeto é de curto prazo e a escrita de scripts será demorada e cara em comparação com o teste manual.
- É necessária flexibilidade. Os casos de teste automatizados são programados e executados em uma forma específica de configurações.
- O teste de usabilidade precisa ser executado.
- Aplicativos / módulo são desenvolvidos recentemente e não possuem casos de teste anteriores.
- É necessário realizar testes ad-hoc ou exploratórios.
P # 29) Os testes de automação na metodologia ágil são úteis ou não?
Responda: O teste de automação é útil para testes de regressão, fumaça ou sanidade. Todos esses tipos de teste no modelo tradicional em cascata acontecem no final do ciclo e, às vezes, se não houver muitos aprimoramentos no aplicativo, podemos nem mesmo ter que fazer teste de regressão .
Considerando que, em metodologia ágil , cada iteração requer a execução do caso de teste de regressão conforme algumas novas funcionalidades são adicionadas.
Além disso, o próprio pacote de regressão continua crescendo após cada sprint, pois os casos de teste funcional do módulo de sprint atual precisam ser adicionados ao pacote de regressão para o próximo sprint.
Assim, o teste de automação na metodologia ágil é muito útil e ajuda a atingir a cobertura máxima de teste em menos tempo do sprint.
Q # 30) Liste algumas vantagens e desvantagens dos testes de automação.
Responda:
Vantagens:
- Menos recursos humanos
- Reutilização
- Mais cobertura de teste em menos tempo
- Confiabilidade
- Execução paralela de casos de teste
- Rápido
Desvantagens:
como abrir arquivo .bin
- O tempo de desenvolvimento e manutenção é mais.
- Custo da ferramenta
- Recursos qualificados são necessários.
- Configuração de ambiente
- A depuração do Script de Teste é um problema.
Q # 31) Liste algumas vantagens e desvantagens do teste manual.
Responda:
Vantagens:
- Nenhuma configuração de ambiente necessária.
- Conhecimento de programação não é necessário.
- Recomendado para requisitos que mudam dinamicamente.
- Permitir que o poder de observação humana detecte mais bugs.
- O custo é menor para projetos de curto prazo.
- Flexibilidade
Desvantagens:
- Difícil de realizar cálculos complexos.
- Reutilização
- Demorando
- Alto risco de erros humanos ou equívocos.
- Mais recursos humanos são necessários.
P # 32) Podemos fazer testes de automação sem uma estrutura? Se sim, então por que precisamos de uma estrutura?
Responda: Sim, podemos realizar testes de automação mesmo sem usar uma estrutura. Podemos apenas entender a ferramenta que estamos usando para automação e programar as etapas na linguagem de programação que as ferramentas suportam.
Se automatizarmos os casos de teste sem uma estrutura, não haverá consistência nos scripts de programação dos casos de teste.
Uma estrutura é necessária para fornecer um conjunto de diretrizes que todos devem seguir para manter a legibilidade, a reutilização e a consistência nos scripts de teste. Uma estrutura também fornece um terreno comum para a funcionalidade de relatório e registro.
P # 33) Como você automatizará os casos de teste de funcionalidade de “login” básico para um aplicativo?
Responda: Supondo que a ferramenta de automação e a estrutura já estejam no lugar do ambiente de teste.
Para testar a funcionalidade básica de “Login”:
- Entenda os requisitos do projeto : A funcionalidade de login terá uma caixa de texto de nome de usuário, uma caixa de texto de senha e um botão de login.
- Identifique os cenários de teste: Para a funcionalidade de login, os cenários de teste possíveis são:
- Nome de usuário e senha em branco
- Nome de usuário e senha inválidos
- Um nome de usuário válido e uma senha inválida
- Nome de usuário e senha válidos
- Prepare um Arquivo de entrada de dados com os dados correspondentes a cada cenário.
- Lance a ferramenta do programa.
- Identifique o campo de nome de usuário, o campo de senha e o botão de login.
- Para cada cenário de teste, obtenha os dados do arquivo de dados e insira nos campos correspondentes. Clique no programa no botão de login após inserir os dados.
- Validar a mensagem de erro para cenários negativos e a mensagem de sucesso para cenários positivos no script de teste com a ajuda de asserções.
- Corre o conjunto de testes e gerar o relatório.
P # 34) O teste de automação é um teste de caixa preta ou teste de caixa branca?
Responda: O teste de automação é principalmente um teste de caixa preta já que apenas programamos as etapas que um testador manual executa para o aplicativo em teste, sem conhecer o design de baixo nível ou o código do aplicativo.
Às vezes, os scripts de teste automatizados precisam de acesso aos detalhes do banco de dados que são usados no aplicativo em teste ou a mais alguns detalhes de codificação e, portanto, podem ser um tipo de teste de caixa branca.
Portanto, o teste automatizado pode ser do tipo caixa preta ou branca, dependendo dos cenários em que a automação é realizada.
P # 35) Quantos casos de teste você automatizou por dia?
Responda: Bem, o número depende da complexidade dos casos de teste. Quando a complexidade foi limitada, fui capaz de automatizar de 5 a 6 casos de teste por dia. Às vezes, eu era capaz de automatizar apenas um caso de teste para cenários complexos.
Também dividi meus casos de teste em diferentes componentes como, tomar a entrada, fazer o cálculo, verificar a saída, etc. no caso de cenários muito complexos e levarem 2 ou mais dias.
P # 36) Quais fatores determinam a eficácia dos testes de automação?
Resposta: Alguns dos fatores que determinam a eficácia dos testes de automação são:
- Tempo economizado com a execução de scripts sobre a execução manual de casos de teste.
- Defeitos encontrados
- Cobertura de teste ou cobertura de código
- Tempo de manutenção ou tempo de desenvolvimento
- Estabilidade dos scripts
- Reutilização de teste
- Qualidade do software em teste
P # 37) Quais casos de teste podem ser automatizados?
Responda: Os tipos de casos de teste que podem ser automatizados são:
(i) Casos de teste de fumaça: O teste de fumaça também é conhecido como teste de verificação de compilação. Os casos de teste do Smoke são executados sempre que uma nova compilação é lançada para verificar a integridade da compilação para aceitação para realizar o teste.
(ii) Casos de teste de regressão : O teste de regressão é o teste para garantir que os módulos desenvolvidos anteriormente estão funcionando conforme o esperado depois que um novo módulo é adicionado ou um bug é corrigido.
Os casos de teste de regressão são muito cruciais na abordagem de software incremental, onde uma nova funcionalidade é adicionada a cada fase de incremento. Nesse caso, o teste de regressão é executado em cada fase incremental.
(iii) Casos de teste de cálculo complexo: Os casos de teste que envolvem alguns cálculos complexos para verificar um campo para um aplicativo se enquadram nesta categoria. Resultados de cálculos complexos estão mais sujeitos a erros humanos, portanto, quando automatizados, eles fornecem resultados precisos.
(iv) Casos de teste baseados em dados: Os casos de teste que têm o mesmo conjunto de etapas e são executados várias vezes com a alteração dos dados são conhecidos como casos de teste orientados a dados. O teste automatizado para esses tipos de casos de teste é rápido e econômico.
(v) Casos de teste não funcionais : Casos de teste como testes de carga e testes de desempenho requerem um ambiente simulado com vários usuários e várias combinações de hardware ou software.
Configurar vários ambientes manualmente é impossível para cada combinação ou número de usuários. Ferramentas automatizadas podem criar facilmente este ambiente para realizar testes não funcionais facilmente.
P # 38) Quais são as fases do ciclo de vida dos testes de automação?
Resposta: As fases do ciclo de vida do teste de automação incluem:
- A decisão de realizar testes de automação.
- Identifique e aprenda sobre a ferramenta de automação.
- Determine o escopo do teste de automação.
- Projete e desenvolva um conjunto de testes.
- Execução de Teste
- Manutenção de scripts de teste.
P # 39) O que é um script de teste automatizado?
Responda: Um script de teste automatizado é um programa curto escrito em uma linguagem de programação para executar um conjunto de instruções em um aplicativo em teste para verificar se o aplicativo está de acordo com os requisitos.
Este programa, quando executado, fornece os resultados do teste como aprovado ou reprovado, dependendo se o aplicativo está de acordo com as expectativas.
Conclusão
Estas são as principais questões que independem da ferramenta de automação ou linguagem de programação. As entrevistas de teste de automação também incluem perguntas específicas sobre ferramentas e linguagens de programação, dependendo da ferramenta com a qual você trabalhou.
A maioria das perguntas da entrevista de automação de teste é centrada na estrutura que você desenvolve, portanto, é recomendável que você crie e entenda sua estrutura de teste completamente. Quando estou fazendo uma entrevista e o candidato responde à minha pergunta sobre o framework, também prefiro fazer uma pergunta específica ao idioma (core java no meu caso).
As questões começam com o básico de java para escrever a lógica de alguns cenários básicos como:
- Como você extrairia um conjunto de texto de uma determinada linha?
- Como você extrairia o URL?
- Em qualquer página da web, em qualquer quadro, o número de links e seu conteúdo mudam dinamicamente, como você lidaria com isso?
- Como você lida com imagens e objetos em flash?
- Como você encontra uma palavra em uma linha?
Respostas para tudo isso perguntas da entrevista de automação de teste são muito específicos para a ferramenta / linguagem que você está usando para automatizar. Portanto, antes de ir para a entrevista, aprimore suas habilidades de programação.
Caso você não tenha tido a chance de criar sua estrutura e outra pessoa a tenha criado, reserve um tempo para entendê-la completamente antes de se sentar para a entrevista.
Algumas dicas para entrevistas de teste de automação seriam:
- Conheça bem a sua ferramenta.
- Aprenda as técnicas do localizador usadas por sua ferramenta.
- Pratique a programação usando a linguagem que você usa para testes de automação.
- Aprenda sua estrutura e seus componentes.
- É sempre vantajoso se você esteve envolvido no desenvolvimento de sua estrutura. Portanto, seja minucioso com os módulos da estrutura em que você trabalhou.
Espero que essas perguntas sejam úteis para você se preparar para uma entrevista de automação de teste.
Leitura recomendada
- Perguntas e respostas da entrevista
- Perguntas e respostas da entrevista de teste de ETL
- Algumas perguntas interessantes da entrevista de teste de software
- 25 melhores perguntas e respostas da entrevista para testes ágeis
- As 20 perguntas e respostas mais importantes da entrevista de teste de API
- Perguntas e respostas de teste de software (parte 1)
- Melhores ferramentas de teste de software 2021 (QA Test Automation Tools)
- As 30 principais perguntas e respostas da entrevista de teste de segurança