SlideShare a Scribd company logo
1 of 32
Download to read offline
Testing in a
Continuous Delivery
Environment
Siddharth Somasundaram
Stefan Verhoeff
HERE
● Formerly known as Nokia / NAVTEQ Maps
● Powers Bing, Facebook and Yahoo Maps
● 4 out of every 5 cars with in-dash navigation are
powered by HERE
HERE
● Maps on the Web offering here.com
Testing Before Agile
● Testers are only involved in the later stage
● Long regression testing cycle before release
● Developers and Testers have separate work streams
○ Leads to conflicts between them
● Business pressure to release the software
○ Compromise on quality?
Importance of Agile
● Requirements change over time
● Testers are part of the planning process
● The entire team is responsible for Quality
● Faster release cycle
○ From once every 3 months to daily releases
Continuous Delivery
● Release early and often to production
● Automate testing and deployment
● Faster feedback, reduce risks and overhead for releasing
● Hot trend in the industry, especially web companies
But what about Quality Assurance?
● Lots of automation for regression testing
● Build enough trust in the test coverage
● Focus shifts from prevention of bugs to rapid discovery
and resolution
● Exploratory testing can be decoupled from releasing
How do we do it?
● Team Culture and Technical practices we found to be useful
Team Culture Practices
● One agile Team, One Product and One Goal
○ Product Owner
○ Scrum Master
○ Developers / Testers
○ Offshore teams
● Communication solves most of the problems
Collaborate using Work Agreements
The team formulates rules and hold each other
accountable. For example:
● Running tests before committing
● No commits on red build
● First priority is to keep the build green
Build Monitor visible in every room
Pair Programming
Share knowledge with Tech Talks
Combine developer and operation teams
Technical Practices
Continuous Integration
Test Driven Development
● Code and tests are developed at the same time
Build Pipeline
●
Test Coverage at all levels
© Alister Scott http://watirmelon.com/2011/06/10/yet-another-software-testing-pyramid/
Eliminate Flaky Tests
● Essential to keep the team
trusting the test results
● Mocking dependencies
Feature Flags
● No branching
○ Prevent integration problems
○ Quality built in
● Turn features on in production
when they are ready
● Quality boundaries for
different release stages
Logging & Monitoring
● What happens after we go live?
● Production monitoring ensures edge cases are covered
● Real-time metrics for: system, application, business
Logging & Monitoring
● Quickly responding to alerts
● Production is the ultimate proof the code works
Bug introduced We fixed it :-)
In Conclusion...
Is it Successful? The Metrics
2010 Now
Release quarterly Release daily
Mostly manual testing 7000+ unit tests, 400+
GUI tests
Preparing release takes
weeks
Release package ready
in 45 minutes
Deployment takes days Deploy 3 sites in 10
minutes
Management signoff
required
Team empowered to
make changes
Deployments 2012 vs 2013
Business Benefits
● Reduce risk involved in big changes
● Reduce time to market
● Smaller more frequent feature rollouts
● Quickly learn from feedback on product changes
Business Benefits
● Predictable releases
● Improved team morale
○ Less time spend in stressful firefighting
○ Less bug fixing, more feature delivery
○ Satisfaction of delivering to the customer
Challenges
● Everybody agreeing on the process
● Discipline comes over time only
● Feedback needs to be given quickly
● High investment in test automation and keeping it
running smoothly
● Need to react to incidents quickly
Future Plans
● Deploy every build to production
● Keep on investing in Automation and Monitoring
● Canary deployments to validate new releases before
global rollout
● Leverage quick cycle time for A/B testing driven feature
development
HERE Checklist
Team Culture
● One Team
● Work Agreements
● Build Monitor in the
room
● Pair Programming
● Tech Talks
● DevOps
Technical
● Continuous Integration
● Test Driven Development
● Build Pipeline
● Test Coverage on all
levels
● Feature Flags
● Logging & Monitoring
Merci Beaucoup
Thank You
Danke Schön
Grazie

