SlideShare a Scribd company logo
1 of 22
Testes E2E em
Cypress com JS
● Mãe da Luíza
● Engenheira de Qualidade - Itaú
● Founder do QALadies
● Formada em Bacharel em Ciência da Computação
pela UNINOVE
● Apaixonada por Coordenação de Eventos e Palestras
● 11 anos de experiência em Desenvolvimento e 5 de
QA
I am Nàtali Cabral
Qaladies.com
É uma metodologia
utilizada para testar se o
fluxo de um aplicativo
está sendo executado
conforme o projeto do
início ao fim
É um forma de realizar
testes nas quais visam
provar o sistema de uma
forma mais completa
simulando o ambiente
real
O que é testes E2E ?
Como por exemplo
automatizar os testes
regresivos.
Na piramide de testes
Cypress a solução
para muitos problemas
“O Cypress.io é um framework de
testes automatizados end-to-end
usando JavaScript! Mas não vai
achando que é mais um framework
"modinha" que surgiu por aí, ele é
surpreendente porque suas
características e também pelo seu
principalmente mecanismo
. Vamos entender um pouco mais?
Para utilizar JS para fazer uma automação E2E,
tínhamos que escolher :
● Um framework como (mocka, Jasmine, JUnit)
● Uma biblioteca que faça uma boa integração
(Chai, Expect.js)
● Usar o Selenium para poder fazer a comunicação
com os elementos do DOM enviando comandos de
forma remota e isso tudo envelopado (wrapper)
pelo Protractor ou Webdriver, etc.
Antes do Cypress
…Resumindo o slide anterior
Cyprees faz tudo isso e muito mais sem Selenium.
O quanto
tudo isso é
custoso?
02Número de ferramentas a
ser utilizado
Curva de aprendizado
01
Sem limitação para aplicação
04Serialização de objeto
03
● É open source O/
● É executado no mesmo ciclo de execução da
aplicação
● Atrás do Cypress é um processo do servidor
Node.js
● O Cypress é o processo Node.js comunicam,
sincroniza e executa tarefas constantemente.
● Ter acesso a ambas as partes (back e front)
Arquitetura do
Cypress
● Testes em Javascript.
● Continuous Integration.
● Time Travel.
● Real time reloads.
● Automatic waiting.
● Spies, stubs e clocks.
● Controle do tráfego de rede.
● Screenshots e vídeos.
● Testar responsividade em web apps.
Principais pontos do
Cypress
… Como funciona
Hora da Automação O/
ViewPorts com Cypress
Teste a responsividade sem se preocupar
https://docs.cypress.io/api/commands/viewport.html#Arguments
Plugins do Cypress
https://docs.cypress.io/plugins/
Iniciando um projeto com Cypress
do zero
1. Crie um diretório
2. De npm init -y para criar seu package.json
3. Depois de npm install cypress --save
4. Npx cypress open
5. Veja os exemplos que o cypress já trás pronto para
você
Iniciando um projeto com Cypress
do zero
Fixtures: É onde seus mocks são armazenados podendo ser
utilizados em qualquer teste.
Integrations: Aqui é o diretório onde criará seus arquivos de
teste exemplo : app_spec.js ou .js .jsx .coffee .cjsx.
Plugins: Com eles é possível trocar, modificar ou estender o
comportamento interno do Cypress.
Support: Neste diretório é possível criar comandos que podem
ser executados dentro dos testes ou sobrescrever comandos já
existentes.
Exemplo de comandos:
- Comando para login ( Evitar duplicação de código)
- Comando para logout
Iniciando um projeto com Cypress
do zero
Materiais para estudo
https://docs.cypress.io/examples/examples/recipes.html#Fundamentals
https://bit.ly/2Y90rMK
https://testautomationu.applitools.com/cypress-tutorial/
THANKS!
/in/natali-cabral/
natalicabral95@gmail.co
m
github.com/naascabral/
medium.com/@Naascabr
al

More Related Content

What's hot

Introdução a Testes Automatizados
Introdução a Testes AutomatizadosIntrodução a Testes Automatizados
Introdução a Testes Automatizados
elliando dias
 
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
Simplilearn
 
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Simplilearn
 

What's hot (20)

Selenium WebDriver
Selenium WebDriverSelenium WebDriver
Selenium WebDriver
 
Pirâmide de testes mobile, dividindo seus testes de maneira efetiva
Pirâmide de testes mobile, dividindo seus testes de maneira efetivaPirâmide de testes mobile, dividindo seus testes de maneira efetiva
Pirâmide de testes mobile, dividindo seus testes de maneira efetiva
 
Browser_Stack_Intro
Browser_Stack_IntroBrowser_Stack_Intro
Browser_Stack_Intro
 
Cypress - Best Practices
Cypress - Best PracticesCypress - Best Practices
Cypress - Best Practices
 
