PHP Experience 2016 - [Palestra] Pirâmide de Testes

iMasters
iMastersjornalista, web editor, web writer, tradutora (en-pt/pt-en) at iMasters
Pirâmide de Testes
Diana Ungaro Arnos
Analista Desenvolvedora @ Agrosmart
Instrutora @ Caldo e Gouveia
@dianaarnos www.dianaarnos.com
PHP Web Developer
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!
1 of 12

Recommended

PHPExperience 2016 - Pirâmide de Testes by
PHPExperience 2016 - Pirâmide de TestesPHPExperience 2016 - Pirâmide de Testes
PHPExperience 2016 - Pirâmide de TestesDiana Ungaro Arnos
957 views12 slides
Testes O que são e para que servem? - LadyTalks by
Testes O que são e para que servem? - LadyTalksTestes O que são e para que servem? - LadyTalks
Testes O que são e para que servem? - LadyTalksDiana Ungaro Arnos
1K views17 slides
TDC2017 | Florianópolis - Trilha Java Melhorando a performance do seu Código ... by
TDC2017 | Florianópolis - Trilha Java Melhorando a performance do seu Código ...TDC2017 | Florianópolis - Trilha Java Melhorando a performance do seu Código ...
TDC2017 | Florianópolis - Trilha Java Melhorando a performance do seu Código ...tdc-globalcode
346 views18 slides
Testes: existe vida antes do TDD by
Testes: existe vida antes do TDDTestes: existe vida antes do TDD
Testes: existe vida antes do TDDDiana Ungaro Arnos
1.1K views19 slides
PHP Expericence 2015 - Testes Unitários - Existe vida antes do TDD by
PHP Expericence 2015 - Testes Unitários - Existe vida antes do TDDPHP Expericence 2015 - Testes Unitários - Existe vida antes do TDD
PHP Expericence 2015 - Testes Unitários - Existe vida antes do TDDDiana Ungaro Arnos
4.9K views11 slides
Automação de Teste para REST, Web e Mobile by
Automação de Teste para REST, Web e MobileAutomação de Teste para REST, Web e Mobile
Automação de Teste para REST, Web e MobileElias Nogueira
3.6K views26 slides

More Related Content

What's hot

Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016) by
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)Igor Abade
1.3K views16 slides
Testes com TestLink e Selenium by
Testes com TestLink e SeleniumTestes com TestLink e Selenium
Testes com TestLink e SeleniumAndré Thiago
6.4K views86 slides
Automação de Teste Funcionais - Selenium by
Automação de Teste Funcionais - SeleniumAutomação de Teste Funcionais - Selenium
Automação de Teste Funcionais - SeleniumIsrael Santiago
18.6K views66 slides
Apenas um script de teste para iOS e Android by
Apenas um script de teste para iOS e AndroidApenas um script de teste para iOS e Android
Apenas um script de teste para iOS e AndroidElias Nogueira
1.3K views10 slides
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm... by
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...minastestingconference
170 views22 slides
Performance web - Como deixar a sua aplicação rápida, fazendo seus usuári... by
Performance web - Como deixar a sua aplicação rápida, fazendo seus usuári...Performance web - Como deixar a sua aplicação rápida, fazendo seus usuári...
Performance web - Como deixar a sua aplicação rápida, fazendo seus usuári...minastestingconference
250 views23 slides

