SlideShare a Scribd company logo
Testing
continous Integration
continous Delivery
…in the real world!
Roc Boronat
I develop Android things
– I wanna learn about testing! – Roc 2014
tests
introducing
unitary tests
integration tests
instrumentation tests
we started with unitary tests to
develop regular expressions
^[6789]{1}[0-9]{8}$
^0{2}[0-9]{11,}
we started with unitary tests to
develop regular expressions
we started with unitary tests to
develop regular expressions
we started with unitary tests to
develop regular expressions
we started with unitary tests to
develop regular expressions
given
when
then
given
when
then
we started with unitary tests to
parse deeplink URL’s
this happens at
we started with unitary tests to
parse deeplink URL’s
this happens at
we started with unitary tests to
parse deeplink URL’s
this happens at
we started with unitary tests to
improve an invoice generator
Customer can have a insurance… or not
The insurance can have a coverage limit… or not
The insurance can have a franchise deductible… or not
The insurance company can pay the VAT of the amount… or not
we started with unitary tests to
improve an invoice generator
we started with unitary tests to
improve an invoice generator
we started with unitary tests to
refactor legacy code
this happens at
we started with unitary tests to
refactor legacy code
Sandro Mancuso
craftedws.blogspot.com
Testing and Refactoring Legacy Code
youtu.be/_NnElPO5BU0
Legacy Code Rules
• You cannot change production code if not covered by tests
… just automated refactorings (via IDE) are allowed, if needed to write the test
this happens at
we started with unitary tests to
refactor legacy code
Sandro Mancuso
craftedws.blogspot.com
Testing and Refactoring Legacy Code
youtu.be/_NnElPO5BU0
this happens at
last tips about unitary tests
follow the given-when-then style
test one thing at a time
test the domain: is easy and valuable
frustration is the first step towards improvement
know the tools: JUnit + AssertJ + Mockito
unitary tests
integration tests
instrumentation tests
we started with integration test to
develop an API module
this happens at
quit smoking with your phone
tips about integration tests
develop the API module by TDD
check that your customer’s API has not changed
monitor your own API using a CI tool
unitary tests
integration tests
instrumentation tests
we started with instrumentation test to
test an app end to end
this happens at
we started with instrumentation test to
test an app end to end
this happens at
we started with instrumentation test to
test an app end to end
this happens at
tips about instrumentation tests
simple way to do «defensive testing»
fast way to develop «deep screens»
Espresso has been a game changer
They use to fail at CI tools
extra point: TDD
test-driven development
extra point: TDD
test-driven development
extra point 2: EDD?
error-driven development
Someone found a bug?
Write a test that reproduces it before fixing it!
extra point 2: EDD?
error-driven development
this happens at
continous *
introducing
continous integration
continous delivery
we started with continous integration to
fail fast
this happens at
quit smoking with your phone
we started with continous integration to
fail fast
this happens at
quit smoking with your phone
we started with continous integration to
maintain code quality
this happens at
we started with continous integration to
maintain code quality
this happens at
continous integration
continous delivery
we started with continous delivery to
launch releases from SourceTree
Group of Betatesters 0,5% of users
this happens at
quit smoking with your phone
we started with continous delivery to
update stakeholders
the product owners have
the last developed feature
in their phones
this happens at
we started with continous delivery to
launch releases from Terminal
Group of Betatesters Alpha Release
this happens at
Testing, CI and CD in the real world
Testing, CI and CD in the real world
Roc Boronat
roc@fewlaps.com

More Related Content

PPTX
continous integration and delivery
PPT
Continous Integration: A Case Study
ODP
Continous integration
PDF
Tdd2018 state of the software quality in Germany
PDF
Job manager 2020 in Angular
PPTX
Bringing Quality Design Systems to Life with Storybook & Applitools
PDF
Why software projects fail in 2021?
PDF
Boquet manager
continous integration and delivery
Continous Integration: A Case Study
Continous integration
Tdd2018 state of the software quality in Germany
Job manager 2020 in Angular
Bringing Quality Design Systems to Life with Storybook & Applitools
Why software projects fail in 2021?
Boquet manager

What's hot (19)