More Related Content

What's hot

Top 5 Automation Challenges Webinar
Top 5 Automation Challenges WebinarTop 5 Automation Challenges Webinar
Top 5 Automation Challenges WebinarPerfecto by Perforce
 
10 Emerging Test Frameworks for Cross Browser Testing
10 Emerging Test Frameworks for Cross Browser Testing10 Emerging Test Frameworks for Cross Browser Testing
10 Emerging Test Frameworks for Cross Browser TestingPerfecto by Perforce
 
DevOps Testing | Continuous Testing In DevOps | DevOps Tutorial | DevOps Trai...
DevOps Testing | Continuous Testing In DevOps | DevOps Tutorial | DevOps Trai...DevOps Testing | Continuous Testing In DevOps | DevOps Tutorial | DevOps Trai...
DevOps Testing | Continuous Testing In DevOps | DevOps Tutorial | DevOps Trai...Edureka!
 
Automated Testing at The Speed of Headless by Alissa Lydon and Samantha Coffman
Automated Testing at The Speed of Headless by Alissa Lydon and Samantha CoffmanAutomated Testing at The Speed of Headless by Alissa Lydon and Samantha Coffman
Automated Testing at The Speed of Headless by Alissa Lydon and Samantha CoffmanSauce Labs
 
Advanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive WebAdvanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive WebPerfecto by Perforce
 
CI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality EngineeringCI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality EngineeringSushma
 
How to Measure Success in Continuous Testing by Fernando Vidal and Amir Rozen...
How to Measure Success in Continuous Testing by Fernando Vidal and Amir Rozen...How to Measure Success in Continuous Testing by Fernando Vidal and Amir Rozen...
How to Measure Success in Continuous Testing by Fernando Vidal and Amir Rozen...Sauce Labs
 
How to Leverage XCUITest for Continuous Testing
How to Leverage XCUITest for Continuous TestingHow to Leverage XCUITest for Continuous Testing
How to Leverage XCUITest for Continuous TestingPerfecto by Perforce
 
Agile-plus-DevOps Testing for Packaged Applications
Agile-plus-DevOps Testing for Packaged ApplicationsAgile-plus-DevOps Testing for Packaged Applications
Agile-plus-DevOps Testing for Packaged ApplicationsWorksoft
 
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016Ori Bendet
 
DOES15 - Vineet Banga and Jacob Johnson - Learnings from a DevOps Organizatio...
DOES15 - Vineet Banga and Jacob Johnson - Learnings from a DevOps Organizatio...DOES15 - Vineet Banga and Jacob Johnson - Learnings from a DevOps Organizatio...
DOES15 - Vineet Banga and Jacob Johnson - Learnings from a DevOps Organizatio...Gene Kim
 
Quality in dev ops east 2017
Quality in dev ops east 2017Quality in dev ops east 2017
Quality in dev ops east 2017Amir Rozenberg
 
The Push From Within - A Journey of Transformation at Walmart Labs by Claude ...
The Push From Within - A Journey of Transformation at Walmart Labs by Claude ...The Push From Within - A Journey of Transformation at Walmart Labs by Claude ...
The Push From Within - A Journey of Transformation at Walmart Labs by Claude ...Sauce Labs
 
The Challenges & Pitfalls of Database Continuous Delivery
The Challenges & Pitfalls of Database Continuous DeliveryThe Challenges & Pitfalls of Database Continuous Delivery
The Challenges & Pitfalls of Database Continuous DeliveryPerforce
 
Upgrade automatically to Sitecore
Upgrade automatically to SitecoreUpgrade automatically to Sitecore
Upgrade automatically to SitecoreJatinder Yadav
 
5 Keys to Your Best Automated Testing Strategy
5 Keys to Your Best Automated Testing Strategy5 Keys to Your Best Automated Testing Strategy
5 Keys to Your Best Automated Testing StrategySOASTA
 
