SlideShare uma empresa Scribd logo
Testes automatizados
end-to-end (E2E)
com WordPress
Por: Fábio Nas linkedin.com/in/fabio-nas-ba649574
fabionasario@gmail.com
O objetivo desta apresentação é ajudar na decisão de usar
ou não testes automatizados E2E em nossos projetos
WordPress e onde ele são mais adequados.
O que vamos ver:
● Introdução aos testes de software
● Apresentar o que são testes end-to-end (E2E)
● Listar as ferramentas mais utilizadas no momento
● Mostrar um exemplo prático de teste utilizando Cypress
● Levantar a principal indagação: “Usar ou não em meus projetos
WordPress”
O que são testes de softwares?
“O teste do software é a investigação do software a fim de fornecer
informações sobre sua qualidade em relação ao contexto em que ele deve
operar, se relaciona com o conceito de verificação e validação.”
Fonte: https://pt.wikipedia.org/wiki/Teste_de_software.
Acesso em 21.11.2019
Obs.: Testes podem ser
automatizados ou não
Como você testa suas aplicações?
Faço um teste
antes de
colocar em
produção
O cliente testa pramim quando já estáem produção.
(Obs.: Não sei porque, mas aorelha sempre esquenta)
Faço todos
os tipos de
testes.
(tiroso!)
(Dá uma
trabalheira!)
Não faço nada!
O WordPress já vem testado
Testo tudo
na mão!
Faço testes de
junto com o cliente
Faço testesautomatizados das
partes mais importantes
Afinal! O que testar?
Velocidade?
Desempenho?
Estruturas?
Processos?
UX?
Funcionalidades?
Interfaces?
Sem
bugs!
Leiaute?
UI?
Divisão dos tipos de testes
Pirâmide de automação de testes tradicional com
base nos conceitos de Mike Cohn:
https://en.wikipedia.org/wiki/Mike_Cohn
E2E
Aceitação
UI (Funcional)
Integração
(entre módulos, classes,
componentes, serviços)
Unitários
(de classes, componentes, funções)
Menos testes; maior
integração; mais caros
Mais testes; menor
integração; mais baratos
Outra visão da divisão de testes
E2E
Aceitação
UI (Funcional)
Integração
(entre módulos, classes,
componentes, serviços)
Unitários
(de classes, componentes, funções)
Os testes de Integração e E2E
aumentaram nos últimos tempos
em relação aos testes unitários.
As ferramentas de automação E2E
evoluíram bastante, barateando e
facilitando a sua adoção
Obs.: A divisão dos tipos de testes já não tem mais a forma de pirâmide. Por isso, por enquanto
aqui temos a forma de um quadrado, significando que as quantidades de tipos de testes podem ser
bem diferentes conforme a aplicação que se quer testar.
Lista das ferramentas de testes web mais conhecidas
● Selenium
● Jest
● Cypress
● Karma
● Mocka
● Chai
● Jasmine
● Nightwatch
● Nightmare
● Puppeteer
● Behat (BDD php)
● Cucumber
● …
Nosso foco nesta
apresentação:
Testes automatizados E2E
Testes E2E também
são utilizados como
testes de interface e
de aceitação
São testes executados de forma controlada por
software e que testam uma aplicação ou um
sistema, simulando, como se fosse um usuário final
Automatizando E2E
com Cypress
The web has evolved.
Finally, testing has too.
(A web evoluiu.
Finalmente,
o teste também.)
Cypress para testes automatizados E2E
Uma ferramenta integrada
All-in-one testing:
runner +
assertion +
mocking +
visual debug
○ Set up tests
○ Write tests
○ Run tests
○ Record tests
Instalação
Cypress para
Mac, Linux, ou
Windows
Frase deles no site:
cypress.io
Licença permissiva
MIT:
https://github.com/cypress-io/cypress
Instalações
1. Instalar nodejs:
Ver em https://nodejs.org/en/download/
2. Criar pasta do projeto. Ex.: cypress-wpfloripa
3. Dentro da pasta do projeto iniciar projeto:
npm init -y
4. Instalar cypress para o projeto:
npm install -D cypress
5. Execute o cypress para criar as pastas de teste:
./node_modules/.bin/cypress open
6. Espere o aplicativo gráfico do cypress abrir e feche cypress
no terminal pressionando CTRL+C:
Criar arquivo de especificação de testes
1. Criar pasta wpfloripa
dentro da pasta
cypress/integration
2. Criar arquivo de
especificação de testes
wpfloripa.spec.js,
conforme imagem.
Fazendo um primeiro teste
describe('Meu primeiro teste', () => {
it('Deve ser true', () => {
expect(true).to.equal(true);
})
});
1. Digite este código dentro de wpfloripa.spec.js:
2. Execute o cypress dentro do projeto:
./node_modules/.bin/cypress
open
Obs.: Espere o aplicativo gráfico do cypress abrir
Fazendo um primeiro teste
Fazendo um primeiro teste
# Testa página do wpfloripa
1. Visitar o site https://wpfloripa.com.br
2. O título da página deve conter 'comunidade WordPress Floripa'
3. Testar se na página que contém a string ‘QUERO PARTICIPAR’
4. Testar se existe o item de menu de navegação ‘BLOG’
5. Testar se o item de navegação ‘BLOG’ está chamando a página correta
Vamos definir sequência lógica de teste E2E
Normalmente a lógica de teste deve cobrir determinados
objetivos de regras de negócios definidos para o projeto
Itens 1 e 2 - Visita o site e testa o título
Item 3 - Se contem ‘QUERO PARTICIPAR’
Item 4 - Testa se existe menu ‘BLOG’
Item 5 - Testa se ‘BLOG’ chama página correta
Outro exemplo: testando página de captura
Em que situação você usaria testes E2E?
● E2E é adequado para WordPress?
● Quais páginas são mais interessantes testar?
● Devo usar E2E se eu fizer um plugin?
● Livre para outras perguntas ????
Dúvidas?
Informações de contato
Fábio Nas
Perfil linkedin:
linkedin.com/in/fabio-nas-ba649574
E-mail:
fabionasario@gmail.com
Link e referências
● Succeeding with Agile: Software Development Using Scrum 1st Edition
○ https://www.amazon.com/Succeeding-Agile-Software-Development-Using/d
p/0321579364
● The Practical Test Pyramid
○ https://martinfowler.com/articles/practical-test-pyramid.html
● Cypress Guides
○ https://docs.cypress.io/pt-br/guides/overview/why-cypress.html
●

