SlideShare ist ein Scribd-Unternehmen logo
1 von 56
Downloaden Sie, um offline zu lesen
DevTestOps
Cultural Change Through
Quality Assurance
Module 1 - Talk the Talk
Module Contents
What is DevOps?
What is DevTestOps?
Module Objectives
❏ Learn, comprehend and practice DevOps principles and
fundamentals
❏ Understanding of where testing plays a part
❏ Become a competent and courageous DevOps
Team member.
Module Contents...
VM Basics
https://www.virtualbox.org/
https://www.centos.org/download/
Docker Basics
https://store.docker.com/editions/community/docker-ce-server-centos
Source Code Management
https://git-scm.com/
What is DevOps?
The WIKI definition of DevOps
DevOps is a software engineering practice that
aims at unifying software development (Dev) and
software operation (Ops). The main characteristic
of the DevOps movement is to strongly advocate
automation and monitoring at all steps of
software construction, from integration, testing,
releasing to deployment and infrastructure
management. DevOps aims at shorter
development cycles, increased deployment
frequency, more dependable releases, in close
alignment with business objectives
What is DevOps? Continue...
Examples of Practices?
What is DevOps? Continue...
Examples of Practices?
- Law Practice
- Accounting Practice
- Physiotherapy Practice
- Agile Practice
What is DevOps? Continue...
Examples of Practices?
- DevOps Practice
What is DevOps? Continue...
The Wall of Confusion
What is DevOps? Continue...
What is DevOps? Continue...
6 Principles of DevOps
1. Customer Centric Action
➢ Meeting customer requirements through short
feedback loops
➢ Courage to act and innovate continuously
➢ Pivot When strategy is not working
➢ Invest in products and services for customer
delight
What is DevOps? Continue...
2. Create With the End In Mind
➢ Let go of waterfall process-oriented models
➢ Act as product companies selling to real
customers
➢ All members require an engineering mindset
to envision and realise the product
What is DevOps? Continue...
3. End to End Responsibility
➢ Vertically organised teams
➢ Team is responsible till end of life
➢ Full support including quality and performance
What is DevOps? Continue...
4. Cross Functional
Autonomous Teams
➢ Fully responsible
➢ T-Shaped all rounders
➢ Hotbed for growth
What is DevOps? Continue...
5. Continuous Improvement
➢ Fail Fast
➢ Minimise waste
➢ Optimise for speed costs and ease of delivery
➢ Experimentation is paramount
➢ If it hurts do it more
What is DevOps? Continue...
6. Automate Everything You Can
➢ Adopt CI culture with high cycle rates and
instant feedback
➢ Includes infrastructure and container based
cloud platforms
➢ Synonymous with drive to renew delivery
methods
What is DevOps? Continue...
Key Elements of DevOps Teams
❏ Team Building
What is DevOps? Continue...
Key Elements of DevOps Teams
❏ Team Building
❏ CI and Problem Solving
What is DevOps? Continue...
Key Elements of DevOps Teams
❏ Team Building
❏ CI and Problem Solving
❏ Leadership and
Feedback
What is DevOps? Continue...
Key Elements of DevOps Teams
❏ Team Building
❏ CI and Problem Solving
❏ Leadership and Feedback
❏ Courage and Experimentation
What is DevOps? Continue...
Traditional Organisation Model
What is DevOps? Continue...
DevOps Organisation Model
What is DevOps? Continue...
A Common Microservice example
What is DevOps? Continue...
Solution Architecture for DevOps
What is DevOps? Continue...
Teams Supporting a Monolithic Architecture
What is DevOps? Continue...
DevOps Supporting a Microservice Architecture
What is DevOps? Continue...
Stats from Puppet
What is DevOps? Continue...
Summary
History and Definition
6 Principles of DevOps
Key Elements of DevOps Teams
Organisational Model
Solution Architecture
What is DevOps? Continue...
Questions?
pmateos@planittesting.com
@paulconsults
https://www.linkedin.com/in/paul-mateos-213b2167/
What is DevOps? Continue...
https://blogs.msdn.microsoft.com/uk_faculty_connection/2016/06/23/devops-the-wall-of-confusion-un
derstanding-the-basics-of-devops/
https://www.mulesoft.com/resources/api/microservices-devops-better-together
https://www.devopsagileskills.org/dasa-devops-principles/
http://leanmanufacturingtools.org/77/the-seven-wastes-7-mudas/
https://www.slideshare.net/SherryChang/evolving-team-structure-in-devops
https://www.slideshare.net/DevOpstastic/support-that-devops-change-agents-need
http://www.planitdevops.com
References
What is DevOps? Continue...
https://purplegriffon.com/quizzes/devops-mini
Quiz TIme
DevTestOps
Cultural Change Through
Quality Assurance
Module 1 - Talk the Talk
What is DevTestOps?
DevOps with Quality Assurance as the
focul point
Bringing Planit’s Strengths in Agile,
Automation, Engineering and Quality
Assurance together
Implementation of Testing practices
throughout the DevOps End to End
process
What is DevTestOps? Continue...
Risk Appetites - Severity / Occurrence
What is DevTestOps? Continue...
Risk Appetites - Change of Mentality
What is DevTestOps? Continue...
Strategic Objective
What does the organisation want versus what they need?
● Speed To Market
● Product Quality
● Or Stability of the Production Environment
What is DevTestOps? Continue...
Paths To Communication - 5 Steps
1. Identify - Anyone who works outside of your team
2. Connect - Make connections with each individual
3. Invite - Widen the connection by bringing in new
people
4. Mark - Recording the communication for future
use
5. Widen - the path through activities that engage
What is DevTestOps?
Testing pyramid
● The reality is Test Automation is
expensive and takes a long time to
implement
● Micro service testing is quick to execute
but still costly to develop
● Unit testing requires dedication, discipline
and a FAITH
What is DevTestOps?
The Bug filter
● Bugs move between layers
● A good start but not complete
What is DevTestOps? Continue...
The Bug filter - Unit Sorting
Smaller bugs are caught by smaller filters while larger bugs are caught by larger
filters
What is DevTestOps? Continue...
The Bug filter - Unit Sorting
● Six layers to the DevOps bug filter.
● Top three are for testing that occurs in the development
environment
○ unit testing
○ integration testing
○ and end-to-end testing
● Bottom three are for the information that is captured in production
that can be used to detect bugs and determine product quality
○ Alerting
○ Monitoring
○ and logging
What is DevTestOps? Continue...
Creating Tests At Each Filter
Unit Testing
● TDD (Test Driven Development) is a crucial foundation
● Unit test frameworks for specific code
● Mocking services to isolate integrations
● Powerful when implemented within a CI/CD pipeline and run
against integration environments
● Can be difficult to implement is some circumstances
● GUI interactions
● Databases
● Legacy code
● As DevOps engineers, this is not optional
What is DevTestOps? Continue...
Creating Tests At Each Filter
Integration Testing
● Runs unit tests in a complex context (component)
● Bugs can be introduced from indirect interactions with other
services and applications. (System)
● Manual testing can provide great value
● Microservices is a must have architecture
● Knowledge of tools is a must for all testers
● SOUPUI
● POSTMAN
● Concept regarding NFR’s should be introduced here
● CI/CD tooling becomes essential to build, test, deploy and
then test again
● Product fitness rather than code quality
What is DevTestOps? Continue...
Creating Tests At Each Filter
End-to-End Testing
● Is more efficient through DevOps principles
● Strongly supported by automation
● Scalable environments
● Coded change and deployments
● Coded tests and failure highlighting
● Planit champions this phase
● The fork in the road. Where DevOps can be introduced
● DevOps brings more exploratory and targeted testing ability
to satisfy customer feedback
What is DevTestOps? Continue...
Creating Tests At Each Filter
Monitoring and Alerts Testing
● Issues should be detected by monitors
● Real or Mocked data can be used
● Controlled data easier to distinguish
● Rules based so standard testing practices apply
● Ensure alerts are sent and received successfully
● Ensure they are also fixable
● Ensure they detail the issue clearly
What is DevTestOps? Continue...
Creating Tests At Each Filter
Log Testing
● Records everything that is happening
● At application, Server and Cloud
level
● Errors that generate no logs
highlights issues with logging
● Reveals user behavior and hidden
issues
What is DevTestOps? Continue...
Testing in Production
● A/B Testing - Multiple versions released for
feedback
● Beta Testing - Released to a subset of users
● Feature Toggles - Change configuration in the
application
● Cannery Servers - Adjust deployment if too many
issues
● “TIP” is a hot topic on the interwebs
What is DevTestOps? Continue...
Classical Costs Still Rings True
What is DevTestOps? Continue...
Other Tests within DevOps
● Orchestration Pipeline Testing
● Code Quality Gates
● Infrastructure Configuration Testing
● Bug Bash
● Crowdsourced
● Infrastructure Resilience Testing - chaos
monkey
● Repeatable Performance and Security Tests
What is DevTestOps? Continue...
Summary
Risk Appetite
Strategic Objective
Paths To Communication
Testing Pyramid
Bug Filter
Testing In Production and Other Tests in DevOps
What is DevTestOps? Continue...
Questions?
pmateos@planittesting.com
@paulconsults
https://www.linkedin.com/in/paul-mateos-213b2167/
What is DevTestOps? Continue...
A Practical Guide To Testing in DevOps - Katrina Clokie
http://www.belatrixsf.com/blog/an-introduction-to-testing-in-production/
http://infiniteundo.com/post/158179632683/abandoning-the-pyramid-of-testing-in-favor-of-a
https://www.slideshare.net/dhelper/benefit-from-unit-testing-in-the-real-world
https://test.io/software-testing-guide/devops-best-practices-integrating-qa-devops/
References
VM and Docker Basics
● Setting up a centos VM
● Installing Docker
● Pull Jenkins Docker image and start it up
VM and Docker Basics Continue...
● Oracle Virtualbox installed
○ Developer Tools
○ Networking Tools
● Create new RedHat linux vm
● 50GB HDD, 2048MB RAM
● Networking: NAT with port forwarding
○ Host Port: 8080 Guest Port: 8080
VM and Docker Basics Continue...
● Docker CE installed
Difference between VM and Docker?
- VM’s are complete machines while
docker is a collection of libraries sharing
the host’s kernel
- There are now vSphere Containers
VM and Docker Basics Continue...
● Create Docker Container with Jenkins
Master
● Create Docker Container with Jenkins
Slave
● Use Docker compose to start up both
services