What's hot(20)

Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016) by Igor Abade
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Smoke tests, deployment e rollback automatizados (DevOps Summit Brasil 2016)
Igor Abade1.3K views
Testes com TestLink e Selenium by André Thiago
Testes com TestLink e SeleniumTestes com TestLink e Selenium
Testes com TestLink e Selenium
André Thiago6.4K views
Automação de Teste Funcionais - Selenium by Israel Santiago
Automação de Teste Funcionais - SeleniumAutomação de Teste Funcionais - Selenium
Automação de Teste Funcionais - Selenium
Israel Santiago18.6K views
Apenas um script de teste para iOS e Android by Elias Nogueira
Apenas um script de teste para iOS e AndroidApenas um script de teste para iOS e Android
Apenas um script de teste para iOS e Android
Elias Nogueira1.3K views
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm... by minastestingconference
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
[MTC 2021] Criando testes automatizados rápidos e robustos com cypress - Walm...
Performance web - Como deixar a sua aplicação rápida, fazendo seus usuári... by minastestingconference
Performance web - Como deixar a sua aplicação rápida, fazendo seus usuári...Performance web - Como deixar a sua aplicação rápida, fazendo seus usuári...
Performance web - Como deixar a sua aplicação rápida, fazendo seus usuári...
Coders On Beer + Ministry Of Testing - Agile Testing by Samanta Cicilia
Coders On Beer + Ministry Of Testing - Agile TestingCoders On Beer + Ministry Of Testing - Agile Testing
Coders On Beer + Ministry Of Testing - Agile Testing
Samanta Cicilia363 views
TOTVS - Agile Testing e a Importância de se ter Estratégia de Testes by Samanta Cicilia
TOTVS - Agile Testing e a Importância de se ter Estratégia de TestesTOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
TOTVS - Agile Testing e a Importância de se ter Estratégia de Testes
Samanta Cicilia1.2K views
Teste de aplicações web com selenium by Mayron Cachina
Teste de aplicações web com seleniumTeste de aplicações web com selenium
Teste de aplicações web com selenium
Mayron Cachina3.4K views
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software by André Dias
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu SoftwareDevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
DevOps Summit Brasil: +10 Ferramentas para Melhorar a Qualidade do seu Software
André Dias2.4K views
WordCamp Floripa 2021 - Fernando Nilson - Análise de vulnerabilidade by WordCamp Floripa
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 Floripa97 views
A Importância do Teste Continuo by Elias Nogueira
A Importância do Teste ContinuoA Importância do Teste Continuo
A Importância do Teste Continuo
Elias Nogueira1.3K views
Como montar o seu ambiente de ALM Gratuito em apenas 15 minutos by Ramon Durães
Como montar o seu ambiente de ALM Gratuito em apenas 15 minutosComo montar o seu ambiente de ALM Gratuito em apenas 15 minutos
Como montar o seu ambiente de ALM Gratuito em apenas 15 minutos
Ramon Durães676 views
Treinamento Appium - Introdução by André Salla
Treinamento Appium - IntroduçãoTreinamento Appium - Introdução
Treinamento Appium - Introdução
André Salla206 views
Integração contínua - Prática de desenvolvimento by Mario Mendonça
Integração contínua - Prática de desenvolvimentoIntegração contínua - Prática de desenvolvimento
Integração contínua - Prática de desenvolvimento
Mario Mendonça316 views

Viewers also liked

PHP Experience 2016 - [Workshop] Agile: Test Driven Development by
PHP Experience 2016 - [Workshop] Agile: Test Driven DevelopmentPHP Experience 2016 - [Workshop] Agile: Test Driven Development
PHP Experience 2016 - [Workshop] Agile: Test Driven DevelopmentiMasters
1K views50 slides
PHP Experience 2016 - [Palestra] Keynote: PHP-7 by
PHP Experience 2016 - [Palestra] Keynote: PHP-7PHP Experience 2016 - [Palestra] Keynote: PHP-7
PHP Experience 2016 - [Palestra] Keynote: PHP-7iMasters
1.1K views49 slides
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere... by
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...iMasters
1K views28 slides
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL by
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSLPHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSLiMasters
1K views80 slides
PHP Experience 2016 - [Palestra] Rumo à Certificação PHP by
PHP Experience 2016 - [Palestra] Rumo à Certificação PHPPHP Experience 2016 - [Palestra] Rumo à Certificação PHP
PHP Experience 2016 - [Palestra] Rumo à Certificação PHPiMasters
1.1K views59 slides
PHP Experience 2016 - [Palestra] Experiências e casos de uso com as APIs Twitter by
PHP Experience 2016 - [Palestra] Experiências e casos de uso com as APIs TwitterPHP Experience 2016 - [Palestra] Experiências e casos de uso com as APIs Twitter
PHP Experience 2016 - [Palestra] Experiências e casos de uso com as APIs TwitteriMasters
998 views51 slides

Viewers also liked(15)

