Selenium Integração com Maven e Jenkins

⚡ Resumo Inteligente

Maven Jenkins Selenium A integração cria um pipeline de testes contínuos automatizado, onde o Maven gerencia as dependências e o ciclo de vida do projeto. Jenkins agenda e aciona construções, e Selenium Executa testes de navegador, produzindo automação web ponta a ponta repetível, confiável e escalável.

  • 📦 Função do Maven: O Maven 3.x gerencia dependências, ciclo de vida de compilação e plugins por meio do pom.xml, eliminando a necessidade de manipulação manual de arquivos JAR. Selenium projetos.
  • 🔁 Jenkins Função: Jenkins Horários LTS Selenium Executa o pacote, monitora as alterações do SCM e aciona execuções de regressão automatizadas a cada commit ou cron noturno.
  • 🚀 Energia por gasoduto: Combinando o Maven, Jenkins, Selenium e TestNG Forma um ciclo completo de CI/CD que detecta defeitos poucos minutos após a alteração do código.
  • Relatório: Relatórios Surefire plus Jenkins construir histórico fornecer tracResultados de testes acessíveis e compartilháveis, com saída no console e painéis HTML.
  • 🧪 Aprimoramento de IA: Os plugins modernos de IA priorizam testes afetados, preveem casos instáveis ​​e reduzem o número de testes afetados. Jenkins ciclos de feedback internos Selenium gasodutos.

Mestre e Jenkins Integração com Selenium

O que é a Jenkins in Selenium?

Jenkins é a principal ferramenta de integração contínua de código aberto, originalmente desenvolvida pelo laboratório Hudson. É multiplataforma e funciona em WindowsLinux, macOS e Solaris ambientes. Jenkins está escrito em Java e agora é distribuído como Jenkins LTS para uso estável em produção. Sua principal função é monitorar qualquer tarefa, seja um checkout de SCM, um agendamento cron ou o estado de qualquer aplicação. Jenkins Aciona ações pré-configuradas quando uma etapa específica ocorre nos trabalhos.

Características importantes de Jenkins

  • Suporte para alterações: Jenkins Gera a lista de todas as alterações feitas em repositórios como Git ou SVN.
  • Links permanentes: Jenkins Fornece links diretos para a versão mais recente ou para a última versão com falha, o que simplifica a comunicação da equipe.
  • Instalação: Jenkins É fácil de instalar usando um instalador nativo, um arquivo WAR implantado em um servidor de aplicativos ou uma imagem Docker.
  • Integração de e-mail: Jenkins Pode ser configurado para enviar por e-mail o conteúdo e o status de cada compilação.
  • Configuração fácil: Configurando várias tarefas em Jenkins É muito simples através do painel de controle da web.
  • TestNG Teste: Jenkins pode ser configurado para executar a compilação de teste de automação em TestNG após cada commit no repositório.
  • Várias VMs: Jenkins Pode distribuir builds por várias máquinas de agentes.
  • Construção do projeto: Jenkins Documenta os detalhes dos arquivos JAR, versões de JAR e o mapa.ping de números de compilação para artefatos.
  • plugins: 3rd É possível adicionar plugins para festas em Jenkins Para ampliar recursos e funcionalidades adicionais.

Porque Jenkins e Selenium?

  • Corrida Selenium testes em Jenkins Permite executar os testes sempre que o software for alterado e implantá-lo em um novo ambiente quando os testes forem aprovados.
  • Jenkins pode agendar o seu Selenium Testes a serem executados em um horário específico.
  • Você pode salvar o histórico de execução e os relatórios de teste para trachabilidade.
  • Jenkins Suporta Maven para construção e Testes um projeto em integração contínua.

Em que Maven está Selenium?

O Maven é uma poderosa ferramenta de gerenciamento de projetos e builds baseada no conceito de POM (Project Object Model), que inclui informações do projeto e dados de configuração para o Maven, como diretório de build, diretório de origem, dependências, diretório de origem de testes, objetivos, plugins e muito mais. O Maven 3.x é a versão estável atual, amplamente utilizada em diversos setores. Selenium estruturas de teste.

Por que Maven e Jenkins

Selenium O WebDriver é ótimo para automação de navegadores. Mas, ao usá-lo para testes e para criar uma estrutura de testes, ele pode parecer limitado. Integrando o Maven com Selenium Oferece os seguintes benefícios.
Apache Maven fornece suporte para gerenciar todo o ciclo de vida de um projeto de teste.

  • Maven é usado para definir estrutura do projeto, dependências, construção e gerenciamento de testes.
  • Utilizando o arquivo pom.xml (Maven), você pode configurar as dependências necessárias para compilar, testar e executar o código.
  • O Maven baixa automaticamente os arquivos necessários do repositório central durante a construção do projeto.