Weitere ähnliche Inhalte

Was ist angesagt?

Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test AutomationNaveen Kumar Singh
 
Automate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right ToolsAutomate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right ToolsInfo-Tech Research Group
 
Devops Scorecard
Devops ScorecardDevops Scorecard
Devops ScorecardJez Humble
 
Azure DevOps Tutorial | Developing CI/ CD Pipelines On Azure | Edureka
Azure DevOps Tutorial | Developing CI/ CD Pipelines On Azure | EdurekaAzure DevOps Tutorial | Developing CI/ CD Pipelines On Azure | Edureka
Azure DevOps Tutorial | Developing CI/ CD Pipelines On Azure | EdurekaEdureka!
 
Devops online training ppt
Devops online training pptDevops online training ppt
Devops online training pptKhalidQureshi31
 
Test Automation Trends and Beyond
Test Automation Trends and BeyondTest Automation Trends and Beyond
Test Automation Trends and BeyondKnoldus Inc.
 
SRE-iously! Reliability!
SRE-iously! Reliability!SRE-iously! Reliability!
SRE-iously! Reliability!New Relic
 
Testing capability ppt
Testing capability pptTesting capability ppt
Testing capability pptanilreddyqa
 
Testing as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIsTesting as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIsProlifics
 
Azure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarAzure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarCambay Digital
 