Mais conteúdo relacionado

Mais procurados

TestNG
TestNGTestNG
Ppt of soap ui
Ppt of soap uiPpt of soap ui
Ppt of soap ui
pkslide28
 
Selenium interview questions
Selenium interview questionsSelenium interview questions
Selenium interview questions
girichinna27
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
sharmaparish
 
Rest assured
Rest assuredRest assured
Rest assured
Varun Deshpande
 
TDC2015: Testes em APIs REST com Rest-Assured
TDC2015: Testes em APIs REST com Rest-AssuredTDC2015: Testes em APIs REST com Rest-Assured
TDC2015: Testes em APIs REST com Rest-Assured
Júlio de Lima
 
Testing microservices with rest assured
Testing microservices with rest assuredTesting microservices with rest assured
Testing microservices with rest assured
Kushan Shalindra Amarasiri - Technical QE Specialist
 
BDD with Cucumber
BDD with CucumberBDD with Cucumber
BDD with Cucumber
Knoldus Inc.
 
Criando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssuredCriando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssured
Elias Nogueira
 
Enhanced Web Service Testing: A Better Mock Structure
Enhanced Web Service Testing: A Better Mock StructureEnhanced Web Service Testing: A Better Mock Structure
Enhanced Web Service Testing: A Better Mock Structure
Salesforce Developers
 
Test cases
Test casesTest cases
Test cases
Chandra Maddigapu
 
Testing types functional and nonfunctional - Kati Holasz
Testing types   functional and nonfunctional - Kati HolaszTesting types   functional and nonfunctional - Kati Holasz
Testing types functional and nonfunctional - Kati Holasz
Holasz Kati
 
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
Rhoynar Software Consulting
 
RESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and JenkinsRESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and Jenkins
QASymphony
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API Testing
Sauce Labs
 