PPTX
Outside-in Testing in Vue with Cypress
PPTX
The four generations of test automation
PDF
When you get lost in api testing #ForumPHP
PDF
Testing Hourglass at Jira Frontend - by Alexey Shpakov, Sr. Developer @ Atlas...
KEY
Code Review: An apple a day
PDF
7 QA Tests You Should Be Running
PPT
Presentation_TDD
PDF
CP-SAT - Certified Professional Selenium Automation Testing
PDF
ESLint Plugin for UI Tests
PPTX
Code review
PDF
Why is mobile testing important?
PDF
Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
PPTX
How to be proud when you are done
PPTX
D-CAST Real Life TestOps Environment
PDF
Continuous Integration
PDF
Testing Android apps with Robotium
PDF
[webinar] Best of Breed: Successful Test Automation Practices from Innovative...
PDF
Continuous, continuous, continuous
PPTX
XP Injection
Outside-in Testing in Vue with Cypress
The four generations of test automation
When you get lost in api testing #ForumPHP
Testing Hourglass at Jira Frontend - by Alexey Shpakov, Sr. Developer @ Atlas...
Code Review: An apple a day
7 QA Tests You Should Be Running
Presentation_TDD
CP-SAT - Certified Professional Selenium Automation Testing
ESLint Plugin for UI Tests
Code review
Why is mobile testing important?
Visual Testing: Quality and Speed -- by GIl Tayar, Applitools
How to be proud when you are done
D-CAST Real Life TestOps Environment
Continuous Integration
Testing Android apps with Robotium
[webinar] Best of Breed: Successful Test Automation Practices from Innovative...
Continuous, continuous, continuous
XP Injection
Ad

Viewers also liked (7)

PDF
Redescubre la programación - #MPWAR - #OpenDayLaSalle
PPTX
Your code as a crime scene
PDF
We broke up with the monolith, and started dating #eventSourcing - #symfonyCat
PDF
Software craftmanship coaching
PDF
Scala Json Features and Performance
PDF
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
PDF
Building and deploying microservices with event sourcing, CQRS and Docker (QC...
Redescubre la programación - #MPWAR - #OpenDayLaSalle
Your code as a crime scene
We broke up with the monolith, and started dating #eventSourcing - #symfonyCat
Software craftmanship coaching
Scala Json Features and Performance
バッチを Akka Streams で再実装したら100倍速くなった話 #ScalaMatsuri
Building and deploying microservices with event sourcing, CQRS and Docker (QC...
Ad

Similar to Testing, CI and CD in the real world (20)

PDF
Pair programming pair testing working together with the developers by Simon ...
PPTX
Test-Driven Development
PDF
Android testing part i
PDF
Test driven development
PDF
Test Driven Development
PDF
Unit testing (Exploring the other side as a tester)
PPTX
Java Unit Testing
PPTX
The Test way
PDF
Unit testing - An introduction
PPTX
2016 10-04: tdd++: tdd made easier
PPTX
TDD - Agile
PPT
Google test training
PPTX
Unit testing and junit
PDF
Test Driven Development - Workshop
PPTX
Unit Tests And Automated Testing
PPT
Automated testing overview
PDF
Unit testing basic
PDF
Agile Work Quality: Test Driven Development and Unit Tests
ODP
Unit Test Android Without Going Bald
PDF
Deliver Faster with BDD/TDD - Designing Automated Tests That Don't Suck
Pair programming pair testing working together with the developers by Simon ...
Test-Driven Development
Android testing part i
Test driven development
Test Driven Development
Unit testing (Exploring the other side as a tester)
Java Unit Testing
The Test way
Unit testing - An introduction
2016 10-04: tdd++: tdd made easier
TDD - Agile
Google test training
Unit testing and junit
Test Driven Development - Workshop
Unit Tests And Automated Testing
Automated testing overview
Unit testing basic
Agile Work Quality: Test Driven Development and Unit Tests
Unit Test Android Without Going Bald
Deliver Faster with BDD/TDD - Designing Automated Tests That Don't Suck

More from Roc Boronat (10)

PPTX
Introducing EDD: Error Driven Development
PDF
From CVS to GIT
PDF
Introducing Clean Architecture
PDF
Testing, CI and CD in the real world
PDF
The chromecast's guide to the galaxy
PDF
Sessió motivacional
PDF
QuitNow!
PDF
Hello NFC!
PDF
Barcelona Bicing: Next steps
PDF
Hello GoogleMaps!
Introducing EDD: Error Driven Development
From CVS to GIT
Introducing Clean Architecture
Testing, CI and CD in the real world
The chromecast's guide to the galaxy
Sessió motivacional
QuitNow!
Hello NFC!
Barcelona Bicing: Next steps
Hello GoogleMaps!

Testing, CI and CD in the real world