PHP Experience 2016 - [Workshop] Agile: Test Driven Development by iMasters
PHP Experience 2016 - [Workshop] Agile: Test Driven DevelopmentPHP Experience 2016 - [Workshop] Agile: Test Driven Development
PHP Experience 2016 - [Workshop] Agile: Test Driven Development
iMasters1K views
PHP Experience 2016 - [Palestra] Keynote: PHP-7 by iMasters
PHP Experience 2016 - [Palestra] Keynote: PHP-7PHP Experience 2016 - [Palestra] Keynote: PHP-7
PHP Experience 2016 - [Palestra] Keynote: PHP-7
iMasters1.1K views
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere... by iMasters
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...
PHP Experience 2016 - [Palestra] Vagrant, LXC, Docker, etc: Entenda as difere...
iMasters1K views
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL by iMasters
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSLPHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL
PHP Experience 2016 - [Palestra] Melhorando a comunicação da API através de DSL
iMasters1K views
PHP Experience 2016 - [Palestra] Rumo à Certificação PHP by iMasters
PHP Experience 2016 - [Palestra] Rumo à Certificação PHPPHP Experience 2016 - [Palestra] Rumo à Certificação PHP
PHP Experience 2016 - [Palestra] Rumo à Certificação PHP
iMasters1.1K views
PHP Experience 2016 - [Palestra] Experiências e casos de uso com as APIs Twitter by iMasters
PHP Experience 2016 - [Palestra] Experiências e casos de uso com as APIs TwitterPHP Experience 2016 - [Palestra] Experiências e casos de uso com as APIs Twitter
PHP Experience 2016 - [Palestra] Experiências e casos de uso com as APIs Twitter
iMasters998 views
PHP Experience 2016 - [Palestra] 20×20: PHP Freakshow – O estranho, o esquisi... by iMasters
PHP Experience 2016 - [Palestra] 20×20: PHP Freakshow – O estranho, o esquisi...PHP Experience 2016 - [Palestra] 20×20: PHP Freakshow – O estranho, o esquisi...
PHP Experience 2016 - [Palestra] 20×20: PHP Freakshow – O estranho, o esquisi...
iMasters972 views
PHP Experience 2016 - CTOTalks: Escalando times e salvando casamentos com con... by iMasters
PHP Experience 2016 - CTOTalks: Escalando times e salvando casamentos com con...PHP Experience 2016 - CTOTalks: Escalando times e salvando casamentos com con...
PHP Experience 2016 - CTOTalks: Escalando times e salvando casamentos com con...
iMasters865 views
PHP Experience 2016 - [Palestra] Autenticação em APIs by iMasters
PHP Experience 2016 - [Palestra] Autenticação em APIsPHP Experience 2016 - [Palestra] Autenticação em APIs
PHP Experience 2016 - [Palestra] Autenticação em APIs
iMasters1.3K views
PHP Experience 2016 - CTOTalks: Escalando de 0 a 1 bilhão de requests com uma... by iMasters
PHP Experience 2016 - CTOTalks: Escalando de 0 a 1 bilhão de requests com uma...PHP Experience 2016 - CTOTalks: Escalando de 0 a 1 bilhão de requests com uma...
PHP Experience 2016 - CTOTalks: Escalando de 0 a 1 bilhão de requests com uma...
iMasters838 views
PHP Experience 2016 - [Palestra] Scaling with Microservice by iMasters
PHP Experience 2016 - [Palestra] Scaling with MicroservicePHP Experience 2016 - [Palestra] Scaling with Microservice
PHP Experience 2016 - [Palestra] Scaling with Microservice
iMasters960 views
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP by iMasters
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHPPHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
PHP Experience 2016 - [Workshop] Elastic Search: Turbinando sua aplicação PHP
iMasters1.3K views
TestFest - Respect\Validation 1.0 by Henrique Moody
TestFest - Respect\Validation 1.0TestFest - Respect\Validation 1.0
TestFest - Respect\Validation 1.0
Henrique Moody1.6K views
PHP Experience 2016 - [Palestra] Json Web Token (JWT) by iMasters
PHP Experience 2016 - [Palestra] Json Web Token (JWT)PHP Experience 2016 - [Palestra] Json Web Token (JWT)
PHP Experience 2016 - [Palestra] Json Web Token (JWT)
iMasters2.1K views
PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações by iMasters
PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integraçõesPHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações
PHP Experience 2016 - [Workshop] APIs bem desenhadas como base para integrações
iMasters1.2K views