Introduction cypress
Introduction cypressIntroduction cypress
Introduction cypress
 
e2e testing with cypress
e2e testing with cypresse2e testing with cypress
e2e testing with cypress
 
DevCamp - O papel de um testador em uma equipe ágil
DevCamp - O papel de um testador em uma equipe ágilDevCamp - O papel de um testador em uma equipe ágil
DevCamp - O papel de um testador em uma equipe ágil
 
Getting Started With Cypress
Getting Started With CypressGetting Started With Cypress
Getting Started With Cypress
 
API TESTING
API TESTINGAPI TESTING
API TESTING
 
Appium Presentation
Appium Presentation Appium Presentation
Appium Presentation
 
API Testing. Streamline your testing process.
API Testing. Streamline your testing process.API Testing. Streamline your testing process.
API Testing. Streamline your testing process.
 
Test Automation Framework with BDD and Cucumber
Test Automation Framework with BDD and CucumberTest Automation Framework with BDD and Cucumber
Test Automation Framework with BDD and Cucumber
 
TDD and BDD and ATDD
TDD and BDD and ATDDTDD and BDD and ATDD
TDD and BDD and ATDD
 
SOAP-UI The Web service Testing
SOAP-UI The Web service TestingSOAP-UI The Web service Testing
SOAP-UI The Web service Testing
 
Automated Test Framework with Cucumber
Automated Test Framework with CucumberAutomated Test Framework with Cucumber
Automated Test Framework with Cucumber
 
Introdução a Testes Automatizados
Introdução a Testes AutomatizadosIntrodução a Testes Automatizados
Introdução a Testes Automatizados
 
Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)Test and Behaviour Driven Development (TDD/BDD)
Test and Behaviour Driven Development (TDD/BDD)
 
QA Challenge Accepted 4.0 - Cypress vs. Selenium
QA Challenge Accepted 4.0 - Cypress vs. SeleniumQA Challenge Accepted 4.0 - Cypress vs. Selenium
QA Challenge Accepted 4.0 - Cypress vs. Selenium
 
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
What Is Selenium? | Selenium Basics For Beginners | Introduction To Selenium ...
 
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
Selenium Tutorial For Beginners | Selenium Automation Testing Tutorial | Sele...
 

Similar to Testes E2E em Cypress com JS

Testes com TestLink e Selenium
Testes com TestLink e SeleniumTestes com TestLink e Selenium
Testes com TestLink e Selenium
André Thiago
 
Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
elliando dias
 
Desenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes UnitáriosDesenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes Unitários
Vitor Silva
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
Thiago Ghisi
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALM
Adriano Bertucci
 
Qualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitQualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnit
Domingos Teruel
 

Similar to Testes E2E em Cypress com JS (20)

Testes automatizados end-to-end com WordPress por Fabio Nas
Testes automatizados end-to-end com WordPress por Fabio NasTestes automatizados end-to-end com WordPress por Fabio Nas
Testes automatizados end-to-end com WordPress por Fabio Nas
 
Test day 2012
Test day 2012Test day 2012
Test day 2012
 
Implementando Implementando eXtreme treme Programming rogramming em em Java Java
Implementando Implementando eXtreme treme Programming rogramming em em Java JavaImplementando Implementando eXtreme treme Programming rogramming em em Java Java
Implementando Implementando eXtreme treme Programming rogramming em em Java Java
 
Testes com TestLink e Selenium
Testes com TestLink e SeleniumTestes com TestLink e Selenium
Testes com TestLink e Selenium
 
Testando sua aplicação asp.net mvc de forma automatizada de ponta a ponta
Testando sua aplicação asp.net mvc de forma automatizada de ponta a pontaTestando sua aplicação asp.net mvc de forma automatizada de ponta a ponta
Testando sua aplicação asp.net mvc de forma automatizada de ponta a ponta
 
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
 
Automação de Teste em Front End - Caipira Ágil
Automação de Teste em Front End - Caipira ÁgilAutomação de Teste em Front End - Caipira Ágil
Automação de Teste em Front End - Caipira Ágil
 
Por que automatizar testes de software?
Por que automatizar testes de software?Por que automatizar testes de software?
Por que automatizar testes de software?
 
Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
 
Desenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes UnitáriosDesenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes Unitários
 
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
Scrum Gathering Rio 2015 - Testando na nuvem a UI e o JavaScript de sua aplic...
 
Testes de Unidade com Junit
Testes de Unidade com JunitTestes de Unidade com Junit
Testes de Unidade com Junit
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
 
Qualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALMQualidade de software com Visual Studio ALM
Qualidade de software com Visual Studio ALM
 
Qualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnitQualidade no desenvolvimento de Software com TDD e PHPUnit
Qualidade no desenvolvimento de Software com TDD e PHPUnit
 