Como instalar o Maven e usá-lo com TestNG Selenium

Aqui estão os passos para instalar o Maven e usá-lo com TestNG Selenium.

Para este tutorial, usaremos Eclipse (Juno) IDE para Java Os desenvolvedores devem configurar o Selenium Projeto WebDriver. Além disso, precisamos adicionar o plugin m2eclipse ao Eclipse Para facilitar o processo de compilação e criar o arquivo pom.xml.
Vamos adicionar o plugin m2eclipse ao Eclipse com as seguintes etapas:

Passo 1) In Eclipse IDE, selecione Suporte | Instale um novo software do Eclipse menu principal.

Passo 2) Na caixa de diálogo Instalar, insira o URL https://www.eclipse.org/m2e/. Selecionar Trabalhar com e o plugin m2e, conforme mostrado na captura de tela a seguir:

Instale o Maven e use-o com TestNG Selenium

Passo 3) Clique no Seguinte botão e finalize a instalação.

configurar Eclipse com Maven

Com o plugin m2e instalado, agora precisamos criar um projeto Maven.

Passo 1) In Eclipse IDE, crie um novo projeto selecionando Envie o | New | Outros do Eclipse menu.

Passo 2) No New diálogo, selecione Maven | Projeto Maven e clique em Avançar.

Instale o Maven e use-o com TestNG Selenium

Passo 3) No Novo projeto Maven caixa de diálogo selecionar Crie um projeto simples e clique em Avançar.

Instale o Maven e use-o com TestNG Selenium

Passo 4) Digite WebdriverTest em ID do grupo: e ID do artefato: e clique em Concluir.

Instale o Maven e use-o com TestNG Selenium

Passo 5) Eclipse irá criar WebdriverTest com a seguinte estrutura:

Instale o Maven e use-o com TestNG Seleniuml

Passo 6) Clique com o botão direito do mouse em Biblioteca do Sistema JRE e selecione o Propriedades opção do menu.

Instale o Maven e use-o com TestNG Selenium

No Propriedades da Biblioteca do Sistema JRE caixa de diálogo, certifique-se JRE padrão do espaço de trabalho Selecione a opção desejada e clique em OK.

Instale o Maven e use-o com TestNG Selenium

Passo 7) Selecionar pom.xml da Explorador de Projetos.

Instale o Maven e use-o com TestNG Selenium

O arquivo pom.xml será aberto na seção Editor.

Instale o Maven e use-o com TestNG Selenium

Passo 8) Adicionar o Selenium, Maven, TestNG e JUnit dependências para pom.xml no nó:

	<dependencies>			
        <dependency>				
             <groupId>junit</groupId>								
             <artifactId>junit</artifactId>								
             <version>3.8.1</version>								
             <scope>test</scope>								
        </dependency>				
        <dependency>				
            <groupId>org.seleniumhq.selenium</groupId>								
            <artifactId>selenium-java</artifactId>								
            <version>2.45.0</version>								
		</dependency>				
        <dependency>				
            <groupId>org.testng</groupId>								
            <artifactId>testng</artifactId>								
            <version>6.8.8</version>								
            <scope>test</scope>							  			
       </dependency>				
</dependencies>

Passo 9) Crie um novo TestNG Classe. Insira o nome do pacote como “exemplo” e “NovoTeste” no Nome: caixa de texto e clique no Acabamento botão conforme mostrado na captura de tela a seguir:

Instale o Maven e use-o com TestNG Selenium

Passo 10) Eclipse criará a classe NewTest conforme mostrado na captura de tela a seguir:

Instale o Maven e use-o com TestNG Selenium

Passo 11) Adicione o seguinte código ao Novo teste classe. Este código verificará o título do Guru99 Selenium Disputas de Comerciais.

package example;		

import org.openqa.selenium.By;		
import org.openqa.selenium.WebDriver;		
import org.openqa.selenium.firefox.FirefoxDriver;		
import org.testng.Assert;		
import org.testng.annotations.Test;	
import org.testng.annotations.BeforeTest;	
import org.testng.annotations.AfterTest;		
public class NewTest {		
	    private WebDriver driver;		
		@Test				
		public void testEasy() {	
			driver.get("https://demo.guru99.com/test/guru99home/");  
			String title = driver.getTitle();				 
			Assert.assertTrue(title.contains("Demo Guru99 Page")); 		
		}	
		@BeforeTest
		public void beforeTest() {	
		    driver = new FirefoxDriver();  
		}		
		@AfterTest
		public void afterTest() {
			driver.quit();			
		}		
}	