QA in DevOps: Transformation thru Automation via Jenkins
QA in DevOps:  Transformation thru Automation via JenkinsQA in DevOps:  Transformation thru Automation via Jenkins
QA in DevOps: Transformation thru Automation via JenkinsTatyana Kravtsov
 

What's hot (20)

Appium vs Espresso and XCUI Test
Appium vs Espresso and XCUI TestAppium vs Espresso and XCUI Test
Appium vs Espresso and XCUI Test
 
Top 5 Automation Challenges Webinar
Top 5 Automation Challenges WebinarTop 5 Automation Challenges Webinar
Top 5 Automation Challenges Webinar
 
10 Emerging Test Frameworks for Cross Browser Testing
10 Emerging Test Frameworks for Cross Browser Testing10 Emerging Test Frameworks for Cross Browser Testing
10 Emerging Test Frameworks for Cross Browser Testing
 
Continuous testing for devops
Continuous testing for devopsContinuous testing for devops
Continuous testing for devops
 
CD
CDCD
CD
 
DevOps Testing | Continuous Testing In DevOps | DevOps Tutorial | DevOps Trai...
DevOps Testing | Continuous Testing In DevOps | DevOps Tutorial | DevOps Trai...DevOps Testing | Continuous Testing In DevOps | DevOps Tutorial | DevOps Trai...
DevOps Testing | Continuous Testing In DevOps | DevOps Tutorial | DevOps Trai...
 
Automated Testing at The Speed of Headless by Alissa Lydon and Samantha Coffman
Automated Testing at The Speed of Headless by Alissa Lydon and Samantha CoffmanAutomated Testing at The Speed of Headless by Alissa Lydon and Samantha Coffman
Automated Testing at The Speed of Headless by Alissa Lydon and Samantha Coffman
 
Advanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive WebAdvanced Strategies for Testing Responsive Web
Advanced Strategies for Testing Responsive Web
 
CI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality EngineeringCI/CT/CD and Role of Quality Engineering
CI/CT/CD and Role of Quality Engineering
 
How to Measure Success in Continuous Testing by Fernando Vidal and Amir Rozen...
How to Measure Success in Continuous Testing by Fernando Vidal and Amir Rozen...How to Measure Success in Continuous Testing by Fernando Vidal and Amir Rozen...
How to Measure Success in Continuous Testing by Fernando Vidal and Amir Rozen...
 
How to Leverage XCUITest for Continuous Testing
How to Leverage XCUITest for Continuous TestingHow to Leverage XCUITest for Continuous Testing
How to Leverage XCUITest for Continuous Testing
 
Agile-plus-DevOps Testing for Packaged Applications
Agile-plus-DevOps Testing for Packaged ApplicationsAgile-plus-DevOps Testing for Packaged Applications
Agile-plus-DevOps Testing for Packaged Applications
 
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
Tales from the Dark Side: Ori Bendet Selenium Conference India 2016
 
DOES15 - Vineet Banga and Jacob Johnson - Learnings from a DevOps Organizatio...
DOES15 - Vineet Banga and Jacob Johnson - Learnings from a DevOps Organizatio...DOES15 - Vineet Banga and Jacob Johnson - Learnings from a DevOps Organizatio...
DOES15 - Vineet Banga and Jacob Johnson - Learnings from a DevOps Organizatio...
 
Quality in dev ops east 2017
Quality in dev ops east 2017Quality in dev ops east 2017
Quality in dev ops east 2017
 
The Push From Within - A Journey of Transformation at Walmart Labs by Claude ...
The Push From Within - A Journey of Transformation at Walmart Labs by Claude ...The Push From Within - A Journey of Transformation at Walmart Labs by Claude ...
The Push From Within - A Journey of Transformation at Walmart Labs by Claude ...
 
The Challenges & Pitfalls of Database Continuous Delivery
The Challenges & Pitfalls of Database Continuous DeliveryThe Challenges & Pitfalls of Database Continuous Delivery
The Challenges & Pitfalls of Database Continuous Delivery
 