DevSecOps: Key Controls for Modern Security Success
DevSecOps: Key Controls for Modern Security SuccessDevSecOps: Key Controls for Modern Security Success
DevSecOps: Key Controls for Modern Security SuccessPuma Security, LLC
 
0 to hero with Azure DevOps
0 to hero with Azure DevOps0 to hero with Azure DevOps
0 to hero with Azure DevOpsChristos Matskas
 
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated TestingAgile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated TestingDimitri Ponomareff
 

Was ist angesagt? (20)

Why to Cloud Native
Why to Cloud NativeWhy to Cloud Native
Why to Cloud Native
 
Agile Testing and Test Automation
Agile Testing and Test AutomationAgile Testing and Test Automation
Agile Testing and Test Automation
 
Automation testing
Automation testingAutomation testing
Automation testing
 
Automate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right ToolsAutomate Your Software Development Life Cycle Using the Right Tools
Automate Your Software Development Life Cycle Using the Right Tools
 
Devops Scorecard
Devops ScorecardDevops Scorecard
Devops Scorecard
 
Azure DevOps
Azure DevOpsAzure DevOps
Azure DevOps
 
Azure DevOps Tutorial | Developing CI/ CD Pipelines On Azure | Edureka
Azure DevOps Tutorial | Developing CI/ CD Pipelines On Azure | EdurekaAzure DevOps Tutorial | Developing CI/ CD Pipelines On Azure | Edureka
Azure DevOps Tutorial | Developing CI/ CD Pipelines On Azure | Edureka
 