Postman.ppt
Postman.pptPostman.ppt
Postman.ppt
ParrotBAD
 
Selenium- A Software Testing Tool
Selenium- A Software Testing ToolSelenium- A Software Testing Tool
Selenium- A Software Testing Tool
Zeba Tahseen
 
Selenium
SeleniumSelenium
Selenium
Kalyan ch
 
Test Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comTest Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.com
Idexcel Technologies
 
Selenium ppt
Selenium pptSelenium ppt
Selenium ppt
Aneesh Rangarajan
 

Mais procurados (20)

TestNG
TestNGTestNG
TestNG
 
Ppt of soap ui
Ppt of soap uiPpt of soap ui
Ppt of soap ui
 
Selenium interview questions
Selenium interview questionsSelenium interview questions
Selenium interview questions
 
Performance Testing
Performance TestingPerformance Testing
Performance Testing
 
Rest assured
Rest assuredRest assured
Rest assured
 
TDC2015: Testes em APIs REST com Rest-Assured
TDC2015: Testes em APIs REST com Rest-AssuredTDC2015: Testes em APIs REST com Rest-Assured
TDC2015: Testes em APIs REST com Rest-Assured
 
Testing microservices with rest assured
Testing microservices with rest assuredTesting microservices with rest assured
Testing microservices with rest assured
 
BDD with Cucumber
BDD with CucumberBDD with Cucumber
BDD with Cucumber
 
Criando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssuredCriando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssured
 
Enhanced Web Service Testing: A Better Mock Structure
Enhanced Web Service Testing: A Better Mock StructureEnhanced Web Service Testing: A Better Mock Structure
Enhanced Web Service Testing: A Better Mock Structure
 
Test cases
Test casesTest cases
Test cases
 
Testing types functional and nonfunctional - Kati Holasz
Testing types   functional and nonfunctional - Kati HolaszTesting types   functional and nonfunctional - Kati Holasz
Testing types functional and nonfunctional - Kati Holasz
 
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
 
RESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and JenkinsRESTful API Testing using Postman, Newman, and Jenkins
RESTful API Testing using Postman, Newman, and Jenkins
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API Testing
 
Postman.ppt
Postman.pptPostman.ppt
Postman.ppt
 
Selenium- A Software Testing Tool
Selenium- A Software Testing ToolSelenium- A Software Testing Tool
Selenium- A Software Testing Tool
 
Selenium
SeleniumSelenium
Selenium
 
Test Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.comTest Automation Framework Design | www.idexcel.com
Test Automation Framework Design | www.idexcel.com
 
Selenium ppt
Selenium pptSelenium ppt
Selenium ppt
 

Semelhante a Testes automatizados end-to-end com WordPress por Fabio Nas

Curso Básico de Selenium
Curso Básico de SeleniumCurso Básico de Selenium
Curso Básico de Selenium
Autotic
 
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
tdc-globalcode
 
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
GUTS-RS
 
Desenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes UnitáriosDesenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes UnitáriosVitor Silva
 
Solucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.ioSolucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.io
Patrick Monteiro
 
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
Isaac de Souza
 
Teste cabra da peste
Teste cabra da pesteTeste cabra da peste
Teste cabra da peste
Michele Silva
 
Testes E2E em Cypress com JS
Testes E2E em Cypress com JSTestes E2E em Cypress com JS
Testes E2E em Cypress com JS
Nàtali Cabral
 
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdfINTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
RonaldAlves15
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
testedesoftwarepe
 
Test day 2012
Test day 2012Test day 2012
Test day 2012
Wellington Marion
 
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
 
Automação de testes funcionais com selenium webdriver
Automação de testes funcionais com selenium webdriverAutomação de testes funcionais com selenium webdriver
Automação de testes funcionais com selenium webdriver
Qualister
 
13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver
13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver
13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver
Júlio de Lima
 
Por que automatizar testes de software?
Por que automatizar testes de software?Por que automatizar testes de software?
Por que automatizar testes de software?
Samuel Lourenço
 
Gerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxGerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptx
Roberto Nunes
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por Testes
Camilo Ribeiro
 
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
 