Upgrade automatically to Sitecore
Upgrade automatically to SitecoreUpgrade automatically to Sitecore
Upgrade automatically to Sitecore
 
5 Keys to Your Best Automated Testing Strategy
5 Keys to Your Best Automated Testing Strategy5 Keys to Your Best Automated Testing Strategy
5 Keys to Your Best Automated Testing Strategy
 
QA in DevOps: Transformation thru Automation via Jenkins
QA in DevOps:  Transformation thru Automation via JenkinsQA in DevOps:  Transformation thru Automation via Jenkins
QA in DevOps: Transformation thru Automation via Jenkins
 

Viewers also liked

Flaky tests and bugs in Apache software (e.g. Hadoop)
Flaky tests and bugs in Apache software (e.g. Hadoop)Flaky tests and bugs in Apache software (e.g. Hadoop)
Flaky tests and bugs in Apache software (e.g. Hadoop)Akihiro Suda
 
Webinar Navita | Saiba Como Profissionalizar a Gestão de Dispositivos Móveis...
Webinar Navita |  Saiba Como Profissionalizar a Gestão de Dispositivos Móveis...Webinar Navita |  Saiba Como Profissionalizar a Gestão de Dispositivos Móveis...
Webinar Navita | Saiba Como Profissionalizar a Gestão de Dispositivos Móveis...Navita BR
 
Designing a Mobile Device Lab - XBOSoft Webinar
Designing a Mobile Device Lab - XBOSoft WebinarDesigning a Mobile Device Lab - XBOSoft Webinar
Designing a Mobile Device Lab - XBOSoft WebinarXBOSoft
 
Case Walmart.com: a prática da entrega de software com rapidez e qualidade
Case Walmart.com: a prática da entrega de software com rapidez e qualidadeCase Walmart.com: a prática da entrega de software com rapidez e qualidade
Case Walmart.com: a prática da entrega de software com rapidez e qualidadeRodrigo Russo
 
Lean DevOps for Mobility [Decoding DevOps Conference - InfoSeption]
Lean DevOps for Mobility [Decoding DevOps Conference - InfoSeption]Lean DevOps for Mobility [Decoding DevOps Conference - InfoSeption]
Lean DevOps for Mobility [Decoding DevOps Conference - InfoSeption]InfoSeption
 
Hassle-Free Continuous Integration with Real Device Testing
Hassle-Free Continuous Integration with Real Device TestingHassle-Free Continuous Integration with Real Device Testing
Hassle-Free Continuous Integration with Real Device TestingBitbar
 
Mobile Application Testing Strategy
Mobile Application Testing StrategyMobile Application Testing Strategy
Mobile Application Testing StrategyankitQA
 
Best Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App TestingBest Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App TestingBitbar
 
Enterprise mobility, strategy and execution approach
Enterprise mobility, strategy and execution approachEnterprise mobility, strategy and execution approach
Enterprise mobility, strategy and execution approachRapidValue
 
10 Challenges for Emerging Market Startup Ecosystems
10 Challenges for Emerging Market Startup Ecosystems10 Challenges for Emerging Market Startup Ecosystems
10 Challenges for Emerging Market Startup EcosystemsDave McClure
 
Developing a Progressive Mobile Strategy
Developing a Progressive Mobile StrategyDeveloping a Progressive Mobile Strategy
Developing a Progressive Mobile StrategyDave Olsen
 
Startup Metrics for Pirates
Startup Metrics for PiratesStartup Metrics for Pirates
Startup Metrics for PiratesDave McClure
 
State of the Word 2011
State of the Word 2011State of the Word 2011
State of the Word 2011photomatt
 
TEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkTEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkVolker Hirsch
 

Viewers also liked (16)