Similar to PHP Experience 2016 - [Palestra] Pirâmide de Testes

Introdução a testes automatizados by
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizadosThiago Ghisi
5.5K views28 slides
GOTEST-Aula5-Automacao-Parte2.pdf by
GOTEST-Aula5-Automacao-Parte2.pdfGOTEST-Aula5-Automacao-Parte2.pdf
GOTEST-Aula5-Automacao-Parte2.pdfRodolphoCesar2
1 view72 slides
Teste de Software by
Teste de SoftwareTeste de Software
Teste de SoftwareRoberto Espinha
718 views22 slides
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptx by
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.pptxAnaKlyssia1
7 views21 slides
Integração Contínua by
Integração ContínuaIntegração Contínua
Integração ContínuaScrumHalf Tool
652 views43 slides
A importância de utilizar testes automatizados by
A  importância   de utilizar  testes automatizadosA  importância   de utilizar  testes automatizados
A importância de utilizar testes automatizadosDiego Allan Oliveira
1.1K views15 slides

Similar to PHP Experience 2016 - [Palestra] Pirâmide de Testes(20)

Introdução a testes automatizados by Thiago Ghisi
Introdução a testes automatizadosIntrodução a testes automatizados
Introdução a testes automatizados
Thiago Ghisi5.5K views
01 UNIDADE I - Princípios, pilares e modelos de teste de software.pptx by AnaKlyssia1
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
AnaKlyssia17 views
Automação de Testes: Ferramentas e Aplicação com Integração Contínua by Gabriela Patuci
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 Patuci5.3K views
Paletra sobre TDD, ocorrida no #DevDojo by flavio1110
Paletra sobre TDD, ocorrida no #DevDojoPaletra sobre TDD, ocorrida no #DevDojo
Paletra sobre TDD, ocorrida no #DevDojo
flavio1110188 views
IT Talks - Testes Automatizados - Porque você deve ter? Versão: Final by Clayton K. N. Passos
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
Testes Funcionais - Unidade IV by João Lourenço
Testes Funcionais - Unidade IVTestes Funcionais - Unidade IV
Testes Funcionais - Unidade IV
João Lourenço5.1K views
Introdução a Testes de Software - Unidade I by João Lourenço
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ço6.1K views
ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540... by Antonio Lobato
ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...
ld0mg1hrlhzbyvgfiyyq-signature-d9919623d100cd87ad7553e4c50163aa9329a439464540...
Scrum Gathering Rio 2014 - Melhorando sua Estratégia de Testes Automatizados by Stefan Teixeira
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 Teixeira1.5K views
4° Encontro Mensal ALATS: Automação de Teste - Mitos e Verdades by Elias Nogueira
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 Nogueira2K views

More from iMasters

O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro by
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroO que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroiMasters
1.4K views40 slides
Postgres: wanted, beloved or dreaded? - Fabio Telles by
Postgres: wanted, beloved or dreaded? - Fabio TellesPostgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio TellesiMasters
603 views51 slides
Por que minha query esta lenta? - Suellen Moraes by
Por que minha query esta lenta? - Suellen MoraesPor que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen MoraesiMasters
370 views12 slides
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig... by
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...iMasters
298 views9 slides
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves by
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesiMasters
324 views31 slides
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -... by
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...iMasters
1.7K views52 slides

More from iMasters(20)

