integration jenkins with selenium webdriver
Guia passo a passo para instalar e configurar o Jenkins com Selenium:
Nosso tutorial anterior na série DevOps explicou sobre Funções Ansible e integração com Jenkins no DevOps .
Jenkins é uma ferramenta de código aberto escrita em Java. Ele fornece entrega contínua e serviço de integração contínua para desenvolvimento de software. Ele automatiza sua tarefa manual do processo de implantação de código da caixa de desenvolvimento - QA - Estágio - Produção.
Leitura sugerida => Série de tutoriais de treinamento de DevOps preciso
Jenkins suporta muitos plug-ins que você pode integrar, como Git, SVN, pipeline de construção e muitos mais.
A funcionalidade básica do Jenkins é executar uma lista predefinida de etapas com base no tempo e alguns eventos.
Por exemplo, quando você quiser basear a execução no tempo, você pode executar um trabalho a cada 20 minutos ou se quiser basear em um evento, você pode fazer isso após um novo commit em um repositório Git.
Neste artigo, cobrimos os pontos abaixo:
- Uso do Jenkins e integração com selênio
- Criar um arquivo em lote e usá-lo Jenkins
- Agendamento de trabalho do Jenkins e notificação de e-mail adicionada
- E executando o script selenium a partir da linha de comando
As vantagens de usar Jenkins são:
- É uma plataforma cruzada e pode ser usado em ambientes Windows, Linux, Mac OS e Solaris
- É uma ferramenta gratuita e de código aberto
- Amplamente utilizado e bem documentado
- Integração com uma ampla variedade de ferramentas e tecnologias
Além do Jenkins, temos muito mais ferramentas no mercado, como:
- Formigueiro
- Bambu
- Cruise Control
- Team City e muitos mais.
O que você aprenderá:
- Uso do Jenkins e integração com selênio
- Criar um arquivo em lote e usá-lo no Jenkins
- Agendamento de trabalho do Jenkins
- Como adicionar notificações por e-mail
- Executando o script Selenium por meio da linha de comando
- Conclusão
- Leitura recomendada
Uso do Jenkins e integração com selênio
Siga o procedimento passo a passo abaixo para usar Jenkins com Selenium
Passo 1:
Baixe o Jenkins do site oficial do Jenkins - Jenkins . Baixe o arquivo .war mais recente. O Jenkins pode ser iniciado pela linha de comando ou pode ser executado em um servidor de aplicativos da web.
Consulte as etapas abaixo para a execução por meio da linha de comando:
1) Abra o prompt de comando e digite java –jar e insira o caminho de um arquivo .war
(Nota:Clique em qualquer imagem para ampliá-la)
2) Pressione Enter e verifique se o arquivo Jenkins.war começou a ser executado e verifique as informações de status no console do prompt de comando.
Deve mostrar - Jenkins está totalmente instalado e funcionando
3) Agora verifique se seu Jenkins está pronto para uso; por padrão, ele usa a porta 8080.
Modelo ' http: // localhost: 8080 ”No navegador e pressione Enter. Ele mostrará a IU do Jenkins.
Ele carregará o painel do Jenkins vazio por padrão. Criei algum trabalho do Jenkins na imagem acima como exemplo e, portanto, ele não carregou vazio.
Passo 2:
Para usar o Selenium com o Jenkins, você precisa configurar o Jenkins com o Selenium.
Siga as etapas abaixo:
- Vá para o painel do Jenkins
- Clique em gerenciar Jenkins
- Clique em configurar Jenkins
- Clique em JDK installation - Na seção JDK name insira o nome, na seção Java Home - forneça seu caminho java
O botão de rádio, Instalar automaticamente é marcada por padrão. Você precisa desmarcá-lo porque ele será atualizado automaticamente com a nova versão do Java e pode haver a possibilidade de o Selenium não oferecer suporte para a nova versão do Java. É melhor desmarcá-lo. Agora clique em aplicar e salvar.
Seu Jenkins está configurado com Selenium e agora está pronto para ser usado com Selenium. Os códigos Jenkins e Selenium são escritos em Java. Portanto, se você fornecer o caminho Java, ele se comunicará internamente e processará seu trabalho.
Etapa 3:
Agora, crie um script Selenium e um arquivo XML TestNG. Este arquivo TestNG XML será necessário para criar um arquivo em lote e usaremos esse arquivo em lote no Jenkins. Consulte o código TestNG abaixo:
Consulte o código TestNG abaixo:
package session_2; import org.openqa.selenium.WebDriver; import org.openqa.selenium.firefox.FirefoxDriver; import org.testng.Assert; import org.testng.annotations.Test; public class jenkins_demo { @Test publicvoidtestgooglrsearch(){ WebDriver driver = newFirefoxDriver(); //it will open the goggle page driver.get('http://google.in'); //we expect the title “Google “ should be present String Expectedtitle = 'Google'; //it will fetch the actual title String Actualtitle = driver.getTitle(); System.out.println('Before Assetion ' + Expectedtitle + Actualtitle); //it will compare actual title and expected title Assert.assertEquals(Actualtitle, Expectedtitle); //print out the result System.out.println('After Assertion ' + Expectedtitle + Actualtitle + ' Title matched '); } }
Resultado : Antes da afirmação GoogleGoogle
Após a afirmação, o título do Google Google correspondeu
PASSADO: testgooglrsearch
Crie um arquivo xml TestNG, consulte o código abaixo:
Passo 4:
Vá para o diretório raiz do seu projeto e crie uma pasta de biblioteca.
Consulte a captura de tela abaixo:
Agora, adicione todos os seus arquivos jar que são necessários para executar o script Selenium:
como visualizar arquivos swf no pc
Etapa 5:
Criar um arquivo em lote e usá-lo no Jenkins
Crie um arquivo em lote seguindo as etapas abaixo:
1) Abra o bloco de notas e digite: Java –cp bin; lib / * org.testng.TestNG testng.xml
Fazendo isso, Java –cp irá compilar e executar um arquivo .class que está localizado em sou diretório e todo o nosso arquivo jar executável está localizado em lib diretório e estamos usando uma estrutura TestNG, portanto, especifique org.testng.TestNG. Além disso, especifique o nome do xml arquivo que irá acionar o script TestNG esperado.
2) Salve o arquivo com extensão .bat e verifique o tipo de arquivo. Deve ser “arquivo de lote do Windows”. Para verificar se o arquivo em lote foi criado corretamente, clique duas vezes no arquivo em lote e ele executará o código. Consulte o código abaixo do arquivo em lote:
Etapa # 6:
Em seguida, precisamos adicionar um arquivo em lote no Jenkins.
Para adicionar o arquivo em lote, siga as etapas abaixo:
1) Vá para o painel do Jenkins, crie um novo trabalho no Jenkins
2) Clique em um novo item e insira o nome do item e marque o botão de opção do projeto de estilo livre
3) Clique em Opções avançadas
4) Clique em usar espaço de trabalho personalizado e forneça o caminho do espaço de trabalho do seu projeto de script do Selenium: “ E: Automation_workspace Demo-testNG '
5) Em seguida, vá para Construir e selecione uma opção na caixa suspensa, execute sua construção através do comando de lote do Windows
6) E dê o nome do seu arquivo em lote aqui - “ run.bat '
7) Clique em aplicar e salvar
8) Clique na construção agora e veja o resultado da construção na saída do console
Até agora aprendemos:
- Como iniciar o Jenkins
- Como configurar o Jenkins com Selenium
- Criando seu arquivo batch e executando-o através do Jenkins.
Como todos sabem, o Jenkins é uma ferramenta muito poderosa, usada principalmente para executar compilações noturnas. Portanto, aprenderemos agora como agendar sua construção e enviar notificações por e-mail para a equipe em questão.
Agendamento de trabalho do Jenkins
Para programar seu arquivo em lote, execute as etapas abaixo:
- Vá para o painel e clique no trabalho do Jenkins
- Clique em configurar e depois na opção avançada
- Então vá para Construir gatilhos e selecione Construa periodicamente opção e digite seu padrão de cron job
- Para entender o padrão do cron job, siga este link wiki
Digitei * * * * * o que significa que executará meu trabalho a cada minuto
- Clique em aplicar e salvar
Não há intervenção manual. Depois de agendar o script, ele será executado no horário agendado.
Como adicionar notificações por e-mail
A seguir, abordaremos como adicionar notificações por email.
Consulte as etapas abaixo:
- Vá para a seção ‘Gerenciar Jenkins’
- Clique em configurar sistema
- Selecione Notificação de email
- Forneça o endereço do seu servidor SMTP. Estou usando o Gmail, pois não posso mencionar meu endereço oficial do servidor. Para saber o endereço oficial do seu servidor, entre em contato com a equipe de suporte de rede
- Digitei o nome do servidor SMTP = smtp.gmail.com
- Clique no link avançado e marque a caixa de seleção Usar autenticação SMTP
- Fornece nome de usuário, senha e número da porta SMTP; é 465 para o Gmail. Verifique o conjunto de caracteres e certifique-se de que seja = UTF-8
- Verifique suas configurações de e-mail clicando no botão Testar configuração.
- Portanto, sempre que a versão for aprovada ou falhar, você receberá uma notificação por email.
Executar o script Selenium por meio da linha de comando
Agora veremos como podemos executar o script Selenium através do prompt de comando . Essa parte não tem nada a ver com Jenkins. Estou compartilhando isso para dar uma visão extra sobre o Selênio.
Siga as etapas abaixo:
- Abra seu prompt de comando e vá para o caminho base do projeto
- Defina o caminho da classe para o seu arquivo de script; o que significa que estamos especificando que nossos arquivos binários e de biblioteca são armazenados neste local
E: Automation_workspace Demo-testNG> definir classpath = E: Automation_workspace Demo-testNG bin; E: Automation_workspace Demo-testNG lib *;
- Execute seu arquivo testng.xml digitando o comando - java org.testng.TestNG testng.xml
- Quando você pressiona Enter, seu script começa a ser executado e você pode ver o resultado do teste na IU
Às vezes, ao executar seu script, você pode encontrar um erro que diz: “Não foi possível encontrar ou carregar a classe principal org.testng.TestNG”
Em seguida, você precisa fechar o prompt de comando e definir novamente o caminho de classe conforme mencionado acima e repetir as mesmas etapas. Seu erro será resolvido e o script será executado.
Conclusão
A integração do Jenkins com o selênio permite que você execute o seu script sempre que houver alguma alteração no código do software e implante o código em um novo ambiente. Com o Jenkins, você pode salvar histórico de execução e relatórios de teste.
Resumindo, o Jenkins é muito útil quando você tem casos de teste prontos e deseja que eles sejam executados com um único clique. Podemos criar ou agendar uma construção para executar os casos de teste usando um arquivo em lote.
Leitura adicional => Integre o Selenium com o projeto Maven
Nota: Este tutorial faz parte da série de tutoriais Selenium e DevOps. Clique no link abaixo para ver os tutoriais anteriores e posteriores da série DevOps.
PREV Tutorial | PRÓXIMO Tutorial
Sinta-se à vontade para postar suas dúvidas na seção de comentários abaixo .
Leitura recomendada
- Tutorial Cucumber Selenium: Cucumber Java Selenium WebDriver Integration
- Introdução ao Selenium WebDriver - Selenium Tutorial # 8
- Integração de Selenium com JMeter
- Implantação no MongoDB: tutorial passo a passo
- Tutoriais detalhados do Eclipse para iniciantes
- Implementação do nosso primeiro script WebDriver - Selenium WebDriver Tutorial # 10
- Exemplo de ponta a ponta do Specflow e Selenium Webdriver
- Como usar o Firebug para criar scripts do Selenium - Tutorial # 4 do Selenium