20 most popular testng interview questions
Perguntas e respostas mais frequentes da entrevista TestNG com exemplos para ajudar na sua preparação:
Uma lista das perguntas e respostas das entrevistas mais populares e mais frequentes no TestNG é explicada aqui neste artigo.
Exemplos simples são adicionados nos locais em questão para facilitar a compreensão do conceito. Tenho certeza de que essas perguntas o ajudariam a decifrar qualquer entrevista do TestNG com sucesso.
Perguntas frequentes da entrevista do TestNG
P # 1) O que é TestNG?
Responda: TestNG é o framework criado para a execução de testes de unidade em programa java pelos desenvolvedores.
O TestNG também é usado pelos testadores de software para executar com eficiência os scripts de teste automatizados criados no Selenium Webdriver. Sua forma completa é a estrutura “Testing New Generation”.
o que usar em vez de ccleaner
É inspirado em “JUnit”, que é outra estrutura para testes de unidade de programas Java. Além de todos os recursos do JUnit, TestNG tem seus novos recursos que o tornam mais poderoso.
P # 2) Como você instalará o TestNG no Eclipse?
Responda:
Siga as etapas abaixo para instalar o TestNG no Eclipse:
- Vá para Eclipse -> Clique em “Ajuda” -> Clique em “Instalar Novo Software”.
- Clique no botão “Adicionar”, digite o nome (de preferência TestNG) na caixa de texto “Próximo”. Entre na caixa de texto “Localização” e clique no botão de ação “OK”.
- Marque a caixa de seleção TestNG e clique no botão de ação “Avançar”. A instalação será iniciada e o Eclipse será reiniciado após a instalação.
- Clique com o botão direito do mouse no projeto no Eclipse -> Selecionar caminho de construção -> Configurar caminho de construção.
- Selecione a guia da biblioteca -> Clique no botão Adicionar biblioteca -> Selecionar TestNG-> Clique em Avançar -> Clique em Concluir e Aplicar e fechar.
P # 3) Como executar o script TestNG?
Responda:
Para executar o script TestNG:
Clique com o botão direito na classe no Eclipse, clique em “Executar como” e selecione “TestNG test”.
OU
Clique diretamente no botão Executar na barra de ferramentas do Eclipse.
Q # 4) Quais são as anotações usadas no TestNG?
Responda: Existem três seções de anotação no TestNG:
(i) Anotações de pré-condição: Essessão as anotações TestNG que são executadas antes do teste.
@BeforeSuite, @BeforeClass, @BeforeTest, @BeforeMethod são as anotações de pré-condição.
(ii) Anotação de teste: Esta é a anotação que só é mencionada antes do caso de teste (antes do método escrito para executar o caso de teste)
@Test é a anotação de teste
(iii) Anotação pós-condição: Estas são as anotações que são executadas após o caso de teste. (Depois que o método é escrito para executar o caso de teste)
@AfterSuite, @AfterClass, @AfterTest, @AfterMethod são as anotações pós-condição
Q # 5) Qual é a seqüência de execução das anotações no TestNG?
Responda: A Sequência de execução das anotações é a seguinte:
@BeforeSuite @BeforeTest @BeforeClass @BeforeMethod @Test @AfterMethod @AfterClass @Aftertest @AfterSuite
Q # 6) Quais são as vantagens do TestNG?
Responda: As vantagens do TestNG são as seguintes:
- É uma estrutura de código aberto, portanto, é fácil de configurar.
- Usando TestNG, podemos criar sistematicamente os casos de teste.
- Ele fornece muitas anotações que, por sua vez, tornam a criação de casos de teste fácil.
- Usando TestNG, as prioridades dos testes e a sequência de execução podem ser definidas.
- O agrupamento é possível usando TestNG.
- Ele gera relatórios HTML (o Selenium Webdriver não pode gerar os relatórios de teste sozinho, ajuda o SW a fazer isso).
- A parametrização de dados é possível usando TestNG.
- Além de todas as funcionalidades do JUnit, TestNG tem suas funcionalidades, o que por sua vez o torna mais poderoso.
P # 7) Como definir prioridades no TestNG?
Responda: Sempre há mais de um teste ou método na classe. Se não priorizarmos esses testes ou métodos, então os métodos são selecionados em ordem alfabética e executados durante a execução.
Se quisermos executar os testes na sequência desejada, precisamos definir a prioridade junto com a anotação @Test.
Isso pode ser feito da seguinte forma:
@Test (prioridade = 1), @Test (prioridade = 2)
Considere o seguinte exemplo:
@Test (priority=2) public void getText() { driver.findElement(By.id(“id”)).getText(); } @Test(priority=1) public void clickelement() { driver.findElement(By.id(“id”)).click(); }
No exemplo acima, clickelement () será executado primeiro, pois a prioridade é definida como 1.
E getText () será executado após clickelement (), pois sua prioridade é definida como 2.
Q # 8) Como compartilhar o relatório do projeto usando TestNG?
Responda: Existem algumas maneiras de fazer isso:
(eu) Após a execução da classe TestNG, existe uma guia chamada “Resultado da classe em execução“ que é gerada ao lado do console.
Podemos copiar e compartilhar.
(ii) Após a execução da classe TestNG,
- Clique com o botão direito no nome do projeto e atualize
- Clique na pasta “Test-output”
- Clique com o botão direito no arquivo “index.html” e selecione as propriedades
- Copie o link ao lado de “Local”
Podemos compartilhar este link para ver o relatório de teste HTML básico que é gerado pelo TestNG.
Este é o arquivo que é gerado em sua máquina automaticamente após a execução da classe usando TestNG.
P # 9) Como você definirá o agrupamento no TestNG?
Responda: Podemos definir o agrupamento no TestNG usando o atributo groups como mostrado abaixo:
@Test (grupos = ”título”)
P # 10) O que é uma dependência do TestNG?
Responda: Existem alguns métodos dos quais muitos métodos dependem.
Por exemplo, Se quisermos testar qualquer aplicativo, e se a página de login do aplicativo não estiver funcionando, não poderemos testar o restante dos cenários.
Portanto, LoginTest é o método do qual muitos testes dependem.
Portanto, vamos escrever o seguinte:
@Test(dependsOnMethods=”LoginTest”) Public void homePageLaunched() { }
O código acima mostra que o método homePageLaunched () é completamente dependente do método LoginTest ().
Se LoginTest () for passado, somente então o método homePageLaunched () será executado
Q # 11) O que é InvocationCount no TestNG?
Responda: Se quisermos executar um caso de teste “n” número de vezes, podemos usar o atributo invocationCount conforme mostrado no exemplo abaixo.
Exemplo:
@Test(invocationCount=8) Public void print() { }
No exemplo acima, o método print () será executado 8 vezes.
Q # 12) O que é timeOut no TestNG?
Responda: Se qualquer método no script levar muito tempo para ser executado, podemos encerrar esse método usando “tempo limite” no TestNG.
@Test (tempo limite = 5000)
Nesse caso, o método será encerrado em 5000 ms (5 segundos) e o caso de teste será marcado como “Falhou”.
P # 13) Como lidar com exceções no TestNG?
Responda: Se houver alguns métodos dos quais esperamos algumas exceções, podemos mencionar a exceção na anotação @Test para que o caso de teste não falhe.
Exemplo: Se for esperado que um método tenha a exceção “numberFormatException”, o caso de teste falhará por causa dessa exceção se nenhum bloco try-catch for especificado.
Mas podemos fazer isso no TestNG usando o atributo “expectedException” como segue.
@Test (expectedException = numberFormatException.class)
Então, o caso de teste será executado sem falhar.
P # 14) Quais são as afirmações comuns do TestNG?
Responda: As afirmações comuns do TestNG incluem:
(eu) Assert.assetEquals (String real, String esperada);
- Ele aceita duas strings.
- Se ambas as strings forem iguais, o caso de teste é executado com sucesso, caso contrário, o caso de teste falha.
(ii) Assert.assertEquals (String real, String esperada, String mensagem)
- Ele aceita duas strings.
- Se ambas as strings forem iguais, o caso de teste é executado com sucesso, caso contrário, o caso de teste falha.
- A mensagem é impressa se o caso de teste falhar.
(iii) Assert.assertEquals (booleano real, booleano esperado)
- Ele aceita dois valores booleanos.
- Se ambos os valores booleanos forem iguais, o caso de teste é executado com sucesso, caso contrário, o caso de teste falha.
(4) Assert.assertTrue ()
- Ele aceita um valor booleano.
- A asserção é aprovada se a condição for True, caso contrário, um erro de asserção será exibido.
(v) Assert.assertFalse ()
- Ele aceita um valor booleano.
- A asserção é aprovada se a condição for False, caso contrário, um erro de asserção será exibido.
(nós) Assert.assertTrue (, mensagem)
- Ele aceita um valor booleano.
- A asserção é aprovada se a condição for True, caso contrário, um erro de asserção será exibido com a mensagem mencionada.
(você está vindo) Assert.assertFalse (, mensagem)
- Ele aceita um valor booleano.
- A asserção é aprovada se a condição for False, caso contrário, um erro de asserção será exibido com a mensagem mencionada.
Q # 15) Como desabilitar um teste no TestNG?
Responda:
Para desabilitar um teste no TestNG, temos que usar o atributo “enabled” da seguinte forma:
@Test (ativado = ”falso”)
Q # 16) Quais são os tipos de afirmações no TestNG?
Responda: Para validar os resultados (passa / falha), temos que usar a asserção.
Existem dois tipos de declaração no TestNG:
(i) Afirmação:
Hard Assert é o assert normal que é usado para fazer validações na classe TestNG.
Temos que usar a classe Assert para afirmação definitiva da seguinte forma:
Assert.assertEquals (valor real, valor esperado);
Se a declaração definitiva falhar, nenhum código será executado após a declaração de declaração.
(ii) Soft Assert:
Se quisermos continuar a execução do teste mesmo depois que a instrução assert falhar, temos que usar a assert suave.
Para criar uma afirmação suave, temos que criar um objeto de uma classe “softAssert” da seguinte forma:
softAssert sassert = novo softAssert ();
sassert.assertAll ();
Portanto, agora, se o caso de teste falhar, a execução não será encerrada quando usarmos a declaração suave.
P # 17) Como passar o parâmetro no caso de teste através do arquivo testng.xml?
converter caractere para int c ++
Responda: Se tivermos uma classe na qual um método de login é definido, podemos passar os parâmetros de login para este método de login do arquivo testing.xml
Teremos que usar a anotação “@parameters” da seguinte forma:
@Parameters({'user_name','password'}) @Test public void loginapp() { driverget(“appname”); driver.findElement(By.id(“login”)).sendkeys(user_name); driver.findElement(By.id(“password”)).sendkeys(password); }
Agora, vá para o arquivo testng.xml e insira os parâmetros lá da seguinte maneira:
“suitename” > ”testname” > ”user_name” value= ”user1” /> ”password” value = ”pass1” /> ”passingparameters” />
Q # 18) Qual é a necessidade de criar um arquivo testng.xml?
Responda: Quando testamos um projeto usando o Selenium Webdriver, ele contém várias classes. Não podemos escolher essas classes uma a uma e colocá-las para automação. Portanto, precisamos criar um conjunto para que todas as classes sejam executadas em um único conjunto de testes.
Podemos conseguir isso criando um arquivo testing.xml.
Q # 19) Como criar um arquivo XML no TestNG?
Responda: Vá para a pasta src -> clique no arquivo -> insira o nome do arquivo (principalmente escrito como testing.xml)
Em seguida, clique em Concluir.
Temos um arquivo XML em branco. Aqui, temos que mencionar o nome do projeto e as classes a serem executadas junto com o nome do pacote conforme mostrado abaixo.
'Testing project' > 'testing feature 1' > 'packagename.name of class1' /> 'packagename.name of class1' /> 'packagename.name of class1' /> 'packagename.name of class1' />
Para executar este arquivo, temos que ir para testng.xml no gerenciador de pacotes, clicar com o botão direito e executar como -> conjunto TestNG
Q # 20) Como lançar uma exceção SKIP no TestNG?
Responda: Se quisermos PULAR qualquer teste usando teste, temos que usar a exceção SKIP em TestNG.
Está escrito da seguinte forma:
public void skipExc() { System.out.println('SKIP me'); throw new skipException(“Skipping skipExc”); } }
Desejamos tudo de bom para sua entrevista !!
Leitura recomendada
- Perguntas e respostas da entrevista
- Perguntas da entrevista de Spock com respostas (mais populares)
- Mais de 20 perguntas e respostas para entrevistas em .NET
- Perguntas e respostas da entrevista de teste de ETL
- As 20 perguntas e respostas mais importantes da entrevista de teste de API
- Mais de 30 perguntas e respostas populares para entrevistas com pepinos
- As 50 perguntas e respostas mais populares da entrevista do CCNA
- As 40 perguntas e respostas mais populares da entrevista J2EE que você deve ler