Passo 12) Clique com o botão direito do mouse no projeto WebdriverTest e selecione TestNG | Converter para TestNG.
Eclipse irá criar o arquivo testng.xml que indica que você precisa executar apenas um teste com o nome Novo teste conforme mostrado na seguinte captura de tela:

Instale o Maven e use-o com TestNG Selenium

Atualize o projeto e certifique-se de que o arquivo apareça na árvore. Explorador de Pacotes (clique com o botão direito no projeto – Atualizar).

Instale o Maven e use-o com TestNG Selenium

Passo 13) Agora você precisa executar o teste através deste testeng.xml.

Então, vá para o Configurações de execução e crie um novo lançamento TestNGSelecione o projeto e defina o campo. suíte as testeng.xmle clique em Executar.

Instale o Maven e use-o com TestNG Selenium

Certifique-se de que a compilação seja concluída com sucesso.

Passo 14) Além disso, precisamos adicionar

  1. plug-in do compilador maven
  2. plugin-maven-surefire
  3. testeng.xml

para pom.xml.

O plugin maven-surefire é usado para configurar e executar testes. Aqui, o plugin é usado para configurar o arquivo testing.xml para o teste. TestNG testar e gerar relatórios de teste.

O plugin maven-compiler-plugin é usado para auxiliar na compilação do código e para utilizar uma versão específica do JDK para a compilação. Adicione todas as dependências do seguinte trecho de código ao arquivo pom.xml. nó:

Instale o Maven e use-o com TestNG Selenium

Passo 15) Para executar os testes no ciclo de vida do Maven, clique com o botão direito do mouse no projeto WebdriverTest e selecione Correr como | Teste de especialistaO Maven executará o teste a partir do projeto.

Instale o Maven e use-o com TestNG Selenium

Certifique-se de que a compilação seja concluída com sucesso.

Como integrar Jenkins com as Selenium webdriver

Aqui estão os passos para instalar Jenkins LTS e configure-o para executar o Maven com TestNG Selenium.

Instalação

Passo 1) Acesse https://www.jenkins.io/download/ e faça o download correto Jenkins Pacote LTS para o seu sistema operacional. Instale. Jenkins.

Integração de Jenkins Com Selenium webdriver

Passo 2) Descompacte Jenkins Para uma pasta específica. Execute o arquivo .exe conforme mostrado na captura de tela a seguir:

Integração de Jenkins Com Selenium webdriver

Passo 3) De acordo com o relatório Jenkins instalação janela, clique no Seguinte botão.

Integração de Jenkins Com Selenium webdriver

Passo 4) Clique no Instale botão no final.

Integração de Jenkins Com Selenium webdriver

Passo 5) Após a instalação, navegue até o Jenkins Painel de controle (http://localhost:8080 por padrão) na janela do navegador.

Integração de Jenkins Com Selenium webdriver

Passo 6) Clique no Novo Item link para criar um trabalho de CI.

Integração de Jenkins Com Selenium webdriver

Passo 7) Selecione o botão de opção do projeto Maven conforme mostrado na captura de tela a seguir:

Integração de Jenkins Com Selenium webdriver

Usando o Construir um Projeto Maven opção, Jenkins Suporta a criação e o teste de projetos Maven.

Passo 8) Clique no botão OK. Um novo trabalho chamado “WebdriverTest” será criado no Jenkins Painel de controle.

Integração de Jenkins Com Selenium webdriver

Passo 9) Acesse Gerenciar Jenkins => Configurar sistema como mostrado na imagem a seguir.

Integração de Jenkins Com Selenium webdriver

Clique em instalações do JDK e configure o JDK como na captura de tela a seguir:

Integração de Jenkins Com Selenium WebDrive

Passo 10) Vou ao Construir seção do novo emprego.

  • De acordo com o relatório POM raiz Na caixa de texto, insira o caminho completo para o arquivo pom.xml.
  • Na seção Metas e opções, digite “teste limpo”.

Integração de Jenkins Com Selenium webdriver

Passo 11) Clique no Inscreva-se botão.

Integração de Jenkins Com Selenium webdriver