DevOps and AWS
DevOps and AWSDevOps and AWS
DevOps and AWS
 
Devops ppt
Devops pptDevops ppt
Devops ppt
 
Automation With A Tool Demo
Automation With A Tool DemoAutomation With A Tool Demo
Automation With A Tool Demo
 
Devops online training ppt
Devops online training pptDevops online training ppt
Devops online training ppt
 
Test Automation Trends and Beyond
Test Automation Trends and BeyondTest Automation Trends and Beyond
Test Automation Trends and Beyond
 
SRE-iously! Reliability!
SRE-iously! Reliability!SRE-iously! Reliability!
SRE-iously! Reliability!
 
Testing capability ppt
Testing capability pptTesting capability ppt
Testing capability ppt
 
Testing as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIsTesting as a Managed Service using SLAs and KPIs
Testing as a Managed Service using SLAs and KPIs
 
Azure DevOps Best Practices Webinar
Azure DevOps Best Practices WebinarAzure DevOps Best Practices Webinar
Azure DevOps Best Practices Webinar
 
DevSecOps: Key Controls for Modern Security Success
DevSecOps: Key Controls for Modern Security SuccessDevSecOps: Key Controls for Modern Security Success
DevSecOps: Key Controls for Modern Security Success
 
DevOps
DevOpsDevOps
DevOps
 
0 to hero with Azure DevOps
0 to hero with Azure DevOps0 to hero with Azure DevOps
0 to hero with Azure DevOps
 
Agile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated TestingAgile Testing Framework - The Art of Automated Testing
Agile Testing Framework - The Art of Automated Testing
 

Ähnlich wie DevTestOps

DevOps Primer : Presented by Uday Kumar
DevOps Primer : Presented by Uday KumarDevOps Primer : Presented by Uday Kumar
DevOps Primer : Presented by Uday KumaroGuild .
 
Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?Jean-Philippe Briend
 
DevOps for absolute beginners
DevOps for absolute beginnersDevOps for absolute beginners
DevOps for absolute beginnersAhmed Misbah
 
Testing in DevOps world
Testing in DevOps worldTesting in DevOps world
Testing in DevOps worldMoataz Nabil
 