Flaky tests and bugs in Apache software (e.g. Hadoop)
Flaky tests and bugs in Apache software (e.g. Hadoop)Flaky tests and bugs in Apache software (e.g. Hadoop)
Flaky tests and bugs in Apache software (e.g. Hadoop)
 
Webinar Navita | Saiba Como Profissionalizar a Gestão de Dispositivos Móveis...
Webinar Navita |  Saiba Como Profissionalizar a Gestão de Dispositivos Móveis...Webinar Navita |  Saiba Como Profissionalizar a Gestão de Dispositivos Móveis...
Webinar Navita | Saiba Como Profissionalizar a Gestão de Dispositivos Móveis...
 
Designing a Mobile Device Lab - XBOSoft Webinar
Designing a Mobile Device Lab - XBOSoft WebinarDesigning a Mobile Device Lab - XBOSoft Webinar
Designing a Mobile Device Lab - XBOSoft Webinar
 
Case Walmart.com: a prática da entrega de software com rapidez e qualidade
Case Walmart.com: a prática da entrega de software com rapidez e qualidadeCase Walmart.com: a prática da entrega de software com rapidez e qualidade
Case Walmart.com: a prática da entrega de software com rapidez e qualidade
 
Lean DevOps for Mobility [Decoding DevOps Conference - InfoSeption]
Lean DevOps for Mobility [Decoding DevOps Conference - InfoSeption]Lean DevOps for Mobility [Decoding DevOps Conference - InfoSeption]
Lean DevOps for Mobility [Decoding DevOps Conference - InfoSeption]
 
Hassle-Free Continuous Integration with Real Device Testing
Hassle-Free Continuous Integration with Real Device TestingHassle-Free Continuous Integration with Real Device Testing
Hassle-Free Continuous Integration with Real Device Testing
 
Enterprise mobility
Enterprise mobility Enterprise mobility
Enterprise mobility
 
Mobile Application Testing Strategy
Mobile Application Testing StrategyMobile Application Testing Strategy
Mobile Application Testing Strategy
 
Best Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App TestingBest Practices for DevOps in Mobile App Testing
Best Practices for DevOps in Mobile App Testing
 
Enterprise mobility, strategy and execution approach
Enterprise mobility, strategy and execution approachEnterprise mobility, strategy and execution approach
Enterprise mobility, strategy and execution approach
 
10 Challenges for Emerging Market Startup Ecosystems
10 Challenges for Emerging Market Startup Ecosystems10 Challenges for Emerging Market Startup Ecosystems
10 Challenges for Emerging Market Startup Ecosystems
 
Developing a Progressive Mobile Strategy
Developing a Progressive Mobile StrategyDeveloping a Progressive Mobile Strategy
Developing a Progressive Mobile Strategy
 
Startup Metrics for Pirates
Startup Metrics for PiratesStartup Metrics for Pirates
Startup Metrics for Pirates
 
State of the Word 2011
State of the Word 2011State of the Word 2011
State of the Word 2011
 
Build Features, Not Apps
Build Features, Not AppsBuild Features, Not Apps
Build Features, Not Apps
 
TEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of WorkTEDx Manchester: AI & The Future of Work
TEDx Manchester: AI & The Future of Work
 

Similar to Testing in a Continuous Delivery Environment

Continues delivery - Introduction
Continues delivery - IntroductionContinues delivery - Introduction
Continues delivery - IntroductionErez Attar
 
CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...
CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...
CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...CodeScience
 
Software Development Methodologies
Software Development Methodologies Software Development Methodologies
Software Development Methodologies Frances Coronel
 
Introduction to CI/CD
Introduction to CI/CDIntroduction to CI/CD
Introduction to CI/CDHoang Le
 
High Performance Software Engineering Teams
High Performance Software Engineering TeamsHigh Performance Software Engineering Teams
High Performance Software Engineering TeamsLars Thorup
 
IFG for SAP Integration, webinar on Automated Testing
IFG for SAP Integration, webinar on Automated TestingIFG for SAP Integration, webinar on Automated Testing
IFG for SAP Integration, webinar on Automated TestingDaniel Graversen
 
