Testes automatizados - Agile Day

38
Introdução a Testes Automatizados Carlos Felippe Cardoso (CFC) [email protected] @carlosfelippe slideshare.net/cfelippe k21.com.br

Transcript of Testes automatizados - Agile Day

Page 1: Testes automatizados -  Agile Day

Introdução a Testes Automatizados

Carlos Felippe Cardoso (CFC)

[email protected]@carlosfelippe

slideshare.net/cfelippek21.com.br

Page 2: Testes automatizados -  Agile Day

Duas motivaçõespara testes automatizados

Page 3: Testes automatizados -  Agile Day

Duas motivaçõespara testes automatizados

Desenvolvimento por CAMADAS

vsFATIAS

Page 4: Testes automatizados -  Agile Day

Desenvolvimento por FATIAS!!!

Page 5: Testes automatizados -  Agile Day

Iteração 1: 5 devs e 1 tester

Page 6: Testes automatizados -  Agile Day

Regression Testing Hell

Page 7: Testes automatizados -  Agile Day

Iteração 1: 5 devs e 1 tester...

Iteração 6: 5 devs e 2 testers

Page 8: Testes automatizados -  Agile Day

Iteração 1: 5 devs e 1 tester...

Iteração 6: 5 devs e 2 testers…

Iteração 18: 5 devs e 3 testers???

Page 9: Testes automatizados -  Agile Day

Trabalhar com fatias pressupõe que você possui:Definition of Done

Boas fatias finas (que vão gerar bons baby steps)

Page 10: Testes automatizados -  Agile Day

Mudança de Mindset

Reativo eEstimula CYA(cover your ass)

Pró-Ativo e Colaborativo

http://www.agilecoachjournal.com/index.php/2014-01-28/testing-2/the-agile-testing-pyramid/

Page 11: Testes automatizados -  Agile Day

Duas motivaçõespara testes automatizados

Page 12: Testes automatizados -  Agile Day

Já se sentiu mal fazendo isso?

Page 13: Testes automatizados -  Agile Day

Automação!

Page 14: Testes automatizados -  Agile Day

Automação!

“Computers are designed to do simple repetitive tasks. The

second you have humans doing repetitive tasks, all the

computers get together late at night and laugh at you”

“… Every time you do something for the third time,

automate it. You’ll be doing it a million times…”

Neal Ford

Page 15: Testes automatizados -  Agile Day
Page 16: Testes automatizados -  Agile Day

Cultura de testes sempre sendo feitos junto do desenvolvimento!

Page 17: Testes automatizados -  Agile Day

Lisa Crispin, 2009

Page 18: Testes automatizados -  Agile Day

Tipos de Testes

Unit Testing

Database Testing

Interface Testing

Headless Interface Testing

Visual Regression Testing Tools

Service Layer Testing

BDD/Spec Testing

Load Testing

WebService Testing

….

Page 19: Testes automatizados -  Agile Day

Unit & Service Testing

Java - JUnit, TestNG, NUnit ...

Cobol - T-REX!!!!!! ←JavaScript - Jasmine, Karma, QUnit

Page 20: Testes automatizados -  Agile Day

Interface Testing

Selenium

Python

Ruby

Java

C#

Page 21: Testes automatizados -  Agile Day

Interface Testing

Selenium

PhantonJS

Robotium

http://en.wikipedia.org/wiki/List_of_GUI_testing_tools

Page 22: Testes automatizados -  Agile Day
Page 23: Testes automatizados -  Agile Day

BDD/Spec Testing

Cucumber

SpecFlow

Thucydides

RSpec

Easyb

JBehave

Page 24: Testes automatizados -  Agile Day

Por que Integração Contínua é tão importante?

Page 25: Testes automatizados -  Agile Day

“If it hurts, do it more often and bring the pain

forward”

Martin Fowler - Continuous Integration

Page 26: Testes automatizados -  Agile Day

Dashboards!

Page 27: Testes automatizados -  Agile Day

Dashboards!Nem sempre está verde! =(

Page 28: Testes automatizados -  Agile Day
Page 29: Testes automatizados -  Agile Day

Falando em mudança de paradigmas...

Page 30: Testes automatizados -  Agile Day
Page 31: Testes automatizados -  Agile Day

Workshop em 2011"E se jogarmos nosso servidor de produção pela janela?"

"Quanto tempo para colocar o sistema novamente no ar?"

"Continuous Delivery for DevOps"

Jez Humble / Agosto - 2011

Rio de Janeiro

Page 32: Testes automatizados -  Agile Day

Continuous Integration -> Continuous Delivery

Page 33: Testes automatizados -  Agile Day

Continuous Delivery

Build -> Fase de Integração contínua

Deploy -> Ferramentas Infra as Code

Test -> Smoke Tests, sondas automatizadas de monitoramento

Release -> Processo automatizado de release para usuários (ler sobre feature flags, canary releasing, blue green deployment)

Page 34: Testes automatizados -  Agile Day

Pipeline de Build

Page 35: Testes automatizados -  Agile Day

Mas como ajudar a monitorar nossas aplicações?

Page 36: Testes automatizados -  Agile Day

Vamos sonhar alto?

Page 37: Testes automatizados -  Agile Day

Continuous Delivery & DevOps

Page 38: Testes automatizados -  Agile Day

[email protected]

@carlosfelippeslideshare.net/cfelippe

k21.com.br/treinamentos/