DevOps - Overview - One of the Top Trends in IT Industry
DevOps - Overview - One of the Top Trends in IT IndustryDevOps - Overview - One of the Top Trends in IT Industry
DevOps - Overview - One of the Top Trends in IT IndustryRahul Tilloo
 
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps worldLucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps worldDevOps Enterprise Summit
 
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
 
DevOps is a Journey - Choose Your Own Adventure
DevOps is a Journey - Choose Your Own AdventureDevOps is a Journey - Choose Your Own Adventure
DevOps is a Journey - Choose Your Own AdventureFabian Iannarella
 
Addo dev ops is journey - choose your own adventure v2
Addo   dev ops is journey - choose your own adventure v2Addo   dev ops is journey - choose your own adventure v2
Addo dev ops is journey - choose your own adventure v2Fabian Iannarella
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own wordsSUBHENDU KARMAKAR
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliverySwapnil Jain
 
Testing and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons LearnedTesting and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons LearnedLB Denker
 
Manchester ITExpo Talk: DevOps large and small - Cambridge Satchel
Manchester ITExpo Talk:  DevOps large and small - Cambridge SatchelManchester ITExpo Talk:  DevOps large and small - Cambridge Satchel
Manchester ITExpo Talk: DevOps large and small - Cambridge SatchelJwooldridge
 
DevOps at Lean Apps
DevOps at Lean AppsDevOps at Lean Apps
DevOps at Lean AppsLean Apps
 
Dev ops is a journey choose your own adventure v2
Dev ops is a journey   choose your own adventure v2Dev ops is a journey   choose your own adventure v2
Dev ops is a journey choose your own adventure v2Fabian Iannarella
 
Measure and Accelerate Your Software Delivery
Measure and Accelerate Your Software DeliveryMeasure and Accelerate Your Software Delivery
Measure and Accelerate Your Software DeliveryAnand Chauhan
 

Ähnlich wie DevTestOps (20)

DevOps Primer : Presented by Uday Kumar
DevOps Primer : Presented by Uday KumarDevOps Primer : Presented by Uday Kumar
DevOps Primer : Presented by Uday Kumar
 
Demystifying Devops - Uday kumar
Demystifying Devops - Uday kumarDemystifying Devops - Uday kumar
Demystifying Devops - Uday kumar
 
Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?Continuous Delivery: why ? where to start ? how to scale ?
Continuous Delivery: why ? where to start ? how to scale ?
 
DevOps for absolute beginners
DevOps for absolute beginnersDevOps for absolute beginners
DevOps for absolute beginners
 
Testing in DevOps world
Testing in DevOps worldTesting in DevOps world
Testing in DevOps world
 
DevOps - Overview - One of the Top Trends in IT Industry
DevOps - Overview - One of the Top Trends in IT IndustryDevOps - Overview - One of the Top Trends in IT Industry
DevOps - Overview - One of the Top Trends in IT Industry
 
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps worldLucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
Lucas Gravley - HP - Self-Healing And Monitoring in a DevOps world
 
Dev ops concept
Dev ops conceptDev ops concept
Dev ops concept
 
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
 
DevOps is a Journey - Choose Your Own Adventure
DevOps is a Journey - Choose Your Own AdventureDevOps is a Journey - Choose Your Own Adventure
DevOps is a Journey - Choose Your Own Adventure
 
Addo dev ops is journey - choose your own adventure v2
Addo   dev ops is journey - choose your own adventure v2Addo   dev ops is journey - choose your own adventure v2
Addo dev ops is journey - choose your own adventure v2
 
DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
 
Understanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous DeliveryUnderstanding DevOps in simpler way with Continuous Delivery
Understanding DevOps in simpler way with Continuous Delivery
 
Testing and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons LearnedTesting and DevOps Culture: Lessons Learned
Testing and DevOps Culture: Lessons Learned
 
Manchester ITExpo Talk: DevOps large and small - Cambridge Satchel
Manchester ITExpo Talk:  DevOps large and small - Cambridge SatchelManchester ITExpo Talk:  DevOps large and small - Cambridge Satchel
Manchester ITExpo Talk: DevOps large and small - Cambridge Satchel
 