O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro by iMasters
O que você precisa saber para modelar bancos de dados NoSQL - Dani MonteiroO que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
O que você precisa saber para modelar bancos de dados NoSQL - Dani Monteiro
iMasters1.4K views
Postgres: wanted, beloved or dreaded? - Fabio Telles by iMasters
Postgres: wanted, beloved or dreaded? - Fabio TellesPostgres: wanted, beloved or dreaded? - Fabio Telles
Postgres: wanted, beloved or dreaded? - Fabio Telles
iMasters603 views
Por que minha query esta lenta? - Suellen Moraes by iMasters
Por que minha query esta lenta? - Suellen MoraesPor que minha query esta lenta? - Suellen Moraes
Por que minha query esta lenta? - Suellen Moraes
iMasters370 views
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig... by iMasters
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
Relato das trincheiras: o dia a dia de uma consultoria de banco de dados - Ig...
iMasters298 views
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves by iMasters
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalvesORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
ORMs heróis ou vilões dentro da arquitetura de dados? - Otávio gonçalves
iMasters324 views
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -... by iMasters
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
SQL e NoSQL trabalhando juntos: uma comparação para obter o melhor de ambos -...
iMasters1.7K views
Arquitetando seus dados na prática para a LGPD - Alessandra Martins by iMasters
Arquitetando seus dados na prática para a LGPD - Alessandra MartinsArquitetando seus dados na prática para a LGPD - Alessandra Martins
Arquitetando seus dados na prática para a LGPD - Alessandra Martins
iMasters3.3K views
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil... by iMasters
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
O papel do DBA no mundo de ciência de dados e machine learning - Mauro Pichil...
iMasters287 views
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud by iMasters
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana ChahoudDesenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
Desenvolvimento Mobile Híbrido, Nativo ou Web: Quando usá-los - Juliana Chahoud
iMasters950 views
Use MDD e faça as máquinas trabalharem para você - Andreza Leite by iMasters
 Use MDD e faça as máquinas trabalharem para você - Andreza Leite Use MDD e faça as máquinas trabalharem para você - Andreza Leite
Use MDD e faça as máquinas trabalharem para você - Andreza Leite
iMasters682 views
Entendendo os porquês do seu servidor - Talita Bernardes by iMasters
Entendendo os porquês do seu servidor - Talita BernardesEntendendo os porquês do seu servidor - Talita Bernardes
Entendendo os porquês do seu servidor - Talita Bernardes
iMasters544 views
Backend performático além do "coloca mais máquina lá" - Diana Arnos by iMasters
Backend performático além do "coloca mais máquina lá" - Diana ArnosBackend performático além do "coloca mais máquina lá" - Diana Arnos
Backend performático além do "coloca mais máquina lá" - Diana Arnos
iMasters477 views
Dicas para uma maior performance em APIs REST - Renato Groffe by iMasters
Dicas para uma maior performance em APIs REST - Renato GroffeDicas para uma maior performance em APIs REST - Renato Groffe
Dicas para uma maior performance em APIs REST - Renato Groffe
iMasters595 views
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro by iMasters
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
7 dicas de desempenho que equivalem por 21 - Danielle Monteiro
iMasters475 views
Quem se importa com acessibilidade Web? - Mauricio Maujor by iMasters
Quem se importa com acessibilidade Web? - Mauricio MaujorQuem se importa com acessibilidade Web? - Mauricio Maujor
Quem se importa com acessibilidade Web? - Mauricio Maujor
iMasters480 views
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva by iMasters
Service Mesh com Istio e Kubernetes - Wellington Figueira da SilvaService Mesh com Istio e Kubernetes - Wellington Figueira da Silva
Service Mesh com Istio e Kubernetes - Wellington Figueira da Silva
iMasters604 views
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti by iMasters
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto PascuttiErros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
Erros: Como eles vivem, se alimentam e se reproduzem? - Augusto Pascutti
iMasters559 views
Elasticidade e engenharia de banco de dados para alta performance - Rubens G... by iMasters
Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...Elasticidade e engenharia de banco de dados para alta performance  - Rubens G...
Elasticidade e engenharia de banco de dados para alta performance - Rubens G...
iMasters569 views
Construindo aplicações mais confiantes - Carolina Karklis by iMasters
Construindo aplicações mais confiantes - Carolina KarklisConstruindo aplicações mais confiantes - Carolina Karklis
Construindo aplicações mais confiantes - Carolina Karklis
iMasters477 views
Monitoramento de Aplicações - Felipe Regalgo by iMasters
Monitoramento de Aplicações - Felipe RegalgoMonitoramento de Aplicações - Felipe Regalgo
Monitoramento de Aplicações - Felipe Regalgo
iMasters709 views