Noções em teste de software e introdução a automação
Noções em teste de software e introdução a automaçãoNoções em teste de software e introdução a automação
Noções em teste de software e introdução a automação
Sandy Maciel
 

Semelhante a Testes automatizados end-to-end com WordPress por Fabio Nas (20)

Curso Básico de Selenium
Curso Básico de SeleniumCurso Básico de Selenium
Curso Básico de 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
 
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
[GUTS-RS] Workshop (prático) de Testes Automatizados para dispositivos móveis...
 
Desenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes UnitáriosDesenvolvimento em .Net - Testes Unitários
Desenvolvimento em .Net - Testes Unitários
 
Solucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.ioSolucionando a Teoria do Caos com Cypress.io
Solucionando a Teoria do Caos com Cypress.io
 
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
O que seus testes garantem, o funcionamento do código ou das funcionalidades ...
 
Teste cabra da peste
Teste cabra da pesteTeste cabra da peste
Teste cabra da peste
 
Testes E2E em Cypress com JS
Testes E2E em Cypress com JSTestes E2E em Cypress com JS
Testes E2E em Cypress com JS
 
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdfINTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
INTRODUÇÃO AOS TESTES NO FRONT-END COM REACT JS E REACT NATIVE.pdf
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
 
Test day 2012
Test day 2012Test day 2012
Test day 2012
 
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
 
Automação de testes funcionais com selenium webdriver
Automação de testes funcionais com selenium webdriverAutomação de testes funcionais com selenium webdriver
Automação de testes funcionais com selenium webdriver
 
13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver
13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver
13º É dia de Java: Automação de Testes Funcionais com Selenium Web driver
 
Por que automatizar testes de software?
Por que automatizar testes de software?Por que automatizar testes de software?
Por que automatizar testes de software?
 
Gerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptxGerenciamento da Qualidade de Software 4.pptx
Gerenciamento da Qualidade de Software 4.pptx
 
Desenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por TestesDesenvolvimento Dirigido por Testes
Desenvolvimento Dirigido por Testes
 
Testes com TestLink e Selenium
Testes com TestLink e SeleniumTestes com TestLink e Selenium
Testes com TestLink e Selenium
 
Desenvolvimento Guiado por Testes
Desenvolvimento Guiado por TestesDesenvolvimento Guiado por Testes
Desenvolvimento Guiado por Testes
 
Noções em teste de software e introdução a automação
Noções em teste de software e introdução a automaçãoNoções em teste de software e introdução a automação
Noções em teste de software e introdução a automação
 

Mais de WordCamp Floripa

WordCamp Floripa 2021 - Isreal - A proporcionalidade do crescimento em tecnol...
WordCamp Floripa 2021 - Isreal - A proporcionalidade do crescimento em tecnol...WordCamp Floripa 2021 - Isreal - A proporcionalidade do crescimento em tecnol...
WordCamp Floripa 2021 - Isreal - A proporcionalidade do crescimento em tecnol...
WordCamp Floripa
 
WordCamp Floripa 2021 - Luciane Costa - Pare de escrever para o robô: conteúd...
WordCamp Floripa 2021 - Luciane Costa - Pare de escrever para o robô: conteúd...WordCamp Floripa 2021 - Luciane Costa - Pare de escrever para o robô: conteúd...
WordCamp Floripa 2021 - Luciane Costa - Pare de escrever para o robô: conteúd...
WordCamp Floripa
 
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
WordCamp Floripa
 
WordCamp Floripa 2021 - Eliane - Seu site limita o acesso dos usuários? Como ...
WordCamp Floripa 2021 - Eliane - Seu site limita o acesso dos usuários? Como ...WordCamp Floripa 2021 - Eliane - Seu site limita o acesso dos usuários? Como ...
WordCamp Floripa 2021 - Eliane - Seu site limita o acesso dos usuários? Como ...
WordCamp Floripa
 
WordCamp Floripa 2021 - Amilton Justino - É possível invadir um WordPress at...
WordCamp Floripa 2021 - Amilton Justino - É possível invadir um WordPress at...WordCamp Floripa 2021 - Amilton Justino - É possível invadir um WordPress at...
WordCamp Floripa 2021 - Amilton Justino - É possível invadir um WordPress at...
WordCamp Floripa
 
