Integração Contínua de selênio com Jenkins usando git
neste post, estou tentando manter o guia completo de Integração Contínua de selênio (integração final) com Jenkins. Este é um guia para implementar a integração contínua com Jenkins, Maven, e TestNG com GitHub. Existem muitas ferramentas e técnicas que podem ser integradas em um ambiente de IC. Aqui estou eu a usar o WebDriver Selenium, Java, TestNG, Maven, e integro estes com o Jenkins. Para implementar a integração contínua, siga os 9 passos que mencionei abaixo.
- 1. O que é Integração Contínua
- 2. O que é maven
- 3. Construindo Um Projeto Maven Em Eclipse
- 4. O que é git
- 5. O que é Jenkins
- 6. Instalação de Jenkins
- 7. Configurar Jenkins para um projecto Maven
- 8. Configurar o ‘Plugin’ do GIT em Jenkins
- 9. Running Maven Project From Jenkins
What is Continuous Integration
Continuous Integration is abreviated as IC. A integração contínua é uma prática de desenvolvimento que visa garantir a correção de um software. Após cada commit, um conjunto de testes é executado automaticamente e testa um software para garantir se o software está funcionando sem quaisquer quebras. Se qualquer teste falhar, vamos receber feedback imediato dizer “build is broken”.
em palavras simples, integração contínua é um processo de verificação da correção de um software.
Algumas das ferramentas de integração contínua são Jenkins, TeamCity, Bambu, Travis, CircleCi, Bitbucket, Administrador
o Que é o Maven
Maven, uma palavra Iídiche que significa “acumulador de conhecimento”. Maven é uma ferramenta de automação de build usada principalmente para projetos Java. Ele ajuda na construção de software, ele descreve como o software é construído e descreve suas dependências. Ele transfere dinamicamente bibliotecas Java e plug-ins Maven de um ou mais repositórios, como o repositório central Maven 2, e armazena-os em um cache local. Nós usamos maven em selênio como uma ferramenta de construção ou ferramenta de gerenciamento de projetos. Ele ajuda a gerenciar todas as dependências do projeto e garantir um processo de construção fácil.Os principais objectivos da Maven são os seguintes::
- Tornando o processo de criação de fácil
- uniforme sistema de compilação
- qualidade na Prestação de informações de projeto
- Fornecer diretrizes para as melhores práticas de desenvolvimento
- Permitindo a migração transparente de novos recursos
até agora, nós aprendemos o que é Integração Contínua e o que é o Maven. Se você está sentado em seu sistema e tentando implementar, então vamos começar a implementar os 9 passos abaixo mencionados.
Passo 1: Abra o Eclipse IDE para iniciar a construção de um projeto maven
a Construção de Um Projeto Maven No Eclipse
Instalação do Maven Project no Eclipse:
PASSO 2: Instalar o Maven no Eclipse: Verifique este link
Assim, temos agora o Maven instalado no Eclipse. Agora vamos criar o projecto Maven em Jenkins.
Creating Maven Project In Jenkins:
Passo 3: Criar um novo projecto Maven no Eclipse-siga os passos abaixo
3.1 para criar um projeto-clique com o botão direito no Package Explorer e navegue através de New – Other
certifique-se de que o TestNG já está instalado. Confira para ver “Como Instalar o TestNG Em Eclipse” e esta verifique este link para “TestNG Tutorial Completo”
Selecione Maven Project e clique em Next
Selecione ” Criar um projeto simples caixa de seleção e clique em AvançarPreencha o Id de Grupo, Artefato de Identificação e clique no botão Concluir
Estrutura do projeto aparece como mostrado na imagem abaixo
3.2 Configurar pom.arquivo xml, que foi criado automaticamente, para incluir outros frascos de plugin para o processo de compilação. Ele pode ser encontrado na raiz do projeto Maven como mostrado na imagem abaixo.
no projecto maven, usamos o ficheiro POM para adicionar as dependências necessárias. Duplo clique no pom.ficheiro xml e carregue no pom.xml tab
Add the below maven dependency (Selenium and TestNG) to allow maven to download the necessary jars for your project.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<dependencies>
<!– Selenium –>
<dependency>
<groupId > org.Selênio.selênio</groupId>
<artifactld>selenium-java</artifactld>
<versão>2.53.1</versão>
</dependência>
<!– TestNG –>
<dependência>
<groupId>org.testng</groupId>
<artifactld>testng</artifactld>
<versão>6.8</versão>
<escopo>teste</scope>
</dependência>
</dependências>
|
3.3 Adicionar TestNG frascos para a dependência permitirá TestNG no seu projeto.
criar uma classe de ensaio e gerar ensaio.ficheiro xml. Verifique o link abaixo para fazer este passo.
como criar uma classe de ensaio e gerar o ensaio.arquivo xml
Copie o código abaixo e coloque-o em sua mais recente classe
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
package tests;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.Test;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.AfterClass;
public class NewTest {
public WebDriver driver;
@Test
public void openMyBlog() {
driver.get(“https://www.softwaretestingmaterial.com/”);
}
@before plass
public void before plass () {
System.setProperty (“webdriver.lagartixa.condutor”, “D:\\Selenium\\Drivers\\geckodriver.exe”);
driver = new FirefoxDriver();
}
@AfterClass
public void afterClass() {
driver.fechar();
}
}
|
testng.xml: testng.o ficheiro xml parece-se com o que está em baixo. Copia-o e coloca-o no teu teste.xml
1
2
3
4
5
6
7
8
|
<?xml version=”1.0″ encoding=”UTF-8″?>
<suite name=”Suite” parallel=”false”>
<test name=”Test”>
<classes>
<class name=”tests.NewTest”/>
</classes>
</test> <!– Teste –>
</suite > <!– Suite.–>
|
para executar o projecto usando o testng.xml, carregue com o botão direito em ‘ testng.ficheiro xml ‘e ir para executar o conjunto as-TestNG
3.4 adicionando o ‘plugin-compilador maven’ e ‘plugin-maven-surefire’ ao pom.ficheiro xml
para executar o projecto usando o pom.xml, precisamos adicionar mais algumas entradas no pom.ficheiro xml. Precisamos adicionar ‘maven-compiler-plugin’ e’maven-surefire-plugin’
pom.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
<project xmlns=”http://maven.apache.org/POM/4.0.0″ xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”>
<modelVersion>4.0.0</modelVersion>
<groupId>mavenPackage</groupId>
<artifactld>MavenProject</artifactld>
<versão>0.0.1-INSTANTÂNEO</versão>
<dependências>
<!– Selenium –>
<dependência>
<groupId>org.seleniumhq.selênio</groupId>
<artifactld>selenium-java</artifactld>
<versão>2.53.1</versão>
</dependência>
<!– TestNG –>
<dependência>
<groupId>org.testng</groupId>
<artifactld>testng</artifactld>
<versão>6.8</versão>
<escopo>teste</scope>
</dependência>
</dependências>
<construir>
<plugins>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactld>maven compiler-plugin</artifactld>
<versão>3.6.1</versão>
<configuração>
<fonte>1.8</origem>
<alvo>1.8</destino>
</configuração>
</plugin>
<plugin>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20</version>
<configuration>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
<!– <suiteXmlFile>src/main/resources/testng.xml</suiteXmlFile> –>
</suiteXmlFiles>
</configuração>
</plugin>
</plugins>
</construir>
</projeto>
|
Nota: O processo de compilação irá construir o seu projeto Maven e executar a base testng.xml durante um teste Maven. Logo que tenha configurado o Maven e Transferido todas as jarras correspondentes, carregue com o botão direito no projecto e vá para run – Maven Clean e tente instalar o & build. Se for capaz de compilar/limpar/instalar os seus projectos Maven, terá instalado/configurado com sucesso o Maven.
What is GIT
Git is the most widely used modern version control system in the world today for tracking changes in any set of files. Git é um projeto de código aberto. Destina-se à velocidade, integridade de dados e suporte para fluxos de trabalho não lineares distribuídos. Ele permite que você commit seu trabalho localmente e, em seguida, sincronizar sua cópia do repositório com a cópia no servidor.
Passo 4: Instalar o GIT no Eclipse e Adicionando (Upload) Projeto Maven para o GitHub
Aqui está um vídeo tutorial sobre “Como Instalar o GitHub no Eclipse e Como enviar o Projeto para o GitHub”:
por Favor, seja paciente. O vídeo será carregado em algum momento.
What is Jenkins
Jenkins is an open source automation server. Ele nos suporta para automatizar todos os tipos de tarefas relacionadas à construção, implantação e automação de qualquer projeto. É multi-plataforma e pode ser usado em Windows, Mac OS, Linux etc., Como parte do selênio, nós o usamos para construir e testar nosso software continuamente. É usado para execuções de testes automáticos e construções programadas. Utilizando o Jenkins, poderíamos também publicar resultados e enviar notificações por e-mail a todos os membros da equipa. A Jenkins fornece um serviço contínuo de integração e entrega para o desenvolvimento de software.
aqui está a ligação oficial à documentação Jenkins.
até agora temos instalado Maven, criou Maven projeto no Eclipse e instalação do GIT no Eclipse e uploading Maven projeto para o GitHub. Além disso, aprendemos o que é Integração Contínua, Maven, GIT, e Jenkins. Agora vamos instalar o Jenkins e configurá-lo.
Instalação de Jenkins
PASSO 5: Instalar o Jenkins – Verifique este link
Anterior publicamos um post sobre a instalação de Jenkins, veja este post sobre como instalar o Jenkins
Configurar Jenkins para um Projeto Maven
PASSO 6: Configurando o Jenkins para um Projeto Maven – Verifique este link
Anterior publicamos um post sobre como configurar o Jenkins para um projeto maven, veja este post sobre como configurar o Jenkins para um projeto maven
até agora temos instalado e criado Maven Project no Eclipse, Instalado e carregado Projeto Maven para o GitHub e instalado e configurado Jenkins para Projeto Maven. Agora vamos configurar o ‘plugin’ do GIT no Jenkins.
Configure Git Plugin in Jenkins
STEP 7: Configurando Git Plugin in Jenkins-Follow below steps
7.1 Go To Manage Plugins – > Filter list of plugins available with ‘Git Plugin’.
leia mais sobre o ‘Plugin’do Git
7.2 verifique o ‘Plugin’ do Git e carregue no botão ‘Instalar sem reiniciar’
na imagem abaixo, poderá ver que já o instalei.
7.3 após a instalação ser feita, reinicie Jenkins usando o comando no navegador. http://localhost:8080/jenkins/restart
uma vez que Jenkins é reiniciado, a opção Git deve estar disponível sob o gerenciamento de código fonte ao configurar um trabalho em Jenkins e isso veremos na Etapa 8.
7.4 Go to Manage Jenkins- > Configure System, please provide the right Path to Git executable
STEP 8: Create Maven Project in Jenkins and build a job from Git Project – Follow below steps
we have configured git plugin in Jenkins. Agora vamos criar um Projeto Maven e construir um trabalho a partir do Git do projeto
8.1 Clique em Novos Itens –> Introduza o Nome do Projeto (dizer GitProject) –> Selecione Freestyle Projeto –> Clique em OK
Você será redirecionado para a página de Configuração. Carregue na página de gestão do código-fonte
8.2 na gestão do código-fonte, seleccione a opção “Git”. (Isto deve ser visível depois de ter instalado com sucesso o Plugin Git-o que fizemos no passo 7.3).
8.3 dê ao seu URL do repositório Git (que capturámos no vídeo Passo 4 – Watch sobre como criar o repositório no Git e copiar o URL do repositório git) e escolha as suas credenciais e salve as suas alterações
Jenkins irá extrair o código-fonte do projecto do Servidor Git remoto com base no URL do repositório que passámos.
8.4 no Build-click em Adicionar um passo de compilação e escolher invocar alvos Maven de nível superior e passar ‘clean install’ como objectivos. Carregue no botão Avançado e passe o valor POM como ‘pom.xml’
nota: sob o plugin Git, Defina o git global user.name e Utilizador.e-mail para corresponder às suas opções de configuração global
também poderá passar as acções pós-compilação para gerar relatórios. Para gerar relatórios HTML do TestNG, escolha a opção publicar relatórios do TestNG clicando em Adicionar uma acção pós-compilação e passar o valor como ‘**/testng-results.xml ‘
e, finalmente, clique em Gravar.
Aprenda a configurar o projecto Maven simples em Jenkins
a estrutura contínua do projecto de integração Jenkins no Eclipse parece como mostrado abaixo:
Running Maven Project From Jenkins
STEP 9: Executing Maven Project From Jenkins-Follow below steps
Let’s execute it now.
9.1 clique no link’ Build Now’. Vai invocar o pom.xml.
9.2 clique com o botão direito sobre o número de Compilação (aqui no meu caso é #1) e clique na saída da consola para ver o resultado.
você poderia ver o status de Compilação ‘sucesso’ na saída do Console.
além disso, você pode agendar trabalhos Jenkins e enviar uma notificação de E-mail após a execução de compilação.
para agendar a tarefa Jenkins:
abra a sua tarefa Jenkins-configurar-criar gatilhos-seleccione a opção construir periodicamente e indique o seu padrão de trabalho Cron
por exemplo: para executar a sua tarefa a cada minuto, terá de indicar * * * * *
o Jenkins trabalha no padrão Cron. Saiba mais sobre o padrão de trabalho Cron – wiki link
para enviar a notificação de E – mail:
vá para gerir Jenkins – Configure – Select Email notification-Set SMTP configuration.
receberá uma notificação por e-mail sempre que a compilação passar ou falhar.
conclusão:
a integração contínua de selênio com Jenkins nos permite executar nossos scripts em cada implantação. O Jenkins permite-nos salvar o histórico de execução e os relatórios. Espero que este post o tenha ajudado a alcançar seus objetivos. Espero que tenha implementado com sucesso a integração contínua do selénio. Por favor, não hesite em se aproximar se tiver alguma dúvida.
Aqui estão alguns escolhidos a dedo artigos para você ler próximo:
- Como Executar o Selenium Scripts Usando o BrowserStack
- Saiba Cross-Browser Ferramenta de Teste
- Guia Completo – GUI Ferramenta de Automação – Froglogic Esmagar
- Mais Popular – Selênio Perguntas da Entrevista
- TestNG Perguntas da Entrevista
- Por que Você Escolher Teste de Software Como Uma Carreira
- Geral Perguntas da Entrevista