Recently uploaded

LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ... by
LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ...LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ...
LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ...azulassessoriaacadem3
30 views1 slide
4- Sobre o paciente do caso 2, EXPLIQUE quais os mecanismos fisiológicos da ... by
4- Sobre o paciente do caso 2,  EXPLIQUE quais os mecanismos fisiológicos da ...4- Sobre o paciente do caso 2,  EXPLIQUE quais os mecanismos fisiológicos da ...
4- Sobre o paciente do caso 2, EXPLIQUE quais os mecanismos fisiológicos da ...azulassessoriaacadem3
97 views4 slides
B. Orientações para as mamães que tem bebês com mais de 7 meses de idade e qu... by
B. Orientações para as mamães que tem bebês com mais de 7 meses de idade e qu...B. Orientações para as mamães que tem bebês com mais de 7 meses de idade e qu...
B. Orientações para as mamães que tem bebês com mais de 7 meses de idade e qu...azulassessoriaacadem3
67 views3 slides
Você como nutricionista precisa estudar sobre alguns conceitos, para conhecer... by
Você como nutricionista precisa estudar sobre alguns conceitos, para conhecer...Você como nutricionista precisa estudar sobre alguns conceitos, para conhecer...
Você como nutricionista precisa estudar sobre alguns conceitos, para conhecer...azulassessoriaacadem3
33 views3 slides
b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss... by
b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss...b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss...
b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss...azulassessoriaacadem3
46 views2 slides
a) Explique como ocorre a circulação do sangue dentro do coração (câmaras car... by
a) Explique como ocorre a circulação do sangue dentro do coração (câmaras car...a) Explique como ocorre a circulação do sangue dentro do coração (câmaras car...
a) Explique como ocorre a circulação do sangue dentro do coração (câmaras car...HelpEducacional
202 views3 slides

Recently uploaded(20)

LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ... by azulassessoriaacadem3
LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ...LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ...
LISTE cinco condições clínicas e para cada uma delas CITE as metas/objetivos ...
4- Sobre o paciente do caso 2, EXPLIQUE quais os mecanismos fisiológicos da ... by azulassessoriaacadem3
4- Sobre o paciente do caso 2,  EXPLIQUE quais os mecanismos fisiológicos da ...4- Sobre o paciente do caso 2,  EXPLIQUE quais os mecanismos fisiológicos da ...
4- Sobre o paciente do caso 2, EXPLIQUE quais os mecanismos fisiológicos da ...
B. Orientações para as mamães que tem bebês com mais de 7 meses de idade e qu... by azulassessoriaacadem3
B. Orientações para as mamães que tem bebês com mais de 7 meses de idade e qu...B. Orientações para as mamães que tem bebês com mais de 7 meses de idade e qu...
B. Orientações para as mamães que tem bebês com mais de 7 meses de idade e qu...
Você como nutricionista precisa estudar sobre alguns conceitos, para conhecer... by azulassessoriaacadem3
Você como nutricionista precisa estudar sobre alguns conceitos, para conhecer...Você como nutricionista precisa estudar sobre alguns conceitos, para conhecer...
Você como nutricionista precisa estudar sobre alguns conceitos, para conhecer...
b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss... by azulassessoriaacadem3
b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss...b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss...
b) Caso n. 02: Considerando o disposto na NBC PG 01 – Código de Ética Profiss...
a) Explique como ocorre a circulação do sangue dentro do coração (câmaras car... by HelpEducacional
a) Explique como ocorre a circulação do sangue dentro do coração (câmaras car...a) Explique como ocorre a circulação do sangue dentro do coração (câmaras car...
a) Explique como ocorre a circulação do sangue dentro do coração (câmaras car...
HelpEducacional202 views
REVISÃO PARA O PROVÃO DE HISTÓRIA.pptx by profesfrancleite
REVISÃO PARA O PROVÃO DE HISTÓRIA.pptxREVISÃO PARA O PROVÃO DE HISTÓRIA.pptx
REVISÃO PARA O PROVÃO DE HISTÓRIA.pptx
profesfrancleite48 views
1a. DIFERENCIE, o princípio físico na formação da imagem para método de tomog... by azulassessoriaacadem3
1a. DIFERENCIE, o princípio físico na formação da imagem para método de tomog...1a. DIFERENCIE, o princípio físico na formação da imagem para método de tomog...
1a. DIFERENCIE, o princípio físico na formação da imagem para método de tomog...
6- Sabendo que o caso do paciente 3 está sendo causado por uma condução elétr... by azulassessoriaacadem3
6- Sabendo que o caso do paciente 3 está sendo causado por uma condução elétr...6- Sabendo que o caso do paciente 3 está sendo causado por uma condução elétr...
6- Sabendo que o caso do paciente 3 está sendo causado por uma condução elétr...
Etapa 3: agora chegou o momento de você sugerir a aquisição ou não do equipam... by azulassessoriaacadem3
Etapa 3: agora chegou o momento de você sugerir a aquisição ou não do equipam...Etapa 3: agora chegou o momento de você sugerir a aquisição ou não do equipam...
Etapa 3: agora chegou o momento de você sugerir a aquisição ou não do equipam...
5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold... by azulassessoriaacadem3
5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold...5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold...
5) Anexo do folder e da foto de distribuição do folder: Após elaborado o fold...
a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ... by azulassessoriaacadem3
a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ...a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ...
a) Elenque de forma sucinta as dificuldades apresentadas no relato do caso e ...
4. No vídeo “Cadela aprende libras para entender comando dos donos” foi apres... by azulassessoriaacadem3
4. No vídeo “Cadela aprende libras para entender comando dos donos” foi apres...4. No vídeo “Cadela aprende libras para entender comando dos donos” foi apres...
4. No vídeo “Cadela aprende libras para entender comando dos donos” foi apres...
3) Os AINEs são classificados de acordo com sua composição química. A esse re... by HelpEducacional
3) Os AINEs são classificados de acordo com sua composição química. A esse re...3) Os AINEs são classificados de acordo com sua composição química. A esse re...
3) Os AINEs são classificados de acordo com sua composição química. A esse re...
HelpEducacional132 views
Texto: Ezequiel 1:1 – Bíblia ARA Aconteceu no trigésimo ano, no quinto dia do... by azulassessoriaacadem3
Texto: Ezequiel 1:1 – Bíblia ARA Aconteceu no trigésimo ano, no quinto dia do...Texto: Ezequiel 1:1 – Bíblia ARA Aconteceu no trigésimo ano, no quinto dia do...
Texto: Ezequiel 1:1 – Bíblia ARA Aconteceu no trigésimo ano, no quinto dia do...
Você é um(a) assistente social trabalhando em um Centro de Referência da Assi... by azulassessoriaacadem3
Você é um(a) assistente social trabalhando em um Centro de Referência da Assi...Você é um(a) assistente social trabalhando em um Centro de Referência da Assi...
Você é um(a) assistente social trabalhando em um Centro de Referência da Assi...
Slides Lição 12, CPAD, O Modelo de Missões da Igreja de Antioquia.pptx by LuizHenriquedeAlmeid6
Slides Lição 12, CPAD, O Modelo de Missões da Igreja de Antioquia.pptxSlides Lição 12, CPAD, O Modelo de Missões da Igreja de Antioquia.pptx
Slides Lição 12, CPAD, O Modelo de Missões da Igreja de Antioquia.pptx
a) Estruturar o Balancete de Verificação da empresa Estilo Chic Ltda. ordenan... by HelpEducacional
a) Estruturar o Balancete de Verificação da empresa Estilo Chic Ltda. ordenan...a) Estruturar o Balancete de Verificação da empresa Estilo Chic Ltda. ordenan...
a) Estruturar o Balancete de Verificação da empresa Estilo Chic Ltda. ordenan...
HelpEducacional903 views
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi... by HelpEducacional
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...
1) Descreva como os AINEs não seletivos exercem seu mecanismo de ação, reduzi...
HelpEducacional68 views

PHP Experience 2016 - [Palestra] Pirâmide de Testes

  • 2. Diana Ungaro Arnos Analista Desenvolvedora @ Agrosmart Instrutora @ Caldo e Gouveia @dianaarnos www.dianaarnos.com PHP Web Developer
  • 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!