SlideShare uma empresa Scribd logo
Pirâmide de Testes
Diana Ungaro Arnos
Analista Desenvolvedora @ Agrosmart
Instrutora @ Caldo e Gouveia
@dianaarnos www.dianaarnos.com
PHP Web Developer, PHPWomen Evangelist
A Pirâmide
◉ Boa prática de automação
◉ Indicador visual da proporção ideal de
tipos de testes
◉ Serviço? (http://martinfowler.com/bliki/SubcutaneousTest.html)
◉ De onde veio?
UI
SERVICE
UNIT
Mike Cohn
Por quê essa divisão?
“
One reason teams found it difficult to write tests
sooner was because they were automating at the
wrong level. An effective test automation strategy
calls for automating tests at three different levels,
which depicts the test automation pyramid.
(Mike Cohn - Succeeding With Agile: Software Development Using Scrum)
Era uma vez, na vida real...
◉ "Esse sistema é legado, não dá 'pra' mexer direito e fazer
os testes que deveria" ou "não é grande coisa, não
precisa de tantos testes de unidade assim"
Anti-pattern: Ice cream cone
◉ "A gente garante testando entre os módulos" ou "é só
'bater na API' e comparar os resultados"
◉ "Rodamos o Selenium na interface aqui e já era" ou "só
fazer o 'click through' até finalizar o processo"
◉ "Só subir pra staging que pessoal de produto 'testa'".
Tudo.
MANUAL
UNIT
SERVICE
UI
A Base
◉ Testes de unidade são os mais
"fáceis" e rápidos de serem
executados
◉ Indicam exatamente (ou quase)
onde está o erro
◉ Garantem a integridade das
menores "peças" do sistema
UNIT
O Topo
◉ Testes de UI têm execução lenta
◉ São frágeis
◉ Mais complexos para escrever
UI
Automatize apenas smoke tests
Testar interface e não lógica de
processamento
The man in the middle
◉ Testes de integração
◉ Testes de API
◉ Testes fim-a-fim sem envolver a
interface
◉ Resumindo: o que foge ao escopo do
teste de unidade mas não chega à
interface
SERVICE
E se implementar a pirâmide...
◉ Builds mais rápidos
◉ Aplicação mais confiável
◉ Manutenção facilitada, tanto dos testes quanto
da aplicação
◉ Se quebrar o build, quebra de maneira
assertiva
E lembre-se: testes validam a solução e garantem
o funcionamento anterior
Perguntas?
◉ @dianaarnos
◉ Joind.in: https://joind.in/talk/73f8b
Obrigada!

Mais conteúdo relacionado

Mais procurados

Testes unitários e Mocks
Testes unitários e MocksTestes unitários e Mocks
Testes unitários e Mocks
Frederico Belisario
 
Mock it with mockito
Mock it with mockitoMock it with mockito
Mock it with mockito
Renan Uchôa
 
Palestra tdd - rsjug
Palestra tdd - rsjugPalestra tdd - rsjug
Palestra tdd - rsjug
Bruno Maomeh
 
Refatoração de Código Legado
Refatoração de Código LegadoRefatoração de Código Legado
Refatoração de Código Legado
Caesar Ralf Franz Hoppen
 
Testes Unitários - 1 Sessão beiraJUG
Testes Unitários - 1 Sessão beiraJUGTestes Unitários - 1 Sessão beiraJUG
Testes Unitários - 1 Sessão beiraJUG
beiraJUG
 
Testes Unitários/Integrados
Testes Unitários/IntegradosTestes Unitários/Integrados
Testes Unitários/Integrados
Giovanni Bassi
 
PHP Experience 2016 - [Palestra] Pirâmide de Testes
PHP Experience 2016 - [Palestra] Pirâmide de TestesPHP Experience 2016 - [Palestra] Pirâmide de Testes
PHP Experience 2016 - [Palestra] Pirâmide de Testes
iMasters
 
JUnit Experience
JUnit ExperienceJUnit Experience
JUnit Experience
Renan Uchôa
 
Teste baseado em modelos
Teste baseado em modelosTeste baseado em modelos
Teste baseado em modelos
Andreza Pollyana
 
Behavior-Driven Development (BDD) - QA Ninja Conf 2016
Behavior-Driven Development (BDD) - QA Ninja Conf 2016Behavior-Driven Development (BDD) - QA Ninja Conf 2016
Behavior-Driven Development (BDD) - QA Ninja Conf 2016
Renato Groff
 
Testes de unidade - RP Tec Com
Testes de unidade - RP Tec ComTestes de unidade - RP Tec Com
Testes de unidade - RP Tec Com
Igor Rozani
 
Teste Estrutural usando a ferramenta Jabuti
Teste Estrutural usando a ferramenta JabutiTeste Estrutural usando a ferramenta Jabuti
Teste Estrutural usando a ferramenta Jabuti
Inael Rodrigues
 
Palestra TDD - TDC - 2016
Palestra TDD - TDC - 2016Palestra TDD - TDC - 2016
Palestra TDD - TDC - 2016
Bruno Maomeh
 
Mocking Test - QA Ninja Conf 2016
Mocking Test - QA Ninja Conf 2016Mocking Test - QA Ninja Conf 2016
Mocking Test - QA Ninja Conf 2016
Renato Groff
 
Mocks, Stubs e Fakes - Developers-SP - Julho-2017
Mocks, Stubs e Fakes - Developers-SP - Julho-2017Mocks, Stubs e Fakes - Developers-SP - Julho-2017
Mocks, Stubs e Fakes - Developers-SP - Julho-2017
Renato Groff
 
Desenvolvimento Guiado Por Testes
Desenvolvimento Guiado Por TestesDesenvolvimento Guiado Por Testes
Desenvolvimento Guiado Por Testes
Guilherme Chapiewski
 
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
 
Teste Dirigido por Modelos
Teste Dirigido por ModelosTeste Dirigido por Modelos
Teste Dirigido por Modelos
Natã Melo
 
Desenvolvimento de builds automizados com Jenkins - Em Busca do build Perfeito!
Desenvolvimento de builds automizados com Jenkins - Em Busca do build Perfeito!Desenvolvimento de builds automizados com Jenkins - Em Busca do build Perfeito!
Desenvolvimento de builds automizados com Jenkins - Em Busca do build Perfeito!
Robson Bittencourt
 
Testes de Unidade - Unidade II
Testes de Unidade - Unidade IITestes de Unidade - Unidade II
Testes de Unidade - Unidade II
João Lourenço
 

Mais procurados (20)

Testes unitários e Mocks
Testes unitários e MocksTestes unitários e Mocks
Testes unitários e Mocks
 
Mock it with mockito
Mock it with mockitoMock it with mockito
Mock it with mockito
 
Palestra tdd - rsjug
Palestra tdd - rsjugPalestra tdd - rsjug
Palestra tdd - rsjug
 
Refatoração de Código Legado
Refatoração de Código LegadoRefatoração de Código Legado
Refatoração de Código Legado
 
Testes Unitários - 1 Sessão beiraJUG
Testes Unitários - 1 Sessão beiraJUGTestes Unitários - 1 Sessão beiraJUG
Testes Unitários - 1 Sessão beiraJUG
 
Testes Unitários/Integrados
Testes Unitários/IntegradosTestes Unitários/Integrados
Testes Unitários/Integrados
 
PHP Experience 2016 - [Palestra] Pirâmide de Testes
PHP Experience 2016 - [Palestra] Pirâmide de TestesPHP Experience 2016 - [Palestra] Pirâmide de Testes
PHP Experience 2016 - [Palestra] Pirâmide de Testes
 
JUnit Experience
JUnit ExperienceJUnit Experience
JUnit Experience
 
Teste baseado em modelos
Teste baseado em modelosTeste baseado em modelos
Teste baseado em modelos
 
Behavior-Driven Development (BDD) - QA Ninja Conf 2016
Behavior-Driven Development (BDD) - QA Ninja Conf 2016Behavior-Driven Development (BDD) - QA Ninja Conf 2016
Behavior-Driven Development (BDD) - QA Ninja Conf 2016
 
Testes de unidade - RP Tec Com
Testes de unidade - RP Tec ComTestes de unidade - RP Tec Com
Testes de unidade - RP Tec Com
 
Teste Estrutural usando a ferramenta Jabuti
Teste Estrutural usando a ferramenta JabutiTeste Estrutural usando a ferramenta Jabuti
Teste Estrutural usando a ferramenta Jabuti
 
Palestra TDD - TDC - 2016
Palestra TDD - TDC - 2016Palestra TDD - TDC - 2016
Palestra TDD - TDC - 2016
 
Mocking Test - QA Ninja Conf 2016
Mocking Test - QA Ninja Conf 2016Mocking Test - QA Ninja Conf 2016
Mocking Test - QA Ninja Conf 2016
 
Mocks, Stubs e Fakes - Developers-SP - Julho-2017
Mocks, Stubs e Fakes - Developers-SP - Julho-2017Mocks, Stubs e Fakes - Developers-SP - Julho-2017
Mocks, Stubs e Fakes - Developers-SP - Julho-2017
 
Desenvolvimento Guiado Por Testes
Desenvolvimento Guiado Por TestesDesenvolvimento Guiado Por Testes
Desenvolvimento Guiado Por Testes
 
Por que automatizar testes de software?
Por que automatizar testes de software?Por que automatizar testes de software?
Por que automatizar testes de software?
 
Teste Dirigido por Modelos
Teste Dirigido por ModelosTeste Dirigido por Modelos
Teste Dirigido por Modelos
 
Desenvolvimento de builds automizados com Jenkins - Em Busca do build Perfeito!
Desenvolvimento de builds automizados com Jenkins - Em Busca do build Perfeito!Desenvolvimento de builds automizados com Jenkins - Em Busca do build Perfeito!
Desenvolvimento de builds automizados com Jenkins - Em Busca do build Perfeito!
 
Testes de Unidade - Unidade II
Testes de Unidade - Unidade IITestes de Unidade - Unidade II
Testes de Unidade - Unidade II
 

Destaque

Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
Diana Ungaro Arnos
 
Git - Saia do Básico!
Git - Saia do Básico!Git - Saia do Básico!
Git - Saia do Básico!
Thamara Hessel
 
InterCon 2016 - Desenvolvimento para interfaces em vídeo e cases da plataform...
InterCon 2016 - Desenvolvimento para interfaces em vídeo e cases da plataform...InterCon 2016 - Desenvolvimento para interfaces em vídeo e cases da plataform...
InterCon 2016 - Desenvolvimento para interfaces em vídeo e cases da plataform...
iMasters
 
InterCon 2016 - HTTP/2 for Web Application Developers
InterCon 2016 - HTTP/2 for Web Application DevelopersInterCon 2016 - HTTP/2 for Web Application Developers
InterCon 2016 - HTTP/2 for Web Application Developers
iMasters
 
React e Ratchet, async e websockets com PHP, por Gabriel Couto
React e Ratchet, async e websockets com PHP, por Gabriel CoutoReact e Ratchet, async e websockets com PHP, por Gabriel Couto
React e Ratchet, async e websockets com PHP, por Gabriel Couto
iMasters
 
InterCon 2016 - Internet of “Thinking” – IoT sem BS com ESP8266
InterCon 2016 - Internet of “Thinking” – IoT sem BS com ESP8266InterCon 2016 - Internet of “Thinking” – IoT sem BS com ESP8266
InterCon 2016 - Internet of “Thinking” – IoT sem BS com ESP8266
iMasters
 
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecerInterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
iMasters
 
InterCon 2016 - Backend do IoT com RethinkDB e Python
InterCon 2016 - Backend do IoT com RethinkDB e PythonInterCon 2016 - Backend do IoT com RethinkDB e Python
InterCon 2016 - Backend do IoT com RethinkDB e Python
iMasters
 
Entendendo Domain-Driven Design
Entendendo Domain-Driven DesignEntendendo Domain-Driven Design
Entendendo Domain-Driven Design
Rafael Ponte
 

Destaque (9)

Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
Sistemas Distribuídos e PHP - Darkmira Tour BR 2016
 
Git - Saia do Básico!
Git - Saia do Básico!Git - Saia do Básico!
Git - Saia do Básico!
 
InterCon 2016 - Desenvolvimento para interfaces em vídeo e cases da plataform...
InterCon 2016 - Desenvolvimento para interfaces em vídeo e cases da plataform...InterCon 2016 - Desenvolvimento para interfaces em vídeo e cases da plataform...
InterCon 2016 - Desenvolvimento para interfaces em vídeo e cases da plataform...
 
InterCon 2016 - HTTP/2 for Web Application Developers
InterCon 2016 - HTTP/2 for Web Application DevelopersInterCon 2016 - HTTP/2 for Web Application Developers
InterCon 2016 - HTTP/2 for Web Application Developers
 
React e Ratchet, async e websockets com PHP, por Gabriel Couto
React e Ratchet, async e websockets com PHP, por Gabriel CoutoReact e Ratchet, async e websockets com PHP, por Gabriel Couto
React e Ratchet, async e websockets com PHP, por Gabriel Couto
 
InterCon 2016 - Internet of “Thinking” – IoT sem BS com ESP8266
InterCon 2016 - Internet of “Thinking” – IoT sem BS com ESP8266InterCon 2016 - Internet of “Thinking” – IoT sem BS com ESP8266
InterCon 2016 - Internet of “Thinking” – IoT sem BS com ESP8266
 
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecerInterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
InterCon 2016 - Gerenciando deploy e atualização de 450 apps sem enlouquecer
 
InterCon 2016 - Backend do IoT com RethinkDB e Python
InterCon 2016 - Backend do IoT com RethinkDB e PythonInterCon 2016 - Backend do IoT com RethinkDB e Python
InterCon 2016 - Backend do IoT com RethinkDB e Python
 
Entendendo Domain-Driven Design
Entendendo Domain-Driven DesignEntendendo Domain-Driven Design
Entendendo Domain-Driven Design
 

Semelhante a PHPExperience 2016 - Pirâmide de Testes

GOTEST-Aula5-Automacao-Parte2.pdf
GOTEST-Aula5-Automacao-Parte2.pdfGOTEST-Aula5-Automacao-Parte2.pdf
GOTEST-Aula5-Automacao-Parte2.pdf
RodolphoCesar2
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
Thiago Ghisi
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
Roberto Espinha
 
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptx
01 UNIDADE I -  Princípios, pilares e modelos de teste de software.pptx01 UNIDADE I -  Princípios, pilares e modelos de teste de software.pptx
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptx
AnaKlyssia1
 
Treinamento Appium - Introdução
Treinamento Appium - IntroduçãoTreinamento Appium - Introdução
Treinamento Appium - Introdução
André Salla
 
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaAutomação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Gabriela Patuci
 
A importância de utilizar testes automatizados
A  importância   de utilizar  testes automatizadosA  importância   de utilizar  testes automatizados
A importância de utilizar testes automatizados
Diego Allan Oliveira
 
Integração Contínua
Integração ContínuaIntegração Contínua
Integração Contínua
ScrumHalf Tool
 
Teste de software
Teste de software Teste de software
Teste de software
Allan Almeida de Araújo
 
Teste de software
Teste de softwareTeste de software
Teste de software
Rodrigo Cardoso Alves Fonte
 
TesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdfTesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdf
Bruno Zolotareff dos Santos
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
testedesoftwarepe
 
IT Talks - Testes Automatizados - Porque você deve ter? Versão: Final
IT Talks - Testes Automatizados - Porque você deve ter? Versão: FinalIT Talks - Testes Automatizados - Porque você deve ter? Versão: Final
IT Talks - Testes Automatizados - Porque você deve ter? Versão: Final
Clayton K. N. Passos
 
Paletra sobre TDD, ocorrida no #DevDojo
Paletra sobre TDD, ocorrida no #DevDojoPaletra sobre TDD, ocorrida no #DevDojo
Paletra sobre TDD, ocorrida no #DevDojo
flavio1110
 
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
 
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes AutomatizadosScrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Stefan Teixeira
 
Automação de Testes - How to do It Right
Automação de Testes - How to do It RightAutomação de Testes - How to do It Right
Automação de Testes - How to do It Right
João Lucas Fernandes Coimbra
 
Palestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreiraPalestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreira
Taís Dall'Oca
 
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
Elias Nogueira
 
Introdução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade IIntrodução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade I
João Lourenço
 

Semelhante a PHPExperience 2016 - Pirâmide de Testes (20)

GOTEST-Aula5-Automacao-Parte2.pdf
GOTEST-Aula5-Automacao-Parte2.pdfGOTEST-Aula5-Automacao-Parte2.pdf
GOTEST-Aula5-Automacao-Parte2.pdf
 
Introdução a testes automatizados
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
 
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptx
01 UNIDADE I -  Princípios, pilares e modelos de teste de software.pptx01 UNIDADE I -  Princípios, pilares e modelos de teste de software.pptx
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptx
 
Treinamento Appium - Introdução
Treinamento Appium - IntroduçãoTreinamento Appium - Introdução
Treinamento Appium - Introdução
 
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração ContínuaAutomação de Testes: Ferramentas e Aplicação com Integração Contínua
Automação de Testes: Ferramentas e Aplicação com Integração Contínua
 
A importância de utilizar testes automatizados
A  importância   de utilizar  testes automatizadosA  importância   de utilizar  testes automatizados
A importância de utilizar testes automatizados
 
Integração Contínua
Integração ContínuaIntegração Contínua
Integração Contínua
 
Teste de software
Teste de software Teste de software
Teste de software
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
TesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdfTesteDeSoftware_WorkshopSINFO2014.pdf
TesteDeSoftware_WorkshopSINFO2014.pdf
 
O que é Teste de Software?
O que é Teste de Software?O que é Teste de Software?
O que é Teste de Software?
 
IT Talks - Testes Automatizados - Porque você deve ter? Versão: Final
IT Talks - Testes Automatizados - Porque você deve ter? Versão: FinalIT Talks - Testes Automatizados - Porque você deve ter? Versão: Final
IT Talks - Testes Automatizados - Porque você deve ter? Versão: Final
 
Paletra sobre TDD, ocorrida no #DevDojo
Paletra sobre TDD, ocorrida no #DevDojoPaletra sobre TDD, ocorrida no #DevDojo
Paletra sobre TDD, ocorrida no #DevDojo
 
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 ...
 
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes AutomatizadosScrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados
 
Automação de Testes - How to do It Right
Automação de Testes - How to do It RightAutomação de Testes - How to do It Right
Automação de Testes - How to do It Right
 
Palestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreiraPalestra Teste de Software: princípios, ferramentas e carreira
Palestra Teste de Software: princípios, ferramentas e carreira
 
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades
 
Introdução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade IIntrodução a Testes de Software - Unidade I
Introdução a Testes de Software - Unidade I
 

PHPExperience 2016 - Pirâmide de Testes

  • 2. Diana Ungaro Arnos Analista Desenvolvedora @ Agrosmart Instrutora @ Caldo e Gouveia @dianaarnos www.dianaarnos.com PHP Web Developer, PHPWomen Evangelist
  • 3. A Pirâmide ◉ Boa prática de automação ◉ Indicador visual da proporção ideal de tipos de testes ◉ Serviço? (http://martinfowler.com/bliki/SubcutaneousTest.html) ◉ De onde veio? UI SERVICE UNIT
  • 5. Por quê essa divisão?
  • 6. “ One reason teams found it difficult to write tests sooner was because they were automating at the wrong level. An effective test automation strategy calls for automating tests at three different levels, which depicts the test automation pyramid. (Mike Cohn - Succeeding With Agile: Software Development Using Scrum)
  • 7. Era uma vez, na vida real... ◉ "Esse sistema é legado, não dá 'pra' mexer direito e fazer os testes que deveria" ou "não é grande coisa, não precisa de tantos testes de unidade assim" Anti-pattern: Ice cream cone ◉ "A gente garante testando entre os módulos" ou "é só 'bater na API' e comparar os resultados" ◉ "Rodamos o Selenium na interface aqui e já era" ou "só fazer o 'click through' até finalizar o processo" ◉ "Só subir pra staging que pessoal de produto 'testa'". Tudo. MANUAL UNIT SERVICE UI
  • 8. A Base ◉ Testes de unidade são os mais "fáceis" e rápidos de serem executados ◉ Indicam exatamente (ou quase) onde está o erro ◉ Garantem a integridade das menores "peças" do sistema UNIT
  • 9. O Topo ◉ Testes de UI têm execução lenta ◉ São frágeis ◉ Mais complexos para escrever UI Automatize apenas smoke tests Testar interface e não lógica de processamento
  • 10. The man in the middle ◉ Testes de integração ◉ Testes de API ◉ Testes fim-a-fim sem envolver a interface ◉ Resumindo: o que foge ao escopo do teste de unidade mas não chega à interface SERVICE
  • 11. E se implementar a pirâmide... ◉ Builds mais rápidos ◉ Aplicação mais confiável ◉ Manutenção facilitada, tanto dos testes quanto da aplicação ◉ Se quebrar o build, quebra de maneira assertiva E lembre-se: testes validam a solução e garantem o funcionamento anterior
  • 12. Perguntas? ◉ @dianaarnos ◉ Joind.in: https://joind.in/talk/73f8b Obrigada!