WordCamp Floripa 2021 - David Arty - Marketing e WordPress
WordCamp Floripa 2021 - David Arty - Marketing e WordPressWordCamp Floripa 2021 - David Arty - Marketing e WordPress
WordCamp Floripa 2021 - David Arty - Marketing e WordPress
WordCamp Floripa
 
WordCamp Floripa 2021 - Daniel - Core web vitals e WordPress
WordCamp Floripa 2021 - Daniel  - Core web vitals e WordPressWordCamp Floripa 2021 - Daniel  - Core web vitals e WordPress
WordCamp Floripa 2021 - Daniel - Core web vitals e WordPress
WordCamp Floripa
 
WordCamp Floripa 2021 - Fernando Nilson - Análise de vulnerabilidade
WordCamp Floripa 2021 - Fernando Nilson - Análise de vulnerabilidadeWordCamp Floripa 2021 - Fernando Nilson - Análise de vulnerabilidade
WordCamp Floripa 2021 - Fernando Nilson - Análise de vulnerabilidade
WordCamp Floripa
 
GUTENBERG EM PRODUÇÃO: QUALIDADES, DESAFIOS
GUTENBERG EM PRODUÇÃO: QUALIDADES, DESAFIOSGUTENBERG EM PRODUÇÃO: QUALIDADES, DESAFIOS
GUTENBERG EM PRODUÇÃO: QUALIDADES, DESAFIOS
WordCamp Floripa
 
Como empreender com WordPress por Daniel Pelicano
Como empreender com WordPress por Daniel PelicanoComo empreender com WordPress por Daniel Pelicano
Como empreender com WordPress por Daniel Pelicano
WordCamp Floripa
 
Dicas para otimizar o WordPress por Felipe Figueiredo
Dicas para otimizar o WordPress por Felipe FigueiredoDicas para otimizar o WordPress por Felipe Figueiredo
Dicas para otimizar o WordPress por Felipe Figueiredo
WordCamp Floripa
 
Abertura 25º Meetup WordPress Floripa - Lucas Adiers Stefanello
Abertura 25º Meetup WordPress Floripa - Lucas Adiers StefanelloAbertura 25º Meetup WordPress Floripa - Lucas Adiers Stefanello
Abertura 25º Meetup WordPress Floripa - Lucas Adiers Stefanello
WordCamp Floripa
 
WordPress 5.3: Adeus site builders por Felipe Figueiredo
WordPress 5.3: Adeus site builders por Felipe FigueiredoWordPress 5.3: Adeus site builders por Felipe Figueiredo
WordPress 5.3: Adeus site builders por Felipe Figueiredo
WordCamp Floripa
 
O que não te contam sobre WordPress por Willian Ramos
O que não te contam sobre WordPress por Willian RamosO que não te contam sobre WordPress por Willian Ramos
O que não te contam sobre WordPress por Willian Ramos
WordCamp Floripa
 
Marketing Social: resultados de ações de impacto social nas empresas
Marketing Social: resultados de ações de impacto social nas empresasMarketing Social: resultados de ações de impacto social nas empresas
Marketing Social: resultados de ações de impacto social nas empresas
WordCamp Floripa
 
Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...
Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...
Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...
WordCamp Floripa
 
Lucas Adiers Stefanello apresenta a abertura do WordCamp Floripa 2019
Lucas Adiers Stefanello apresenta a abertura do WordCamp Floripa 2019Lucas Adiers Stefanello apresenta a abertura do WordCamp Floripa 2019
Lucas Adiers Stefanello apresenta a abertura do WordCamp Floripa 2019
WordCamp Floripa
 
Amilton Justino apresenta GDPR/LGPD - A Solução está nos Plugins?
Amilton Justino apresenta GDPR/LGPD - A Solução está nos Plugins?Amilton Justino apresenta GDPR/LGPD - A Solução está nos Plugins?
Amilton Justino apresenta GDPR/LGPD - A Solução está nos Plugins?
WordCamp Floripa
 
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
WordCamp Floripa
 