What is quality, and how do we build it in
What is quality, and how do we build it in What is quality, and how do we build it in
What is quality, and how do we build it in Maryam Umar
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Kari Kakkonen
 
Continuous everything
Continuous everythingContinuous everything
Continuous everythingTEST Huddle
 
Software Release Orchestration and the Enterprise
Software Release Orchestration and the EnterpriseSoftware Release Orchestration and the Enterprise
Software Release Orchestration and the EnterpriseXebiaLabs
 
Puppet + Diaxon: Getting to the next stage of DevOps evolution
Puppet + Diaxon: Getting to the next stage of DevOps evolutionPuppet + Diaxon: Getting to the next stage of DevOps evolution
Puppet + Diaxon: Getting to the next stage of DevOps evolutionPuppet
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Moataz Nabil
 
Quality Assurance: An Overview
Quality Assurance: An OverviewQuality Assurance: An Overview
Quality Assurance: An OverviewAnant Corporation
 
Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...
Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...
Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...Turkish Testing Board
 
DevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best PracticesDevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best PracticesQBurst
 

Similar to Testing in a Continuous Delivery Environment (20)

Continues delivery - Introduction
Continues delivery - IntroductionContinues delivery - Introduction
Continues delivery - Introduction
 
CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...
CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...
CodeScience Webinar - Automated Testing for Your Salesforce App — Tips and Tr...
 
Software Development Methodologies
Software Development Methodologies Software Development Methodologies
Software Development Methodologies
 
Introduction to CI/CD
Introduction to CI/CDIntroduction to CI/CD
Introduction to CI/CD
 
High Performance Software Engineering Teams
High Performance Software Engineering TeamsHigh Performance Software Engineering Teams
High Performance Software Engineering Teams
 
IFG for SAP Integration, webinar on Automated Testing
IFG for SAP Integration, webinar on Automated TestingIFG for SAP Integration, webinar on Automated Testing
IFG for SAP Integration, webinar on Automated Testing
 
What is quality, and how do we build it in
What is quality, and how do we build it in What is quality, and how do we build it in
What is quality, and how do we build it in
 
QA Best Practices in Agile World_new
QA Best Practices in Agile World_newQA Best Practices in Agile World_new
QA Best Practices in Agile World_new
 
Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle Agile Testing – embedding testing into agile software development lifecycle
Agile Testing – embedding testing into agile software development lifecycle
 
DevTestOps
DevTestOpsDevTestOps
DevTestOps
 
Software management for tech startups
Software management for tech startupsSoftware management for tech startups
Software management for tech startups
 
Continuous everything
Continuous everythingContinuous everything
Continuous everything
 
Software Release Orchestration and the Enterprise
Software Release Orchestration and the EnterpriseSoftware Release Orchestration and the Enterprise
Software Release Orchestration and the Enterprise
 
Puppet + Diaxon: Getting to the next stage of DevOps evolution
Puppet + Diaxon: Getting to the next stage of DevOps evolutionPuppet + Diaxon: Getting to the next stage of DevOps evolution
Puppet + Diaxon: Getting to the next stage of DevOps evolution
 
Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013Working Agile with Scrum and TFS 2013
Working Agile with Scrum and TFS 2013
 
Demystifying Devops - Uday kumar
Demystifying Devops - Uday kumarDemystifying Devops - Uday kumar
Demystifying Devops - Uday kumar
 
Quality Assurance: An Overview
Quality Assurance: An OverviewQuality Assurance: An Overview
Quality Assurance: An Overview
 
Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...
Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...
Testistanbul 2016 - Keynote: "Why Automated Verification Matters" by Kristian...
 
DevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best PracticesDevOps Transformation: Learnings and Best Practices
DevOps Transformation: Learnings and Best Practices
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 

Recently uploaded

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 

Recently uploaded (20)

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 