MoT-RJ: Identificando mudanças com snapshots teste - Ana Izabel
MoT-RJ: Identificando mudanças com snapshots teste - Ana IzabelMoT-RJ: Identificando mudanças com snapshots teste - Ana Izabel
MoT-RJ: Identificando mudanças com snapshots teste - Ana Izabel
 
Cypress-CPGOIAS-2023
Cypress-CPGOIAS-2023Cypress-CPGOIAS-2023
Cypress-CPGOIAS-2023
 
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas RápidasDevOps na AWS: Construindo Sistemas para Entregas Rápidas
DevOps na AWS: Construindo Sistemas para Entregas Rápidas
 
Xamarin UI Test + BDD Specflow
Xamarin UI Test + BDD SpecflowXamarin UI Test + BDD Specflow
Xamarin UI Test + BDD Specflow
 
JUnit Experience
JUnit ExperienceJUnit Experience
JUnit Experience
 

Recently uploaded

Recently uploaded (9)

ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
Luís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdfLuís Kitota AWS Discovery Day Ka Solution.pdf
Luís Kitota AWS Discovery Day Ka Solution.pdf
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Programação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdfProgramação Orientada a Objetos - 4 Pilares.pdf
Programação Orientada a Objetos - 4 Pilares.pdf
 
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docxATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
ATIVIDADE 1 - SISTEMAS DISTRIBUÍDOS E REDES - 52_2024.docx
 

Testes E2E em Cypress com JS

  • 2. ● Mãe da Luíza ● Engenheira de Qualidade - Itaú ● Founder do QALadies ● Formada em Bacharel em Ciência da Computação pela UNINOVE ● Apaixonada por Coordenação de Eventos e Palestras ● 11 anos de experiência em Desenvolvimento e 5 de QA I am Nàtali Cabral
  • 4. É uma metodologia utilizada para testar se o fluxo de um aplicativo está sendo executado conforme o projeto do início ao fim É um forma de realizar testes nas quais visam provar o sistema de uma forma mais completa simulando o ambiente real O que é testes E2E ? Como por exemplo automatizar os testes regresivos.
  • 5. Na piramide de testes
  • 6. Cypress a solução para muitos problemas
  • 7. “O Cypress.io é um framework de testes automatizados end-to-end usando JavaScript! Mas não vai achando que é mais um framework "modinha" que surgiu por aí, ele é surpreendente porque suas características e também pelo seu principalmente mecanismo . Vamos entender um pouco mais?
  • 8. Para utilizar JS para fazer uma automação E2E, tínhamos que escolher : ● Um framework como (mocka, Jasmine, JUnit) ● Uma biblioteca que faça uma boa integração (Chai, Expect.js) ● Usar o Selenium para poder fazer a comunicação com os elementos do DOM enviando comandos de forma remota e isso tudo envelopado (wrapper) pelo Protractor ou Webdriver, etc. Antes do Cypress
  • 9. …Resumindo o slide anterior Cyprees faz tudo isso e muito mais sem Selenium.
  • 10. O quanto tudo isso é custoso?
  • 11. 02Número de ferramentas a ser utilizado Curva de aprendizado 01 Sem limitação para aplicação 04Serialização de objeto 03
  • 12. ● É open source O/ ● É executado no mesmo ciclo de execução da aplicação ● Atrás do Cypress é um processo do servidor Node.js ● O Cypress é o processo Node.js comunicam, sincroniza e executa tarefas constantemente. ● Ter acesso a ambas as partes (back e front) Arquitetura do Cypress
  • 13. ● Testes em Javascript. ● Continuous Integration. ● Time Travel. ● Real time reloads. ● Automatic waiting. ● Spies, stubs e clocks. ● Controle do tráfego de rede. ● Screenshots e vídeos. ● Testar responsividade em web apps. Principais pontos do Cypress
  • 16. ViewPorts com Cypress Teste a responsividade sem se preocupar https://docs.cypress.io/api/commands/viewport.html#Arguments
  • 18. Iniciando um projeto com Cypress do zero 1. Crie um diretório 2. De npm init -y para criar seu package.json 3. Depois de npm install cypress --save 4. Npx cypress open 5. Veja os exemplos que o cypress já trás pronto para você
  • 19. Iniciando um projeto com Cypress do zero Fixtures: É onde seus mocks são armazenados podendo ser utilizados em qualquer teste. Integrations: Aqui é o diretório onde criará seus arquivos de teste exemplo : app_spec.js ou .js .jsx .coffee .cjsx. Plugins: Com eles é possível trocar, modificar ou estender o comportamento interno do Cypress. Support: Neste diretório é possível criar comandos que podem ser executados dentro dos testes ou sobrescrever comandos já existentes. Exemplo de comandos: - Comando para login ( Evitar duplicação de código) - Comando para logout
  • 20. Iniciando um projeto com Cypress do zero