Vinícius Lourenço apresenta WordPress como carro-chefe do seu negócio: desafi...
Vinícius Lourenço apresenta WordPress como carro-chefe do seu negócio: desafi...Vinícius Lourenço apresenta WordPress como carro-chefe do seu negócio: desafi...
Vinícius Lourenço apresenta WordPress como carro-chefe do seu negócio: desafi...
WordCamp Floripa
 

Mais de WordCamp Floripa (20)

WordCamp Floripa 2021 - Isreal - A proporcionalidade do crescimento em tecnol...
WordCamp Floripa 2021 - Isreal - A proporcionalidade do crescimento em tecnol...WordCamp Floripa 2021 - Isreal - A proporcionalidade do crescimento em tecnol...
WordCamp Floripa 2021 - Isreal - A proporcionalidade do crescimento em tecnol...
 
WordCamp Floripa 2021 - Luciane Costa - Pare de escrever para o robô: conteúd...
WordCamp Floripa 2021 - Luciane Costa - Pare de escrever para o robô: conteúd...WordCamp Floripa 2021 - Luciane Costa - Pare de escrever para o robô: conteúd...
WordCamp Floripa 2021 - Luciane Costa - Pare de escrever para o robô: conteúd...
 
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
WordCamp Floripa 2021 - Gabriel Cano - Sage Framework – O melhor do PHP em um...
 
WordCamp Floripa 2021 - Eliane - Seu site limita o acesso dos usuários? Como ...
WordCamp Floripa 2021 - Eliane - Seu site limita o acesso dos usuários? Como ...WordCamp Floripa 2021 - Eliane - Seu site limita o acesso dos usuários? Como ...
WordCamp Floripa 2021 - Eliane - Seu site limita o acesso dos usuários? Como ...
 
WordCamp Floripa 2021 - Amilton Justino - É possível invadir um WordPress at...
WordCamp Floripa 2021 - Amilton Justino - É possível invadir um WordPress at...WordCamp Floripa 2021 - Amilton Justino - É possível invadir um WordPress at...
WordCamp Floripa 2021 - Amilton Justino - É possível invadir um WordPress at...
 
WordCamp Floripa 2021 - David Arty - Marketing e WordPress
WordCamp Floripa 2021 - David Arty - Marketing e WordPressWordCamp Floripa 2021 - David Arty - Marketing e WordPress
WordCamp Floripa 2021 - David Arty - Marketing e WordPress
 
WordCamp Floripa 2021 - Daniel - Core web vitals e WordPress
WordCamp Floripa 2021 - Daniel  - Core web vitals e WordPressWordCamp Floripa 2021 - Daniel  - Core web vitals e WordPress
WordCamp Floripa 2021 - Daniel - Core web vitals e WordPress
 
WordCamp Floripa 2021 - Fernando Nilson - Análise de vulnerabilidade
WordCamp Floripa 2021 - Fernando Nilson - Análise de vulnerabilidadeWordCamp Floripa 2021 - Fernando Nilson - Análise de vulnerabilidade
WordCamp Floripa 2021 - Fernando Nilson - Análise de vulnerabilidade
 
GUTENBERG EM PRODUÇÃO: QUALIDADES, DESAFIOS
GUTENBERG EM PRODUÇÃO: QUALIDADES, DESAFIOSGUTENBERG EM PRODUÇÃO: QUALIDADES, DESAFIOS
GUTENBERG EM PRODUÇÃO: QUALIDADES, DESAFIOS
 
Como empreender com WordPress por Daniel Pelicano
Como empreender com WordPress por Daniel PelicanoComo empreender com WordPress por Daniel Pelicano
Como empreender com WordPress por Daniel Pelicano
 
Dicas para otimizar o WordPress por Felipe Figueiredo
Dicas para otimizar o WordPress por Felipe FigueiredoDicas para otimizar o WordPress por Felipe Figueiredo
Dicas para otimizar o WordPress por Felipe Figueiredo
 
Abertura 25º Meetup WordPress Floripa - Lucas Adiers Stefanello
Abertura 25º Meetup WordPress Floripa - Lucas Adiers StefanelloAbertura 25º Meetup WordPress Floripa - Lucas Adiers Stefanello
Abertura 25º Meetup WordPress Floripa - Lucas Adiers Stefanello
 