DevOps at Lean Apps
DevOps at Lean AppsDevOps at Lean Apps
DevOps at Lean Apps
 
Dev ops is a journey choose your own adventure v2
Dev ops is a journey   choose your own adventure v2Dev ops is a journey   choose your own adventure v2
Dev ops is a journey choose your own adventure v2
 
Agile testing
Agile testingAgile testing
Agile testing
 
Measure and Accelerate Your Software Delivery
Measure and Accelerate Your Software DeliveryMeasure and Accelerate Your Software Delivery
Measure and Accelerate Your Software Delivery
 
What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE? What is DevOps? What is DevOps CoE?
What is DevOps? What is DevOps CoE?
 

Kürzlich hochgeladen

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
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
 
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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
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
 

Kürzlich hochgeladen (20)

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
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
 
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
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
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!
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 

DevTestOps

  • 1. DevTestOps Cultural Change Through Quality Assurance Module 1 - Talk the Talk
  • 2. Module Contents What is DevOps? What is DevTestOps? Module Objectives ❏ Learn, comprehend and practice DevOps principles and fundamentals ❏ Understanding of where testing plays a part ❏ Become a competent and courageous DevOps Team member.
  • 3. Module Contents... VM Basics https://www.virtualbox.org/ https://www.centos.org/download/ Docker Basics https://store.docker.com/editions/community/docker-ce-server-centos Source Code Management https://git-scm.com/
  • 4.
  • 5. What is DevOps? The WIKI definition of DevOps DevOps is a software engineering practice that aims at unifying software development (Dev) and software operation (Ops). The main characteristic of the DevOps movement is to strongly advocate automation and monitoring at all steps of software construction, from integration, testing, releasing to deployment and infrastructure management. DevOps aims at shorter development cycles, increased deployment frequency, more dependable releases, in close alignment with business objectives
  • 6. What is DevOps? Continue... Examples of Practices?
  • 7. What is DevOps? Continue... Examples of Practices? - Law Practice - Accounting Practice - Physiotherapy Practice - Agile Practice
  • 8. What is DevOps? Continue... Examples of Practices? - DevOps Practice
  • 9. What is DevOps? Continue... The Wall of Confusion
  • 10. What is DevOps? Continue...
  • 11. What is DevOps? Continue... 6 Principles of DevOps 1. Customer Centric Action ➢ Meeting customer requirements through short feedback loops ➢ Courage to act and innovate continuously ➢ Pivot When strategy is not working ➢ Invest in products and services for customer delight
  • 12. What is DevOps? Continue... 2. Create With the End In Mind ➢ Let go of waterfall process-oriented models ➢ Act as product companies selling to real customers ➢ All members require an engineering mindset to envision and realise the product
  • 13. What is DevOps? Continue... 3. End to End Responsibility ➢ Vertically organised teams ➢ Team is responsible till end of life ➢ Full support including quality and performance
  • 14. What is DevOps? Continue... 4. Cross Functional Autonomous Teams ➢ Fully responsible ➢ T-Shaped all rounders ➢ Hotbed for growth
  • 15. What is DevOps? Continue... 5. Continuous Improvement ➢ Fail Fast ➢ Minimise waste ➢ Optimise for speed costs and ease of delivery ➢ Experimentation is paramount ➢ If it hurts do it more
  • 16. What is DevOps? Continue... 6. Automate Everything You Can ➢ Adopt CI culture with high cycle rates and instant feedback ➢ Includes infrastructure and container based cloud platforms ➢ Synonymous with drive to renew delivery methods
  • 17. What is DevOps? Continue... Key Elements of DevOps Teams ❏ Team Building
  • 18. What is DevOps? Continue... Key Elements of DevOps Teams ❏ Team Building ❏ CI and Problem Solving
  • 19. What is DevOps? Continue... Key Elements of DevOps Teams ❏ Team Building ❏ CI and Problem Solving ❏ Leadership and Feedback
  • 20. What is DevOps? Continue... Key Elements of DevOps Teams ❏ Team Building ❏ CI and Problem Solving ❏ Leadership and Feedback ❏ Courage and Experimentation
  • 21. What is DevOps? Continue... Traditional Organisation Model
  • 22. What is DevOps? Continue... DevOps Organisation Model
  • 23. What is DevOps? Continue... A Common Microservice example
  • 24. What is DevOps? Continue... Solution Architecture for DevOps
  • 25. What is DevOps? Continue... Teams Supporting a Monolithic Architecture
  • 26. What is DevOps? Continue... DevOps Supporting a Microservice Architecture
  • 27. What is DevOps? Continue... Stats from Puppet
  • 28. What is DevOps? Continue... Summary History and Definition 6 Principles of DevOps Key Elements of DevOps Teams Organisational Model Solution Architecture
  • 29. What is DevOps? Continue... Questions? pmateos@planittesting.com @paulconsults https://www.linkedin.com/in/paul-mateos-213b2167/
  • 30. What is DevOps? Continue... https://blogs.msdn.microsoft.com/uk_faculty_connection/2016/06/23/devops-the-wall-of-confusion-un derstanding-the-basics-of-devops/ https://www.mulesoft.com/resources/api/microservices-devops-better-together https://www.devopsagileskills.org/dasa-devops-principles/ http://leanmanufacturingtools.org/77/the-seven-wastes-7-mudas/ https://www.slideshare.net/SherryChang/evolving-team-structure-in-devops https://www.slideshare.net/DevOpstastic/support-that-devops-change-agents-need http://www.planitdevops.com References
  • 31. What is DevOps? Continue... https://purplegriffon.com/quizzes/devops-mini Quiz TIme
  • 32. DevTestOps Cultural Change Through Quality Assurance Module 1 - Talk the Talk
  • 33. What is DevTestOps? DevOps with Quality Assurance as the focul point Bringing Planit’s Strengths in Agile, Automation, Engineering and Quality Assurance together Implementation of Testing practices throughout the DevOps End to End process
  • 34. What is DevTestOps? Continue... Risk Appetites - Severity / Occurrence
  • 35. What is DevTestOps? Continue... Risk Appetites - Change of Mentality
  • 36. What is DevTestOps? Continue... Strategic Objective What does the organisation want versus what they need? ● Speed To Market ● Product Quality ● Or Stability of the Production Environment
  • 37. What is DevTestOps? Continue... Paths To Communication - 5 Steps 1. Identify - Anyone who works outside of your team 2. Connect - Make connections with each individual 3. Invite - Widen the connection by bringing in new people 4. Mark - Recording the communication for future use 5. Widen - the path through activities that engage
  • 38. What is DevTestOps? Testing pyramid ● The reality is Test Automation is expensive and takes a long time to implement ● Micro service testing is quick to execute but still costly to develop ● Unit testing requires dedication, discipline and a FAITH
  • 39. What is DevTestOps? The Bug filter ● Bugs move between layers ● A good start but not complete
  • 40. What is DevTestOps? Continue... The Bug filter - Unit Sorting Smaller bugs are caught by smaller filters while larger bugs are caught by larger filters
  • 41. What is DevTestOps? Continue... The Bug filter - Unit Sorting ● Six layers to the DevOps bug filter. ● Top three are for testing that occurs in the development environment ○ unit testing ○ integration testing ○ and end-to-end testing ● Bottom three are for the information that is captured in production that can be used to detect bugs and determine product quality ○ Alerting ○ Monitoring ○ and logging
  • 42. What is DevTestOps? Continue... Creating Tests At Each Filter Unit Testing ● TDD (Test Driven Development) is a crucial foundation ● Unit test frameworks for specific code ● Mocking services to isolate integrations ● Powerful when implemented within a CI/CD pipeline and run against integration environments ● Can be difficult to implement is some circumstances ● GUI interactions ● Databases ● Legacy code ● As DevOps engineers, this is not optional
  • 43. What is DevTestOps? Continue... Creating Tests At Each Filter Integration Testing ● Runs unit tests in a complex context (component) ● Bugs can be introduced from indirect interactions with other services and applications. (System) ● Manual testing can provide great value ● Microservices is a must have architecture ● Knowledge of tools is a must for all testers ● SOUPUI ● POSTMAN ● Concept regarding NFR’s should be introduced here ● CI/CD tooling becomes essential to build, test, deploy and then test again ● Product fitness rather than code quality
  • 44. What is DevTestOps? Continue... Creating Tests At Each Filter End-to-End Testing ● Is more efficient through DevOps principles ● Strongly supported by automation ● Scalable environments ● Coded change and deployments ● Coded tests and failure highlighting ● Planit champions this phase ● The fork in the road. Where DevOps can be introduced ● DevOps brings more exploratory and targeted testing ability to satisfy customer feedback
  • 45. What is DevTestOps? Continue... Creating Tests At Each Filter Monitoring and Alerts Testing ● Issues should be detected by monitors ● Real or Mocked data can be used ● Controlled data easier to distinguish ● Rules based so standard testing practices apply ● Ensure alerts are sent and received successfully ● Ensure they are also fixable ● Ensure they detail the issue clearly
  • 46. What is DevTestOps? Continue... Creating Tests At Each Filter Log Testing ● Records everything that is happening ● At application, Server and Cloud level ● Errors that generate no logs highlights issues with logging ● Reveals user behavior and hidden issues
  • 47. What is DevTestOps? Continue... Testing in Production ● A/B Testing - Multiple versions released for feedback ● Beta Testing - Released to a subset of users ● Feature Toggles - Change configuration in the application ● Cannery Servers - Adjust deployment if too many issues ● “TIP” is a hot topic on the interwebs
  • 48. What is DevTestOps? Continue... Classical Costs Still Rings True
  • 49. What is DevTestOps? Continue... Other Tests within DevOps ● Orchestration Pipeline Testing ● Code Quality Gates ● Infrastructure Configuration Testing ● Bug Bash ● Crowdsourced ● Infrastructure Resilience Testing - chaos monkey ● Repeatable Performance and Security Tests
  • 50. What is DevTestOps? Continue... Summary Risk Appetite Strategic Objective Paths To Communication Testing Pyramid Bug Filter Testing In Production and Other Tests in DevOps
  • 51. What is DevTestOps? Continue... Questions? pmateos@planittesting.com @paulconsults https://www.linkedin.com/in/paul-mateos-213b2167/
  • 52. What is DevTestOps? Continue... A Practical Guide To Testing in DevOps - Katrina Clokie http://www.belatrixsf.com/blog/an-introduction-to-testing-in-production/ http://infiniteundo.com/post/158179632683/abandoning-the-pyramid-of-testing-in-favor-of-a https://www.slideshare.net/dhelper/benefit-from-unit-testing-in-the-real-world https://test.io/software-testing-guide/devops-best-practices-integrating-qa-devops/ References
  • 53. VM and Docker Basics ● Setting up a centos VM ● Installing Docker ● Pull Jenkins Docker image and start it up
  • 54. VM and Docker Basics Continue... ● Oracle Virtualbox installed ○ Developer Tools ○ Networking Tools ● Create new RedHat linux vm ● 50GB HDD, 2048MB RAM ● Networking: NAT with port forwarding ○ Host Port: 8080 Guest Port: 8080
  • 55. VM and Docker Basics Continue... ● Docker CE installed Difference between VM and Docker? - VM’s are complete machines while docker is a collection of libraries sharing the host’s kernel - There are now vSphere Containers
  • 56. VM and Docker Basics Continue... ● Create Docker Container with Jenkins Master ● Create Docker Container with Jenkins Slave ● Use Docker compose to start up both services