Passo 12) Na página do projeto WebdriverTest, clique no botão Construir Agora link.

Integração de Jenkins Com Selenium webdriver

Maven construirá o projeto. Terá então TestNG executar os casos de teste.

Passo 13) Assim que o processo de construção for concluído, no Jenkins Painel de controle, clique em WebdriverTest projeto.

Integração de Jenkins Com Selenium webdriver

Passo 14) A página do projeto WebdriverTest exibe o histórico de construção e links para os resultados conforme mostrado na captura de tela a seguir:

Integração de Jenkins Com Selenium webdriver

Passo 15) Clique no link “Resultado do teste mais recente” para visualizar os resultados do teste conforme mostrado na captura de tela a seguir:

Integração de Jenkins Com Selenium webdriver

Passo 16) Selecione uma versão específica e você verá o status atual clicando em “saída do console".

Integração de Jenkins Com Selenium webdriver

Agendamento Jenkins para Execução Automática

Agendamento de compilações (Selenium testes) é uma das características importantes de Jenkins, onde aciona automaticamente a compilação com base em critérios definidos. Jenkins Oferece várias maneiras de acionar o processo de compilação na configuração de Gatilho de Compilação.

Por exemplo:
Digite 0 23 * * * na caixa de texto Agendar, conforme mostrado na captura de tela a seguir. Isso acionará o processo de construção todos os dias às 11h

Jenkins para Execução Automática

Utilizar painéis de piso ResinDek em sua unidade de self-storage em vez de concreto oferece diversos benefícios: Jenkins sem Maven

Para executar um puro TestNG script em Jenkins, insira o seguinte em build:

D:>java -cp “Pathtolibfolder\lib\*;Pathtobinfolder\bin” org.testng.TestNG testeng.xml

Jenkins para Execução Automática

  • Clique no botão Salvar.
  • Observação: O caminho real das pastas lib e bin precisa ser adicionado ao comando acima.
  • Após salvar o comando, Jenkins irá compilar o projeto no horário predefinido, e este comando será executado usando TestNG.
  • O resultado será armazenado em um arquivo de relatório HTML personalizado que pode ser enviado por e-mail usando um Jenkins configuração.
  • O resultado do código será:

Jenkins para Execução Automática

Benefícios do Uso Jenkins

  1. Detecção precoce de problemas – os erros podem ser detectados na fase inicial do desenvolvimento de software.
  2. Integração automática – não é necessário nenhum esforço adicional para integrar todas as alterações.
  3. Instalador – um sistema implantável disponível em qualquer etapa do desenvolvimento.
  4. Registros – os registros de construções anteriores são mantidos.
  5. Suporte e plugins – uma das razões para JenkinsA popularidade do [nome do programa] se deve à disponibilidade de um amplo suporte da comunidade. Muitos plugins prontos para uso também estão disponíveis, o que ajuda a expandir sua funcionalidade.

Perguntas Frequentes

O Maven gerencia as dependências e o ciclo de vida da compilação. Selenium controla o navegador e Jenkins orquestra a execução. Juntos, eles formam um pipeline de CI completo que compila o código, baixa os JARs necessários e executa. Selenium realiza testes e publica relatórios automaticamente a cada commit.

Use o Maven 3.x para gerenciamento de dependências e compilação, e Jenkins LTS para integração contínua estável. Essas versões oferecem suporte a longo prazo, patches de segurança e ampla compatibilidade com plugins. Selenium WebDriver, TestNGe os plugins de relatório Surefire.

Sim. Travas deslizantes portáteis Jenkins usa a sintaxe no estilo cron na seção "Gatilhos de compilação" para agendar. Selenium suítes. Por exemplo, 0 23 * * * administra a suíte todas as noites às 11h. Jenkins Também pode acionar builds com base em polling do SCM ou eventos de webhook.

Alimentado por AI Jenkins Os plugins preveem testes instáveis, ajustam automaticamente os agentes de compilação e detectam anomalias nos logs do console. Eles reduzem o ruído do pipeline, aceleram o feedback e sugerem a paralelização ideal, o que mantém Selenium suítes confiáveis ​​à medida que o número de testes aumenta para milhares.

Sim. A análise de impacto de testes baseada em IA mapeia as alterações de código aos itens afetados. Selenium cenários e executa apenas o subconjunto relevante em JenkinsIsso encurta os ciclos de feedback, reduz o custo da infraestrutura e preserva a cobertura completa, agendando uma regressão completa nas compilações noturnas.

Resuma esta postagem com: