Palestra do GURU - SP sobre testes end-to-end com Playwright
GURU - SPTestando aplicações Rails com Playwright
View Slide
Cirdes Henrique - Cidão• CTO @ Linkana• CTO @ Eventick (adquirida pela Sympla)• Membro do Frevo on Rails• Organizador do Tropical Ruby• Empreendedor YCombinator
Vamos começar com algumasperguntas…
O que vocês utilizam de JS no Frontend?Vue, React, Hotwire?
Quem costuma escrever testes end-to-end?
Qual biblioteca vocês utilizam paraescrever testes e2e?
AtençãoEu nunca testei o Cypress
Mundo “sem” JavaScript
Mundo com muito JavaScript
Como era antes…
Buscando uma Solução de RPA em 2018
RPA no enterprise
O que tinha acontecido em 2017• It's considered to be thefirst "modern" browser automation tool, superseding projectslike Selenium and PhantomJS
Vantagens do Puppeteer• Controle total do navegador• Ambiente de teste confiável• Renderização JavaScript completa• Captura de screenshots e vídeos• Fácil de instalar e configurar• Fácil de rodar em ambientes “serverless”
Puppeteer no começo
Primeira versão do RPA funcionando
Edge baseado em Chromium
JavaScript Drama (2020)• Playwright started in 2020 after Microsoft bought hired a fewof the core Puppeteer maintainers.• Andrey Lushnikov, Maksim Sisov, Aleksandr Tukallo
Vantagens do Playwright• Múltiplos navegadores (Chromium, WebKit eFirefox)• Execução de testes e automações em paraleloem diferentes navegadores• Suporte a dispositivos móveis• Ecossistema de teste (Jest e Mocha)• Imagem docker• Facilidade de baixar arquivos
Vantagens do Puppeteer
Playwright na prática com codegen
Locate by text
Legal… mas como utilizar com o Rails?
Integrando com o FactoryBot
Cirdes Henrique2023