Testing in a Continuous Delivery Environment

  • 1. Testing in a Continuous Delivery Environment Siddharth Somasundaram Stefan Verhoeff
  • 2. HERE ● Formerly known as Nokia / NAVTEQ Maps ● Powers Bing, Facebook and Yahoo Maps ● 4 out of every 5 cars with in-dash navigation are powered by HERE
  • 3. HERE ● Maps on the Web offering here.com
  • 4. Testing Before Agile ● Testers are only involved in the later stage ● Long regression testing cycle before release ● Developers and Testers have separate work streams ○ Leads to conflicts between them ● Business pressure to release the software ○ Compromise on quality?
  • 5. Importance of Agile ● Requirements change over time ● Testers are part of the planning process ● The entire team is responsible for Quality ● Faster release cycle ○ From once every 3 months to daily releases
  • 6. Continuous Delivery ● Release early and often to production ● Automate testing and deployment ● Faster feedback, reduce risks and overhead for releasing ● Hot trend in the industry, especially web companies
  • 7. But what about Quality Assurance? ● Lots of automation for regression testing ● Build enough trust in the test coverage ● Focus shifts from prevention of bugs to rapid discovery and resolution ● Exploratory testing can be decoupled from releasing
  • 8. How do we do it? ● Team Culture and Technical practices we found to be useful
  • 9. Team Culture Practices ● One agile Team, One Product and One Goal ○ Product Owner ○ Scrum Master ○ Developers / Testers ○ Offshore teams ● Communication solves most of the problems
  • 10. Collaborate using Work Agreements The team formulates rules and hold each other accountable. For example: ● Running tests before committing ● No commits on red build ● First priority is to keep the build green
  • 11. Build Monitor visible in every room
  • 13. Share knowledge with Tech Talks
  • 14. Combine developer and operation teams
  • 17. Test Driven Development ● Code and tests are developed at the same time
  • 19. Test Coverage at all levels © Alister Scott http://watirmelon.com/2011/06/10/yet-another-software-testing-pyramid/
  • 20. Eliminate Flaky Tests ● Essential to keep the team trusting the test results ● Mocking dependencies
  • 21. Feature Flags ● No branching ○ Prevent integration problems ○ Quality built in ● Turn features on in production when they are ready ● Quality boundaries for different release stages
  • 22. Logging & Monitoring ● What happens after we go live? ● Production monitoring ensures edge cases are covered ● Real-time metrics for: system, application, business
  • 23. Logging & Monitoring ● Quickly responding to alerts ● Production is the ultimate proof the code works Bug introduced We fixed it :-)
  • 25. Is it Successful? The Metrics 2010 Now Release quarterly Release daily Mostly manual testing 7000+ unit tests, 400+ GUI tests Preparing release takes weeks Release package ready in 45 minutes Deployment takes days Deploy 3 sites in 10 minutes Management signoff required Team empowered to make changes
  • 27. Business Benefits ● Reduce risk involved in big changes ● Reduce time to market ● Smaller more frequent feature rollouts ● Quickly learn from feedback on product changes
  • 28. Business Benefits ● Predictable releases ● Improved team morale ○ Less time spend in stressful firefighting ○ Less bug fixing, more feature delivery ○ Satisfaction of delivering to the customer
  • 29. Challenges ● Everybody agreeing on the process ● Discipline comes over time only ● Feedback needs to be given quickly ● High investment in test automation and keeping it running smoothly ● Need to react to incidents quickly
  • 30. Future Plans ● Deploy every build to production ● Keep on investing in Automation and Monitoring ● Canary deployments to validate new releases before global rollout ● Leverage quick cycle time for A/B testing driven feature development
  • 31. HERE Checklist Team Culture ● One Team ● Work Agreements ● Build Monitor in the room ● Pair Programming ● Tech Talks ● DevOps Technical ● Continuous Integration ● Test Driven Development ● Build Pipeline ● Test Coverage on all levels ● Feature Flags ● Logging & Monitoring