50 most popularly asked selenium interview questions
Neste tutorial, listamos os principais As 50 perguntas mais frequentes da Entrevista do Selenium, incluindo Selenium IDE, Selenium RC, Selenium Grid e Selenium WebDriver.
Uma nota rápida sobre esta série de artigos Selenium antes de passarmos para este tutorial:
Este é o último tutorial de nossa série de treinamento online Selenium de mais de 30 tutoriais abrangentes. Espero que todos tenham gostado desses tutoriais e tenham começado a aprender com eles. Se você é novo aqui, vá para este primeiro tutorial nesta série de treinamento.
******************
Além disso, verifique este “ O Melhor Curso Online de Treinamento Selenium ”Para aprender a ferramenta de automação Selenium com um especialista com mais de 10 anos de experiência em automação Selenium.
******************
As 50 principais perguntas e respostas da entrevista do Selenium
Aqui vamos nós.
P # 1) O que são testes de automação?
Teste de automação ou Automação de teste é um processo de automação do processo manual para testar o aplicativo / sistema em teste. O teste de automação envolve o uso de uma ferramenta de teste separada que permite criar scripts de teste que podem ser executados repetidamente e não requerem nenhuma intervenção manual.
P # 2) Quais são os benefícios dos testes de automação?
Os benefícios dos testes de automação são:
- Suporta execução de casos de teste repetidos
- Ajuda no teste de uma grande matriz de teste
- Permite execução paralela
- Incentiva a execução autônoma
- Melhora a precisão, reduzindo assim os erros gerados por humanos
- Economiza tempo e dinheiro
P # 3) Por que o Selenium deve ser selecionado como uma ferramenta de teste?
Selênio
- é um código livre e aberto
- tem uma grande base de usuários e comunidades de ajuda
- têm compatibilidade cruzada de navegador (Firefox, Chrome, Internet Explorer, Safari etc.)
- têm grande compatibilidade de plataforma (Windows, Mac OS, Linux etc.)
- suporta várias linguagens de programação (Java, C #, Ruby, Python, Pearl etc.)
- tem desenvolvimentos de repositório novos e regulares
- suporta testes distribuídos
P # 4) O que é selênio? Quais são os diferentes componentes do selênio?
Selenium é um dos conjuntos de testes automatizados mais populares. O Selenium foi projetado de forma a oferecer suporte e encorajar testes de automação de aspectos funcionais de aplicativos baseados na web e uma ampla variedade de navegadores e plataformas. Devido à sua existência na comunidade de código aberto, tornou-se uma das ferramentas mais aceitas entre os profissionais de teste.
software para rasgar dvd para pc
O Selenium não é apenas uma única ferramenta ou utilitário, mas um pacote de várias ferramentas de teste e, pelo mesmo motivo, é conhecido como Suite. Cada uma dessas ferramentas é projetada para atender a diferentes requisitos de teste e ambiente de teste.
O pacote da suíte constitui os seguintes conjuntos de ferramentas:
- Selenium Integrated Development Environment (IDE) - Selenium IDE é uma ferramenta de gravação e reprodução. Ele é distribuído como um plugin do Firefox.
- Selenium Remote Control (RC) - Selenium RC é um servidor que permite ao usuário criar scripts de teste na linguagem de programação desejada. Ele também permite a execução de scripts de teste em um amplo espectro de navegadores.
- Selenium WebDriver - O WebDriver é uma ferramenta totalmente diferente que tem várias vantagens sobre o Selenium RC. O WebDriver se comunica diretamente com o navegador da web e usa sua compatibilidade nativa para automatizar.
- Grade de selênio - Selenium Grid é usado para distribuir sua execução de teste em várias plataformas e ambientes simultaneamente.
P # 5) Quais são os tipos de teste que podem ser suportados pelo Selenium?
O Selenium suporta os seguintes tipos de teste:
- Teste funcional
- Teste de Regressão
Q # 6) Quais são as limitações do selênio?
A seguir estão as limitações do Selênio:
- Selenium oferece suporte a testes apenas de aplicativos baseados na web
- Aplicativos móveis não podem ser testados usando Selenium
- Leitores de captcha e código de barras não podem ser testados com Selenium
- Os relatórios só podem ser gerados usando ferramentas de terceiros como TestNG ou JUnit.
- Como o Selenium é uma ferramenta gratuita, não há suporte de fornecedor pronto, o usuário pode encontrar inúmeras comunidades de ajuda.
- O usuário deve possuir conhecimento prévio de linguagem de programação.
Q # 7) Qual é a diferença entre Selenium IDE, Selenium RC e WebDriver?
| Recurso | Selenium IDE | Selenium RC | WebDriver |
|---|---|---|---|
| Gerenciando alertas, navegações, menus suspensos | Selenium IDE não fornece ajuda explicitamente para lidar com alertas, navegações, menus suspensos | O Selenium RC não fornece ajuda explicitamente para lidar com alertas, navegações, menus suspensos. | O WebDriver oferece uma ampla gama de utilitários e classes que ajudam a lidar com alertas, navegações e menus suspensos de forma eficiente e eficaz. |
| Compatibilidade do navegador | Selenium IDE vem como um plugin do Firefox, portanto, suporta apenas Firefox | Selenium RC oferece suporte a uma variedade de versões do Mozilla Firefox, Google Chrome, Internet Explorer e Opera. | WebDriver oferece suporte a uma variedade de versões do Mozilla Firefox, Google Chrome, Internet Explorer e Opera. Também suporta HtmlUnitDriver, que é um navegador sem GUI ou sem cabeça. |
| Gravar e reproduzir | Selenium IDE suporta recurso de gravação e reprodução | Selenium RC não suporta o recurso de gravação e reprodução. | WebDriver não suporta o recurso de gravação e reprodução |
| Requisito do servidor | Selenium IDE não requer que nenhum servidor seja iniciado antes de executar os scripts de teste | O Selenium RC requer que o servidor seja iniciado antes de executar os scripts de teste. | WebDriver não requer que nenhum servidor seja iniciado antes de executar os scripts de teste |
| Arquitetura | Selenium IDE é uma estrutura baseada em Javascript | Selenium RC é um Framework baseado em JavaScript. | WebDriver usa a compatibilidade nativa do navegador para automação |
| Orientado a Objeto | Selenium IDE não é uma ferramenta orientada a objetos | Selenium RC é uma ferramenta semi-orientada a objetos. | WebDriver é uma ferramenta puramente orientada a objetos |
| Localizadores Dinâmicos (para localizar elementos da web em uma página da web) | Selenium IDE não suporta localizadores dinâmicos | Selenium RC não oferece suporte a localizadores dinâmicos. | WebDriver suporta localizadores dinâmicos |
| Teste WAP (iPhone / Android) | Selenium IDE não suporta teste de aplicativos iPhone / Andriod | O Selenium RC não oferece suporte a testes de aplicativos para iPhone / Android. | O WebDriver foi projetado de forma a oferecer suporte eficiente aos testes de aplicativos para iPhone / Android. A ferramenta vem com uma grande variedade de drivers para testes baseados em WAP. Por exemplo, AndroidDriver, iPhoneDriver |
| Suporte de ouvinte | Selenium IDE não suporta ouvintes | Selenium RC não oferece suporte a ouvintes. | WebDriver suporta a implementação de ouvintes |
| Velocidade | Selenium IDE é rápido, pois é conectado ao navegador da Web que inicia o teste. Assim, o IDE e o navegador se comunicam diretamente | O Selenium RC é mais lento que o WebDriver, pois não se comunica diretamente com o navegador; em vez disso, ele envia comandos selenês para o Selenium Core, que por sua vez se comunica com o navegador. | O WebDriver se comunica diretamente com os navegadores da web. Tornando assim muito mais rápido. |
P # 8) Quando devo usar o Selenium IDE?
Selenium IDE é a mais simples e fácil de todas as ferramentas do Pacote Selenium. Seu recurso de gravação e reprodução torna excepcionalmente fácil de aprender com o mínimo de conhecimento de qualquer linguagem de programação. Selenium IDE é uma ferramenta ideal para um usuário ingênuo.
Q # 9) O que é Selenese?
Selenese é a linguagem usada para escrever scripts de teste no Selenium IDE.
Q # 10) Quais são os diferentes tipos de localizadores no Selenium?
O localizador pode ser denominado como um endereço que identifica um elemento da web exclusivamente dentro da página da web. Assim, para identificar elementos da web com precisão e precisão, temos diferentes tipos de localizadores em Selenium :
- EU IA
- Nome da classe
- Nome
- TagName
- Texto do link
- PartialLinkText
- Xpath
- Seletor CSS
- JULGAMENTO
Q # 11) Qual é a diferença entre os comandos assert e verify?
Afirmar: O comando Assert verifica se a condição fornecida é verdadeira ou falsa. Digamos que afirmamos se um determinado elemento está presente na página da web ou não. Se a condição for verdadeira, o controle do programa executará a próxima etapa do teste, mas se a condição for falsa, a execução parará e nenhum outro teste será executado.
Verificar: O comando Verify também verifica se a condição fornecida é verdadeira ou falsa. Independentemente de a condição ser verdadeira ou falsa, a execução do programa não para, ou seja, qualquer falha durante a verificação não pararia a execução e todas as etapas do teste seriam executadas.
P # 12) O que é um XPath?
XPath é usado para localizar um elemento da web com base em seu caminho XML. XML significa Extensible Markup Language e é usado para armazenar, organizar e transportar dados arbitrários. Ele armazena dados em um par de valores-chave que é muito semelhante a tags HTML. Ambas sendo linguagens de marcação e, uma vez que se enquadram no mesmo guarda-chuva, XPath pode ser usado para localizar elementos HTML.
O elemento fundamental por trás da localização de elementos usando XPath é percorrer entre vários elementos em toda a página e, assim, permitir que um usuário encontre um elemento com a referência de outro elemento.
Q # 13) Qual é a diferença entre “/” e “//” no Xpath?
Barra Única “/” - Barra única é usada para criar o Xpath com o caminho absoluto, ou seja, o xpath seria criado para iniciar a seleção a partir do nó do documento / nó inicial.
Barra dupla “//” - Barra dupla é usada para criar o Xpath com o caminho relativo, ou seja, o xpath seria criado para iniciar a seleção de qualquer lugar dentro do documento.
P # 14) O que é a política de mesma origem e como pode ser tratada?
O problema da política de mesma origem não permite acessar o DOM de um documento de uma origem diferente da origem que estamos tentando acessar o documento.
A origem é uma combinação sequencial de esquema, host e porta do URL. Por exemplo, para um URL https://www.softwaretestinghelp.com/resources/, a origem é uma combinação de http, softwaretestinghelp.com, 80 correspondentemente.
Assim, o Selenium Core (Programa JavaScript) não pode acessar os elementos de uma origem diferente de onde foi lançado. Por exemplo, se eu iniciei o programa JavaScript em “https://www.softwaretestinghelp.com”, então seria capaz de acessar as páginas dentro do mesmo domínio, como “https://www.softwaretestinghelp.com/resources ”Ou“ https://www.softwaretestinghelp.com/istqb-free-updates/ ”. Os outros domínios como google.com, seleniumhq.org não estariam mais acessíveis.
Portanto, para lidar com a mesma política de origem, o controle remoto Selenium foi introduzido.
Q # 15) Quando devo usar Selenium Grid?
O Selenium Grid pode ser usado para executar scripts de teste iguais ou diferentes em várias plataformas e navegadores simultaneamente, de modo a obter execução de teste distribuída, testando em ambientes diferentes e economizando tempo de execução notavelmente.
Q # 16) O que queremos dizer com Selênio 1 e Selênio 2?
Selenium RC e WebDriver, em uma combinação, são popularmente conhecidos como Selenium 2. O Selenium RC sozinho também é conhecido como Selenium 1.
P # 17) Qual é a ferramenta Selenium mais recente?
WebDriver
P # 18) Como eu inicio o navegador usando o WebDriver?
A seguinte sintaxe pode ser usada para iniciar o navegador:
Driver WebDriver = Novo FirefoxDriver ();
Driver WebDriver = Novo ChromeDriver ();
Driver WebDriver = Novo InternetExplorerDriver ();
P # 19) Quais são os diferentes tipos de drivers disponíveis no WebDriver?
Os diferentes drivers disponíveis no WebDriver são:
- FirefoxDriver
- InternetExplorerDriver
- ChromeDriver
- SafariDriver
- OperaDriver
- AndroidDriver
- IPhoneDriver
- HtmlUnitDriver
P # 20) Quais são os diferentes tipos de espera disponíveis no WebDriver?
São dois tipos de espera disponíveis no WebDriver :
- Espera Implícita
- Espera explícita
Espera implícita: As esperas implícitas são usadas para fornecer um tempo de espera padrão (digamos 30 segundos) entre cada etapa / comando de teste consecutivo em todo o script de teste. Assim, a etapa de teste subsequente só seria executada quando os 30 segundos tivessem decorrido após a execução da etapa de teste / comando anterior.
Espera explícita: Esperas explícitas são usadas para interromper a execução até o momento em que uma determinada condição seja atendida ou o tempo máximo tenha decorrido. Ao contrário das esperas implícitas, as esperas explícitas são aplicadas apenas a uma instância específica.
Q # 21) Como digitar em uma caixa de texto usando Selenium?
O usuário pode usar sendKeys (“String a ser inserida”) para inserir a string na caixa de texto.
Sintaxe:
Nome de usuário WebElement = drv .findElement (By.id ( 'O email' ));
// inserindo o nome de usuário
username.sendKeys ( “Sth” );
Q # 22) Como você pode descobrir se um elemento é exibido na tela?
O WebDriver facilita o usuário com os seguintes métodos para verificar a visibilidade dos elementos da web. Esses elementos da web podem ser botões, caixas suspensas, caixas de seleção, botões de rádio, rótulos etc.
- é exibido()
- é selecionado()
- está ativado()
Sintaxe:
é exibido():
boleano buttonPresence = driver.findElement (By.id ( 'Acreditar' )).é exibido();
é selecionado():
boleano buttonSelected = driver.findElement (By.id ( 'Acreditar' )).é selecionado();
está ativado():
boleano searchIconEnabled = driver.findElement (By.id ( 'Gbqfb' )).está ativado();
Q # 23) Como podemos obter o texto de um elemento da web?
O comando Get é usado para recuperar o texto interno do elemento da web especificado. O comando não requer nenhum parâmetro, mas retorna um valor de string. É também um dos comandos amplamente utilizados para verificação de mensagens, rótulos, erros, etc. exibidos nas páginas da web.
Sintaxe:
String Text = driver.findElement (By.id (“Texto”)). GetText ();
P # 24) Como selecionar o valor em um menu suspenso?
O valor na lista suspensa pode ser selecionado usando a classe Select do WebDriver.
Sintaxe:
selectByValue:
Selecione selectByValue = Novo Selecione ( motorista .findElement (By.id ( “SelectID_One” )));
selectByValue.selectByValue ( “Greenvalue” );
selectByVisibleText:
Selecione selectByVisibleText = Novo Selecione ( motorista .findElement (By.id ( “SelectID_Two” )));
selectByVisibleText.selectByVisibleText ( 'Lima' );
selectByIndex:
Selecione selectByIndex = Novo Selecione ( motorista .findElement (By.id ( “SelectID_Three” )));
selectByIndex.selectByIndex (2);
P # 25) Quais são os diferentes tipos de comandos de navegação?
A seguir estão os comandos de navegação :
navegar (). voltar () - O comando acima não requer parâmetros e leva o usuário de volta à página anterior no histórico do navegador.
Código de amostra:
driver.navigate (). back ();
navegar (). avançar () - Este comando permite que o usuário navegue para a próxima página da web com referência ao histórico do navegador.
Código de amostra:
driver.navigate (). forward ();
navegar (). atualizar () - Este comando permite que o usuário atualize a página da web atual recarregando todos os elementos da web.
Código de amostra:
driver.navigate (). refresh ();
navegar para() - Este comando permite que o usuário inicie uma nova janela do navegador da web e navegue até o URL especificado.
Código de amostra:
driver.navigate (). to (“https://google.com”);
P # 26) Como clicar em um hiper link usando linkText?
motorista .findElement (By.linkText ( 'Google' )).clique();
O comando encontra o elemento usando o texto do link e, a seguir, clica nesse elemento e, assim, o usuário é redirecionado para a página correspondente.
O link mencionado acima também pode ser acessado usando o seguinte comando.
motorista .findElement (By.partialLinkText ( 'Gosma' )).clique();
O comando acima encontra o elemento com base na substring do link fornecido entre parênteses e, portanto, partialLinkText () encontra o elemento da web com a substring especificada e clica nele.
Q # 27) Como lidar com quadro no WebDriver ?
como remover o elemento do array em java com exemplo
Um acrônimo de quadro embutido como iframe é usado para inserir outro documento dentro do documento HTML atual ou simplesmente uma página da web em uma página da web, permitindo o aninhamento.
Selecione iframe por id
motorista .switchTo (). frame ( ' ID da moldura ' );
Localizando iframe usando tagName
driver.switchTo (). frame (driver.findElements (By.tagName (“iframe”). get (0));
Localizando iframe usando índice
quadro (índice)
driver.switchTo (). frame (0);
quadro (nome do quadro)
driver.switchTo (). frame (“nome do frame”);
frame (elemento WebElement)
Selecione a janela principal
driver.switchTo (). defaultContent ();
P # 28) Quando usamos findElement () e findElements ()?
findElement (): findElement () é usado para encontrar o primeiro elemento na página da web atual correspondente ao valor do localizador especificado. Observe que apenas o primeiro elemento correspondente seria obtido.
Sintaxe:
Elemento WebElement = motorista .findElements (By.xpath ( '// div (@ id = 'exemplo') // ul // li' ));
findElements (): findElements () é usado para encontrar todos os elementos na página da web atual correspondentes ao valor do localizador especificado. Observe que todos os elementos correspondentes seriam buscados e armazenados na lista de WebElements.
Sintaxe:
List elementList = motorista .findElements (By.xpath ( '// div (@ id = 'exemplo') // ul // li' ));
Q # 29) Como encontrar mais de um elemento da web na lista?
Às vezes, podemos encontrar elementos do mesmo tipo, como vários hiperlinks, imagens etc. organizados em uma lista ordenada ou não ordenada. Portanto, faz todo o sentido lidar com esses elementos por um único trecho de código e isso pode ser feito usando WebElement List.
Código de amostra
// Storing the list List elementList = driver.findElements(By.xpath('//div(@id='example')//ul//li')); // Fetching the size of the list int listSize = elementList.size(); for (int i=0; i Q # 30) Qual é a diferença entre o comando driver.close () e driver.quit?
fechar() : O método close () do WebDriver fecha a janela do navegador em que o usuário está trabalhando atualmente ou também podemos dizer a janela que está sendo acessada pelo WebDriver. O comando não requer nenhum parâmetro nem retorna nenhum valor.
Sair() : Ao contrário do método close (), o método quit () fecha todas as janelas que o programa abriu. Da mesma forma que o método close (), o comando não requer nenhum parâmetro nem retorna nenhum valor.
P # 31) O Selenium pode lidar com janelas pop-up?
Selenium é uma ferramenta de teste de automação que oferece suporte apenas a testes de aplicativos da web. Portanto, as janelas pop-up não podem ser tratadas com o Selenium.
P # 32) Como podemos lidar com o pop-up baseado na web?
WebDriver oferece aos usuários uma maneira muito eficiente de lidar com esses pop-ups usando a interface de alerta . Existem quatro métodos que usaríamos junto com a interface de Alerta.
- void despedir () - O método despedir () clica no botão “Cancelar” assim que a janela pop-up aparece.
- void accept () - O método accept () clica no botão “Ok” assim que a janela pop-up aparece.
- String getText () - O método getText () retorna o texto exibido na caixa de alerta.
- void sendKeys (String stringToSend) - O método sendKeys () insere o padrão de string especificado na caixa de alerta.
Sintaxe:
// aceitando alerta de javascript
Alert alert = driver.switchTo (). Alert ();
alert.accept ();
P # 33) Como podemos lidar com o pop-up baseado no Windows?
Selenium é uma ferramenta de teste de automação que suporta apenas testes de aplicativos da web, ou seja, não oferece suporte a testes de aplicativos baseados em Windows. No entanto, o selênio sozinho não pode ajudar a situação, mas junto com alguma intervenção de terceiros, este problema pode ser superado. Existem várias ferramentas de terceiros disponíveis para lidar com pop-ups baseados em janela junto com o selênio, como AutoIT, classe de robô, etc.
Q # 34) Como afirmar o título da página da web?
// verifique o título da página da web
assertTrue (“O título da janela está incorreto.”, driver.getTitle (). equals (“Título da página”));
P # 35) Como passar o mouse sobre um elemento da web usando WebDriver?
O WebDriver oferece uma ampla gama de utilitários de interação que o usuário pode explorar para automatizar eventos de mouse e teclado. A interface de ação é um utilitário que simula as interações de um único usuário.
Assim, no cenário a seguir, usamos a Interface de ação para passar o mouse em uma lista suspensa que abre uma lista de opções.
Código de amostra:
// Instantiating Action Interface Actions actions=new Actions(driver); // howering on the dropdown actions.moveToElement(driver.findElement(By.id('id of the dropdown'))).perform(); // Clicking on one of the items in the list options WebElement subLinkOption=driver.findElement(By.id('id of the sub link')); subLinkOption.click(); Q # 36) Como recuperar propriedades CSS de um elemento?
Os valores das propriedades css podem ser recuperados usando um método get ():
Sintaxe:
driver.findElement (By.id ( 'eu ia “)). GetCssValue ( “Nome do atributo css” );
driver.findElement (By.id ( 'eu ia “)). GetCssValue ( 'tamanho da fonte' );
P # 37) Como capturar a tela no WebDriver?
import org.junit.After; import org.junit.Before; import org.junit.Test; import java.io.File; import java.io.IOException; import org.apache.commons.io.FileUtils; import org.openqa.selenium.OutputType; import org.openqa.selenium.TakesScreenshot; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; public class CaptureScreenshot { WebDriver driver; @Before public void setUp() throws Exception { driver = new FirefoxDriver(); driver.get('https://google.com'); } @After public void tearDown() throws Exception { driver.quit(); } @Test public void test() throws IOException { // Code to capture the screenshot File scrFile = ((TakesScreenshot)driver).getScreenshotAs(OutputType.FILE); // Code to copy the screenshot in the desired location FileUtils.copyFile(scrFile, new File('C:\CaptureScreenshot\google.jpg')) } } Q # 38) O que é Junit?
Junit é uma estrutura de teste de unidade introduzida pelo Apache. Junit é baseado em Java.
P # 39) O que são anotações Junit?
A seguir estão as anotações JUnit:
- @Teste: A anotação permite que o sistema saiba que o método anotado como @Test é um método de teste. Pode haver vários métodos de teste em um único script de teste.
- @Antes: O método anotado como @Before permite que o sistema saiba que este método deve ser executado todas as vezes antes de cada um dos métodos de teste.
- @Depois de: O método anotado como @After permite ao sistema saber que este método deve ser executado todas as vezes após cada um dos métodos de teste.
- @Antes da aula: O método anotado como @BeforeClass permite ao sistema saber que este método deve ser executado uma vez antes de qualquer um dos métodos de teste.
- @Depois da aula: O método anotado como @AfterClass permite ao sistema saber que este método deve ser executado uma vez após qualquer um dos métodos de teste.
- @Ignorar: O método anotado como @Ignore permite ao sistema saber que este método não deve ser executado.
Q # 40) O que é TestNG e como ele é melhor do que Junit?
TestNG é uma estrutura avançada projetada de forma a aproveitar os benefícios dos desenvolvedores e testadores. Com o início das estruturas, JUnit ganhou enorme popularidade entre os aplicativos Java, desenvolvedores Java e testadores Java com um aumento notável na qualidade do código. Apesar de ser fácil de usar e direto, JUnit tem suas próprias limitações que dão origem à necessidade de trazer o TestNG para o cenário. TestNG é uma estrutura de código aberto distribuída sob a licença de software Apache e está disponível para download.
TestNG com WebDriver fornece um formato de resultado de teste eficiente e eficaz que pode, por sua vez, ser compartilhado com as partes interessadas para ter um vislumbre da saúde do produto / aplicativo, eliminando assim a desvantagem da incapacidade do WebDriver de gerar relatórios de teste. TestNG tem um mecanismo de tratamento de exceção embutido que permite que o programa seja executado sem terminar inesperadamente.
Existem várias vantagens que tornam o TestNG superior ao JUnit. Alguns deles são:
- Adicionadas anotações avançadas e fáceis
- Os padrões de execução podem definir
- Execução simultânea de scripts de teste
- As dependências do caso de teste podem ser definidas
Q # 41) Como definir a prioridade do caso de teste no TestNG?
Definindo prioridade em TestNG
Fragmento de código
package TestNG; import org.testng.annotations.*; public class SettingPriority { @Test(priority=0) public void method1() { } @Test(priority=1) public void method2() { } @Test(priority=2) public void method3() { } } Sequência de execução de teste:
- Método 1
- Método 2
- Método 3
Q # 42) O que é uma estrutura?
A estrutura é uma mistura construtiva de várias diretrizes, padrões de codificação, conceitos, processos, práticas, hierarquias de projeto, modularidade, mecanismo de relatório, injeções de dados de teste, etc. para teste de automação de pilar.
Q # 43) Quais são as vantagens da estrutura de automação?
A vantagem de Estrutura de automação de teste
- Reutilização do código
- Cobertura máxima
- Cenário de recuperação
- Manutenção de baixo custo
- Intervenção manual mínima
- Relatórios fáceis
Q # 44) Quais são os diferentes tipos de frameworks?
Abaixo estão os diferentes tipos de estruturas:
- Estrutura de teste baseada em módulo: A estrutura divide todo o “Aplicativo em teste” no número de módulos lógicos e isolados. Para cada módulo, criamos um script de teste separado e independente. Portanto, quando esses scripts de teste são reunidos, é criado um script de teste maior que representa mais de um módulo.
- Estrutura de teste de arquitetura de biblioteca: O fundamento básico por trás da estrutura é determinar as etapas comuns e agrupá-las em funções em uma biblioteca e chamar essas funções nos scripts de teste sempre que necessário.
- Data Driven Testing Framework: Data Driven Testing Framework ajuda o usuário a separar a lógica do script de teste e os dados de teste um do outro. Ele permite que o usuário armazene os dados de teste em um banco de dados externo. Os dados são armazenados convencionalmente em pares de “valor-chave”. Portanto, a chave pode ser usada para acessar e preencher os dados nos scripts de teste.
- Estrutura de teste orientado por palavras-chave: A estrutura de teste orientada por palavras-chave é uma extensão da Estrutura de teste orientada a dados no sentido de que ela não apenas separa os dados de teste dos scripts, mas também mantém um determinado conjunto de código pertencente ao script de teste em um arquivo de dados externo.
- Estrutura de teste híbrido: O Hybrid Testing Framework é uma combinação de mais de um frameworks acima mencionados. A melhor coisa sobre essa configuração é que ela aproveita os benefícios de todos os tipos de estruturas associadas.
- Estrutura de desenvolvimento orientado por comportamento: A estrutura do Behavior Driven Development permite a automação de validações funcionais em um formato facilmente legível e compreensível para analistas de negócios, desenvolvedores, testadores, etc.
P # 45) Como posso ler os dados de teste do Excels?
Os dados de teste podem ser lidos com eficiência do Excel usando JXL ou POI API. Veja o tutorial detalhado aqui .
Q # 46) Qual é a diferença entre POI e jar jxl?
# Jar JXL POI jar 1 JXL suporta o formato “.xls”, ou seja, formato baseado em binário. JXL não oferece suporte ao formato Excel 2007 e “.xlsx”, ou seja, formato baseado em XML POI jar suporta todos esses formatos dois A API JXL foi atualizada pela última vez no ano de 2009 O POI é atualizado e lançado regularmente 3 A documentação JXL não é tão abrangente quanto a do POI O POI tem uma documentação bem preparada e altamente abrangente 4 A API JXL não oferece suporte à formatação rich text POI API suporta formatação de rich text 5 A API JXL é mais rápida que a API POI POI API é mais lento do que JXL API
Q # 47) Qual é a diferença entre Selênio e QTP?
Recurso Selênio Profissional de teste rápido (QTP) Compatibilidade do navegador Selenium suporta quase todos os navegadores populares como Firefox, Chrome, Safari, Internet Explorer, Opera etc QTP é compatível com Internet Explorer, Firefox e Chrome. QTP suporta apenas o sistema operacional Windows Distribuição Selenium é distribuído como uma ferramenta de código aberto e está disponível gratuitamente QTP é distribuído como uma ferramenta licenciada e é comercializado Aplicação em Teste Selenium suporta teste de apenas aplicativos baseados na web QTP suporta testes de aplicativos baseados na web e aplicativos baseados em Windows Repositório de Objetos O repositório de objetos precisa ser criado como uma entidade separada QTP cria e mantém automaticamente o repositório de objetos Suporte de linguas Selenium oferece suporte a várias linguagens de programação como Java, C #, Ruby, Python, Perl etc. QTP suporta apenas VB Script Suporte do fornecedor Como o Selenium é uma ferramenta gratuita, o usuário não obteria o suporte do fornecedor para solucionar problemas Os usuários podem facilmente obter suporte do fornecedor em caso de qualquer problema
P # 48) O WebDriver pode testar aplicativos móveis?
WebDriver não pode testar aplicativos móveis. O WebDriver é uma ferramenta de teste baseada na web, portanto, os aplicativos nos navegadores móveis podem ser testados.
Q # 49) O captcha pode ser automatizado?
software para baixar vídeos de qualquer site
Não, o captcha e o leitor de código de barras não podem ser automatizados.
Q # 50) O que é repositório de objetos? Como podemos criar um repositório de objetos no Selenium?
Repositório de objetos é um termo usado para se referir à coleção de elementos da web pertencentes ao Application Under Test (AUT) junto com seus valores de localizador. Portanto, sempre que o elemento for necessário no script, o valor do localizador pode ser preenchido a partir do Repositório de objetos. O Repositório de objetos é usado para armazenar localizadores em um local centralizado, em vez de codificá-los dentro dos scripts.
No Selenium, os objetos podem ser armazenados em uma planilha do Excel que pode ser preenchida dentro do script sempre que necessário.
É tudo por agora.
Espero que neste artigo você encontre respostas para as perguntas mais frequentes das entrevistas sobre o Selenium e WebDriver. As respostas fornecidas aqui também são úteis para a compreensão dos princípios básicos do Selenium e dos tópicos avançados do WebDriver.
Você tem alguma pergunta da entrevista Selenium que não foi respondida aqui? Informe-nos nos comentários abaixo e tentaremos responder a todos.
=> Isso conclui não apenas este artigo, mas nossa série completa de treinamento Selenium. Verifique a lista de TODOS os 30+ tutoriais listados nesta página . Por favor, deixe-nos saber seus comentários e perguntas.
Leitura recomendada
- Perguntas e respostas da entrevista
- Perguntas da entrevista de Spock com respostas (mais populares)
- Perguntas e respostas da entrevista de teste de ETL
- Tutorial Cucumber Selenium: Cucumber Java Selenium WebDriver Integration
- Selenium FAQs
- Integração de Selenium com JMeter
- Introdução ao Selenium WebDriver - Selenium Tutorial # 8
- As 50 perguntas e respostas mais populares da entrevista do CCNA