-
Notifications
You must be signed in to change notification settings - Fork 7
Aprendizados de testes de regressão visual
Jalussa dos Santos edited this page Aug 6, 2021
·
26 revisions
Aprendizados relacionados ao projeto de testes de regressão visual com Percy
- Todas as tecnologias do nível básico
Percy é uma plataforma de análise e teste visual tudo-em-um, onde lida com tudo, desde capturar e renderizar screenshots, até detectar e notificar sua equipe sobre mudanças visuais. Permite automatizar o controle de qualidade manual para detectar bugs visuais e obter informações sobre as alterações da UI a cada implantação, além disso, possui integração com seus testes Cypress
- Execute no terminal o comando para instalar o percy
npm install --save-dev @percy/cli @percy/cypress
- Para adicionar instantaneamente o Percy aos seus testes Cypress, você precisará primeiro importar o pacote
@percy/cypress
para o seu arquivocypress/support/index.js
import '@percy/cypress';
- Para realizar a integração do percy com cypress, é necessário:
- Criar uma conta no Percy.io vinculado a uma conta do BrowserStack
- Criar um novo projeto no Percy.io
- Acessar a opção
Configurações do projeto
, copiar o token gerado para setar oPERCY_TOKEN
como variável de ambiente do sistema operacional - Em
Configurações do projeto
, configure o branch padrão que é usado como a construção de base para comparações, por padrão é recomendado usar a branchmaster
. Veja mais em Configurando o branch base padrão do projeto
- O percy possibilita ativar e desativar navegadores, veja mais em Teste visual entre navegadores
- A versão free do percy, possibilita tirar 5000 mil snapshots ao mês
- Veja mais sobre Teste Visual
- Veja mais sobre em Percy Docs
- Veja mais sobre em Integrando Percy com seus testes Cypress
-
cy.percySnapshot()
- Dinamicidade com percyCSS para assumir o controle da renderização para fazer o que você quiser - ignorar regiões, estabilizar elementos dinâmicos, etc.
- Outras opções que podem ser utilizadas como parâmetro no percySnapshot
- Para realizar a integração do percy com o Github, é necessário:
- Acessar a opção
Integrações
, emVincule um repositório
, selecione oGithub
e clique emInstale o aplicativo Github
, você será direcionado para tela de configurações do seu github, selecione o seu repositório e clique emInstalar
- Ainda em
Integrações
selecione o repositório do github para vincular ao seu projeto percy - No Github, acessar a opção
Definições
, emSegredos
, clicar emNovo segredo de repositório
, emNome
informarPERCY_TOKEN
e emvalor
o token do projeto percy
- Acessar a opção
- Veja mais em Configurando variáveis de ambiente no Github
- Veja mais em Instalando a integração do Percy com o GitHub
-
Para realizar a integração do percy com o GitHub Actions, é necessário:
- Ter um arquivo yml, conforme exemplo: Configurações Github Actions
- Incluir no arquivo
yml
doworkflow
a chamada para execução doscript
configurado nopackage.json
, como por exemplo:
- run: npm run test:exemploTesteRegressaoVisualPercy
- Incluir em
script
do arquivopackage.json
, a linha de comando para execução do teste, como por exemplo:
percy exec -- cypress run
- Para realizar a integração do percy com o Gitlab, é necessário:
- No Gitlab, em
Preferências do perfil
, acessar a opçãoTokens de acesso
, emNome
informarpercy
e clique emapi
e emread_user
e clique emCriar token de acesso pessoal
- No seu projeto Percy, acessar a opção
Integrações
, emVincule um repositório
, selecione oGitlab
e clique emInstale o aplicativo Gitlab
, informe o token de acesso pessoal do Gitlab e clique emSalvar
- Ainda em
Integrações
selecione o repositório do gitlab para vincular ao seu projeto percy e após clique emSalvar
- No Gitlab, acessar a opção
Definições
, emCI/CD
, clicar emExpandir
de Variáveis, emNome
informarPERCY_TOKEN
, emvalor
o token do projeto percy e marcar a opçãoVariável de máscara
- No Gitlab, em
- Veja mais em Configurando variáveis de ambiente no Gitlab
- Veja mais em Integrando GitLab com Percy
-
Para realizar a integração do percy com o Gitlab CI, é necessário:
- Ter um arquivo yml, conforme exemplo: Configurações Gitlab CI
- Incluir no arquivo
yml
a chamada para execução doscript
configurado nopackage.json
, como por exemplo:
- run: npm run test:exemploTesteRegressaoVisualPercy
- Incluir em
script
do arquivopackage.json
, a linha de comando para execução do teste, como por exemplo:
percy exec -- cypress run
Aprendizados relacionados ao projeto de testes de regressão visual com cypress plugin snapshots
- Todas as tecnologias do nível básico
- Veja mais em Github - cypress-plugin-snapshots o passo a passo para configurar o plugin
- Veja mais em Teste de regressão visual com Cypress.io e cypress-image-snapshot
Comparativo entre os testes de regressão visual com Percy e testes de regressão visual com cypress plugin snapshots
Percy | Cypress-plugin-snapshots |
---|---|
Plataforma de análise e teste visual tudo-em-um | Plugin for snapshot tests in Cypress.io.Mesma API do Jest, mas com interface gráfica para revisar e aprovar mudanças. |
Instalação e configuração do projeto sem muitas linhas de código | Instalação e configuração do projeto com muitas linhas de código |
Ferramenta desenvolvida pela BrowserStack | Ferramenta open source |
Ferramenta considerada estável | Ferramenta considerada instável, possui mais de 60 issues em seu projeto |
Possibilita executar vários testes ao mesmo tempo | Apresenta erros ao executar todos os testes ao mesmo tempo |
Imagens salvas em um servidor externos para análise das mudanças | Imagens salvas dentro do projeto, gerando "arquivos desnecessários" para análise das mudanças |
Dashboard externo para analise das mudanças ao executar via Cypress Open | Gera feedback dentro da interface do Cypress ao executar via Cypress Open |
Limitação de snapshots para a versão free | Sem limitação de snapshots visto que trata-se de ferramenta open source |
- Veja mais em Cypress.io: Teste visual com plug-ins e Percy.io