WordPress 5.3: Adeus site builders por Felipe Figueiredo
WordPress 5.3: Adeus site builders por Felipe FigueiredoWordPress 5.3: Adeus site builders por Felipe Figueiredo
WordPress 5.3: Adeus site builders por Felipe Figueiredo
 
O que não te contam sobre WordPress por Willian Ramos
O que não te contam sobre WordPress por Willian RamosO que não te contam sobre WordPress por Willian Ramos
O que não te contam sobre WordPress por Willian Ramos
 
Marketing Social: resultados de ações de impacto social nas empresas
Marketing Social: resultados de ações de impacto social nas empresasMarketing Social: resultados de ações de impacto social nas empresas
Marketing Social: resultados de ações de impacto social nas empresas
 
Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...
Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...
Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...
 
Lucas Adiers Stefanello apresenta a abertura do WordCamp Floripa 2019
Lucas Adiers Stefanello apresenta a abertura do WordCamp Floripa 2019Lucas Adiers Stefanello apresenta a abertura do WordCamp Floripa 2019
Lucas Adiers Stefanello apresenta a abertura do WordCamp Floripa 2019
 
Amilton Justino apresenta GDPR/LGPD - A Solução está nos Plugins?
Amilton Justino apresenta GDPR/LGPD - A Solução está nos Plugins?Amilton Justino apresenta GDPR/LGPD - A Solução está nos Plugins?
Amilton Justino apresenta GDPR/LGPD - A Solução está nos Plugins?
 
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
Vitor Hugo Bastos Cardoso apresenta voando alto com WordPress: um guia prátic...
 
Vinícius Lourenço apresenta WordPress como carro-chefe do seu negócio: desafi...
Vinícius Lourenço apresenta WordPress como carro-chefe do seu negócio: desafi...Vinícius Lourenço apresenta WordPress como carro-chefe do seu negócio: desafi...
Vinícius Lourenço apresenta WordPress como carro-chefe do seu negócio: desafi...
 

Testes automatizados end-to-end com WordPress por Fabio Nas

  • 1. Testes automatizados end-to-end (E2E) com WordPress Por: Fábio Nas linkedin.com/in/fabio-nas-ba649574 fabionasario@gmail.com
  • 2. O objetivo desta apresentação é ajudar na decisão de usar ou não testes automatizados E2E em nossos projetos WordPress e onde ele são mais adequados.
  • 3. O que vamos ver: ● Introdução aos testes de software ● Apresentar o que são testes end-to-end (E2E) ● Listar as ferramentas mais utilizadas no momento ● Mostrar um exemplo prático de teste utilizando Cypress ● Levantar a principal indagação: “Usar ou não em meus projetos WordPress”
  • 4. O que são testes de softwares? “O teste do software é a investigação do software a fim de fornecer informações sobre sua qualidade em relação ao contexto em que ele deve operar, se relaciona com o conceito de verificação e validação.” Fonte: https://pt.wikipedia.org/wiki/Teste_de_software. Acesso em 21.11.2019 Obs.: Testes podem ser automatizados ou não
  • 5. Como você testa suas aplicações? Faço um teste antes de colocar em produção O cliente testa pramim quando já estáem produção. (Obs.: Não sei porque, mas aorelha sempre esquenta) Faço todos os tipos de testes. (tiroso!) (Dá uma trabalheira!) Não faço nada! O WordPress já vem testado Testo tudo na mão! Faço testes de junto com o cliente Faço testesautomatizados das partes mais importantes
  • 6. Afinal! O que testar? Velocidade? Desempenho? Estruturas? Processos? UX? Funcionalidades? Interfaces? Sem bugs! Leiaute? UI?
  • 7. Divisão dos tipos de testes Pirâmide de automação de testes tradicional com base nos conceitos de Mike Cohn: https://en.wikipedia.org/wiki/Mike_Cohn E2E Aceitação UI (Funcional) Integração (entre módulos, classes, componentes, serviços) Unitários (de classes, componentes, funções) Menos testes; maior integração; mais caros Mais testes; menor integração; mais baratos
  • 8. Outra visão da divisão de testes E2E Aceitação UI (Funcional) Integração (entre módulos, classes, componentes, serviços) Unitários (de classes, componentes, funções) Os testes de Integração e E2E aumentaram nos últimos tempos em relação aos testes unitários. As ferramentas de automação E2E evoluíram bastante, barateando e facilitando a sua adoção Obs.: A divisão dos tipos de testes já não tem mais a forma de pirâmide. Por isso, por enquanto aqui temos a forma de um quadrado, significando que as quantidades de tipos de testes podem ser bem diferentes conforme a aplicação que se quer testar.
  • 9. Lista das ferramentas de testes web mais conhecidas ● Selenium ● Jest ● Cypress ● Karma ● Mocka ● Chai ● Jasmine ● Nightwatch ● Nightmare ● Puppeteer ● Behat (BDD php) ● Cucumber ● …
  • 10. Nosso foco nesta apresentação: Testes automatizados E2E Testes E2E também são utilizados como testes de interface e de aceitação São testes executados de forma controlada por software e que testam uma aplicação ou um sistema, simulando, como se fosse um usuário final
  • 12. The web has evolved. Finally, testing has too. (A web evoluiu. Finalmente, o teste também.) Cypress para testes automatizados E2E Uma ferramenta integrada All-in-one testing: runner + assertion + mocking + visual debug ○ Set up tests ○ Write tests ○ Run tests ○ Record tests Instalação Cypress para Mac, Linux, ou Windows Frase deles no site: cypress.io Licença permissiva MIT: https://github.com/cypress-io/cypress
  • 13. Instalações 1. Instalar nodejs: Ver em https://nodejs.org/en/download/ 2. Criar pasta do projeto. Ex.: cypress-wpfloripa 3. Dentro da pasta do projeto iniciar projeto: npm init -y 4. Instalar cypress para o projeto: npm install -D cypress 5. Execute o cypress para criar as pastas de teste: ./node_modules/.bin/cypress open 6. Espere o aplicativo gráfico do cypress abrir e feche cypress no terminal pressionando CTRL+C:
  • 14. Criar arquivo de especificação de testes 1. Criar pasta wpfloripa dentro da pasta cypress/integration 2. Criar arquivo de especificação de testes wpfloripa.spec.js, conforme imagem.
  • 15. Fazendo um primeiro teste describe('Meu primeiro teste', () => { it('Deve ser true', () => { expect(true).to.equal(true); }) }); 1. Digite este código dentro de wpfloripa.spec.js: 2. Execute o cypress dentro do projeto: ./node_modules/.bin/cypress open Obs.: Espere o aplicativo gráfico do cypress abrir
  • 18. # Testa página do wpfloripa 1. Visitar o site https://wpfloripa.com.br 2. O título da página deve conter 'comunidade WordPress Floripa' 3. Testar se na página que contém a string ‘QUERO PARTICIPAR’ 4. Testar se existe o item de menu de navegação ‘BLOG’ 5. Testar se o item de navegação ‘BLOG’ está chamando a página correta Vamos definir sequência lógica de teste E2E Normalmente a lógica de teste deve cobrir determinados objetivos de regras de negócios definidos para o projeto
  • 19. Itens 1 e 2 - Visita o site e testa o título
  • 20. Item 3 - Se contem ‘QUERO PARTICIPAR’
  • 21. Item 4 - Testa se existe menu ‘BLOG’
  • 22. Item 5 - Testa se ‘BLOG’ chama página correta
  • 23. Outro exemplo: testando página de captura
  • 24. Em que situação você usaria testes E2E? ● E2E é adequado para WordPress? ● Quais páginas são mais interessantes testar? ● Devo usar E2E se eu fizer um plugin? ● Livre para outras perguntas ????
  • 25. Dúvidas? Informações de contato Fábio Nas Perfil linkedin: linkedin.com/in/fabio-nas-ba649574 E-mail: fabionasario@gmail.com
  • 26. Link e referências ● Succeeding with Agile: Software Development Using Scrum 1st Edition ○ https://www.amazon.com/Succeeding-Agile-Software-Development-Using/d p/0321579364 ● The Practical Test Pyramid ○ https://martinfowler.com/articles/practical-test-pyramid.html ● Cypress Guides ○ https://docs.cypress.io/pt-br/guides/overview/why-cypress.html ●