SlideShare a Scribd company logo
1 of 10
Download to read offline
Keep calm
and
automate your tests
12.03.2020Keep calm and automate your tests • Marius Meisenzahl
🙋‍♂ About me
● Marius Meisenzahl
● co-founder of
○ located in Bochum
○ we build software from embedded to web
2
/meisenzahl /msnzhl
12.03.2020Keep calm and automate your tests • Marius Meisenzahl
Choose testing framework
● Google Test & Google Mock
● Qt Test
● Boost.Test
● Catch2
● …
3
12.03.2020Keep calm and automate your tests • Marius Meisenzahl
Where to start?
● organize your project to allow tests
○ split into logical units
● refactor your code to allow tests
○ don’t use singletons, ...
● write tests
4
12.03.2020Keep calm and automate your tests • Marius Meisenzahl
Continuous Integration
5
12.03.2020Keep calm and automate your tests • Marius Meisenzahl
Continuous Integration
6
12.03.2020Keep calm and automate your tests • Marius Meisenzahl
Continuous Integration
7
12.03.2020Keep calm and automate your tests • Marius Meisenzahl
Force increasing code coverage
{
"coverage": {
"thresholds": {
"lines": 38.9,
"functions": 36.8,
"branches": 19.10
}
}
}
8
12.03.2020Keep calm and automate your tests • Marius Meisenzahl
Coverage reports
9
12.03.2020Keep calm and automate your tests • Marius Meisenzahl
Conclusion
● make your code testable
● use Continuous Integration
● force increasing code coverage
● visualize your code coverage
10

More Related Content

Similar to Keep calm and automate your tests

Investing in ai driven startups
Investing in ai driven startupsInvesting in ai driven startups
Investing in ai driven startupsRoy Lowrance
 
Solid works workshop English entrance
Solid works workshop English entranceSolid works workshop English entrance
Solid works workshop English entranceNajeeb Memeh
 
Doing Analytics Right - Selecting Analytics
Doing Analytics Right - Selecting AnalyticsDoing Analytics Right - Selecting Analytics
Doing Analytics Right - Selecting AnalyticsTasktop
 
Artur Suchwalko “What are common mistakes in Data Science projects and how to...
Artur Suchwalko “What are common mistakes in Data Science projects and how to...Artur Suchwalko “What are common mistakes in Data Science projects and how to...
Artur Suchwalko “What are common mistakes in Data Science projects and how to...Lviv Startup Club
 
agilesTemplate at Directions EMEA
agilesTemplate at Directions EMEAagilesTemplate at Directions EMEA
agilesTemplate at Directions EMEALaura Farbo
 
Emerging Best Practises for Machine Learning Engineering- Lex Toumbourou (By ...
Emerging Best Practises for Machine Learning Engineering- Lex Toumbourou (By ...Emerging Best Practises for Machine Learning Engineering- Lex Toumbourou (By ...
Emerging Best Practises for Machine Learning Engineering- Lex Toumbourou (By ...Thoughtworks
 
Doing Analytics Right - Designing and Automating Analytics
Doing Analytics Right - Designing and Automating AnalyticsDoing Analytics Right - Designing and Automating Analytics
Doing Analytics Right - Designing and Automating AnalyticsTasktop
 
Data Strategy Design: An Open Source Toolbox & Method for Data Thinking.
Data Strategy Design: An Open Source Toolbox & Method for Data Thinking. Data Strategy Design: An Open Source Toolbox & Method for Data Thinking.
Data Strategy Design: An Open Source Toolbox & Method for Data Thinking. Datentreiber
 
Internship Report - Mercedes-Benz Accessories GmbH - Raad Al Jughol- geaendert
Internship Report - Mercedes-Benz Accessories GmbH - Raad Al Jughol- geaendertInternship Report - Mercedes-Benz Accessories GmbH - Raad Al Jughol- geaendert
Internship Report - Mercedes-Benz Accessories GmbH - Raad Al Jughol- geaendertRa'ad Al Jughol
 
Experteer for ICMA: Applied Machine Learning. Smart Process Automation with AI
Experteer for ICMA: Applied Machine Learning. Smart Process Automation with AIExperteer for ICMA: Applied Machine Learning. Smart Process Automation with AI
Experteer for ICMA: Applied Machine Learning. Smart Process Automation with AIAlexander Chukovski
 
Elementary Data Analysis with MS excel_Day-1
Elementary Data Analysis with MS excel_Day-1Elementary Data Analysis with MS excel_Day-1
Elementary Data Analysis with MS excel_Day-1Redwan Ferdous
 
GraphTour London 2020 - Customer Journey
GraphTour London 2020  - Customer Journey GraphTour London 2020  - Customer Journey
GraphTour London 2020 - Customer Journey Neo4j
 
MongoDB Webinar : Transforming Sales Enablement with Next Gen Onboarding
MongoDB Webinar : Transforming Sales Enablement with Next Gen OnboardingMongoDB Webinar : Transforming Sales Enablement with Next Gen Onboarding
MongoDB Webinar : Transforming Sales Enablement with Next Gen OnboardingMindTickle
 
Webinar: Stay Productive at Home with Microsoft 365
Webinar: Stay Productive at Home with Microsoft 365Webinar: Stay Productive at Home with Microsoft 365
Webinar: Stay Productive at Home with Microsoft 365Withum
 
1. what is tpm and how it works.ppt
1. what is tpm and how it works.ppt1. what is tpm and how it works.ppt
1. what is tpm and how it works.pptwaqasasad4081
 
David Braun. Scaling service business. Is it possible?
David Braun. Scaling service business. Is it possible?David Braun. Scaling service business. Is it possible?
David Braun. Scaling service business. Is it possible?IT Arena
 

Similar to Keep calm and automate your tests (20)

Investing in ai driven startups
Investing in ai driven startupsInvesting in ai driven startups
Investing in ai driven startups
 
Solid works workshop English entrance
Solid works workshop English entranceSolid works workshop English entrance
Solid works workshop English entrance
 
Doing Analytics Right - Selecting Analytics
Doing Analytics Right - Selecting AnalyticsDoing Analytics Right - Selecting Analytics
Doing Analytics Right - Selecting Analytics
 
Artur Suchwalko “What are common mistakes in Data Science projects and how to...
Artur Suchwalko “What are common mistakes in Data Science projects and how to...Artur Suchwalko “What are common mistakes in Data Science projects and how to...
Artur Suchwalko “What are common mistakes in Data Science projects and how to...
 
agilesTemplate at Directions EMEA
agilesTemplate at Directions EMEAagilesTemplate at Directions EMEA
agilesTemplate at Directions EMEA
 
Emerging Best Practises for Machine Learning Engineering- Lex Toumbourou (By ...
Emerging Best Practises for Machine Learning Engineering- Lex Toumbourou (By ...Emerging Best Practises for Machine Learning Engineering- Lex Toumbourou (By ...
Emerging Best Practises for Machine Learning Engineering- Lex Toumbourou (By ...
 
Doing Analytics Right - Designing and Automating Analytics
Doing Analytics Right - Designing and Automating AnalyticsDoing Analytics Right - Designing and Automating Analytics
Doing Analytics Right - Designing and Automating Analytics
 
DS Life Cycle
DS Life CycleDS Life Cycle
DS Life Cycle
 
DS Life Cycle
DS Life CycleDS Life Cycle
DS Life Cycle
 
Data Strategy Design: An Open Source Toolbox & Method for Data Thinking.
Data Strategy Design: An Open Source Toolbox & Method for Data Thinking. Data Strategy Design: An Open Source Toolbox & Method for Data Thinking.
Data Strategy Design: An Open Source Toolbox & Method for Data Thinking.
 
Internship Report - Mercedes-Benz Accessories GmbH - Raad Al Jughol- geaendert
Internship Report - Mercedes-Benz Accessories GmbH - Raad Al Jughol- geaendertInternship Report - Mercedes-Benz Accessories GmbH - Raad Al Jughol- geaendert
Internship Report - Mercedes-Benz Accessories GmbH - Raad Al Jughol- geaendert
 
Experteer for ICMA: Applied Machine Learning. Smart Process Automation with AI
Experteer for ICMA: Applied Machine Learning. Smart Process Automation with AIExperteer for ICMA: Applied Machine Learning. Smart Process Automation with AI
Experteer for ICMA: Applied Machine Learning. Smart Process Automation with AI
 
Why more than half of ML models don't make it to production
Why more than half of ML models don't make it to productionWhy more than half of ML models don't make it to production
Why more than half of ML models don't make it to production
 
Elementary Data Analysis with MS excel_Day-1
Elementary Data Analysis with MS excel_Day-1Elementary Data Analysis with MS excel_Day-1
Elementary Data Analysis with MS excel_Day-1
 
1120 track1 taylor
1120 track1 taylor1120 track1 taylor
1120 track1 taylor
 
GraphTour London 2020 - Customer Journey
GraphTour London 2020  - Customer Journey GraphTour London 2020  - Customer Journey
GraphTour London 2020 - Customer Journey
 
MongoDB Webinar : Transforming Sales Enablement with Next Gen Onboarding
MongoDB Webinar : Transforming Sales Enablement with Next Gen OnboardingMongoDB Webinar : Transforming Sales Enablement with Next Gen Onboarding
MongoDB Webinar : Transforming Sales Enablement with Next Gen Onboarding
 
Webinar: Stay Productive at Home with Microsoft 365
Webinar: Stay Productive at Home with Microsoft 365Webinar: Stay Productive at Home with Microsoft 365
Webinar: Stay Productive at Home with Microsoft 365
 
1. what is tpm and how it works.ppt
1. what is tpm and how it works.ppt1. what is tpm and how it works.ppt
1. what is tpm and how it works.ppt
 
David Braun. Scaling service business. Is it possible?
David Braun. Scaling service business. Is it possible?David Braun. Scaling service business. Is it possible?
David Braun. Scaling service business. Is it possible?
 

Recently uploaded

electrical installation and maintenance.
electrical installation and maintenance.electrical installation and maintenance.
electrical installation and maintenance.benjamincojr
 
Intro to Design (for Engineers) at Sydney Uni
Intro to Design (for Engineers) at Sydney UniIntro to Design (for Engineers) at Sydney Uni
Intro to Design (for Engineers) at Sydney UniR. Sosa
 
Working Principle of Echo Sounder and Doppler Effect.pdf
Working Principle of Echo Sounder and Doppler Effect.pdfWorking Principle of Echo Sounder and Doppler Effect.pdf
Working Principle of Echo Sounder and Doppler Effect.pdfSkNahidulIslamShrabo
 
Artificial intelligence presentation2-171219131633.pdf
Artificial intelligence presentation2-171219131633.pdfArtificial intelligence presentation2-171219131633.pdf
Artificial intelligence presentation2-171219131633.pdfKira Dess
 
Artificial Intelligence in due diligence
Artificial Intelligence in due diligenceArtificial Intelligence in due diligence
Artificial Intelligence in due diligencemahaffeycheryld
 
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas SachpazisSeismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas SachpazisDr.Costas Sachpazis
 
Adsorption (mass transfer operations 2) ppt
Adsorption (mass transfer operations 2) pptAdsorption (mass transfer operations 2) ppt
Adsorption (mass transfer operations 2) pptjigup7320
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxMustafa Ahmed
 
Interfacing Analog to Digital Data Converters ee3404.pdf
Interfacing Analog to Digital Data Converters ee3404.pdfInterfacing Analog to Digital Data Converters ee3404.pdf
Interfacing Analog to Digital Data Converters ee3404.pdfragupathi90
 
21scheme vtu syllabus of visveraya technological university
21scheme vtu syllabus of visveraya technological university21scheme vtu syllabus of visveraya technological university
21scheme vtu syllabus of visveraya technological universityMohd Saifudeen
 
5G and 6G refer to generations of mobile network technology, each representin...
5G and 6G refer to generations of mobile network technology, each representin...5G and 6G refer to generations of mobile network technology, each representin...
5G and 6G refer to generations of mobile network technology, each representin...archanaece3
 
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdflitvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdfAlexander Litvinenko
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxMustafa Ahmed
 
Filters for Electromagnetic Compatibility Applications
Filters for Electromagnetic Compatibility ApplicationsFilters for Electromagnetic Compatibility Applications
Filters for Electromagnetic Compatibility ApplicationsMathias Magdowski
 
Research Methodolgy & Intellectual Property Rights Series 1
Research Methodolgy & Intellectual Property Rights Series 1Research Methodolgy & Intellectual Property Rights Series 1
Research Methodolgy & Intellectual Property Rights Series 1T.D. Shashikala
 
The Entity-Relationship Model(ER Diagram).pptx
The Entity-Relationship Model(ER Diagram).pptxThe Entity-Relationship Model(ER Diagram).pptx
The Entity-Relationship Model(ER Diagram).pptxMANASINANDKISHORDEOR
 
Independent Solar-Powered Electric Vehicle Charging Station
Independent Solar-Powered Electric Vehicle Charging StationIndependent Solar-Powered Electric Vehicle Charging Station
Independent Solar-Powered Electric Vehicle Charging Stationsiddharthteach18
 
analog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptxanalog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptxKarpagam Institute of Teechnology
 
CLOUD COMPUTING SERVICES - Cloud Reference Modal
CLOUD COMPUTING SERVICES - Cloud Reference ModalCLOUD COMPUTING SERVICES - Cloud Reference Modal
CLOUD COMPUTING SERVICES - Cloud Reference ModalSwarnaSLcse
 
Basics of Relay for Engineering Students
Basics of Relay for Engineering StudentsBasics of Relay for Engineering Students
Basics of Relay for Engineering Studentskannan348865
 

Recently uploaded (20)

electrical installation and maintenance.
electrical installation and maintenance.electrical installation and maintenance.
electrical installation and maintenance.
 
Intro to Design (for Engineers) at Sydney Uni
Intro to Design (for Engineers) at Sydney UniIntro to Design (for Engineers) at Sydney Uni
Intro to Design (for Engineers) at Sydney Uni
 
Working Principle of Echo Sounder and Doppler Effect.pdf
Working Principle of Echo Sounder and Doppler Effect.pdfWorking Principle of Echo Sounder and Doppler Effect.pdf
Working Principle of Echo Sounder and Doppler Effect.pdf
 
Artificial intelligence presentation2-171219131633.pdf
Artificial intelligence presentation2-171219131633.pdfArtificial intelligence presentation2-171219131633.pdf
Artificial intelligence presentation2-171219131633.pdf
 
Artificial Intelligence in due diligence
Artificial Intelligence in due diligenceArtificial Intelligence in due diligence
Artificial Intelligence in due diligence
 
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas SachpazisSeismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
Seismic Hazard Assessment Software in Python by Prof. Dr. Costas Sachpazis
 
Adsorption (mass transfer operations 2) ppt
Adsorption (mass transfer operations 2) pptAdsorption (mass transfer operations 2) ppt
Adsorption (mass transfer operations 2) ppt
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptx
 
Interfacing Analog to Digital Data Converters ee3404.pdf
Interfacing Analog to Digital Data Converters ee3404.pdfInterfacing Analog to Digital Data Converters ee3404.pdf
Interfacing Analog to Digital Data Converters ee3404.pdf
 
21scheme vtu syllabus of visveraya technological university
21scheme vtu syllabus of visveraya technological university21scheme vtu syllabus of visveraya technological university
21scheme vtu syllabus of visveraya technological university
 
5G and 6G refer to generations of mobile network technology, each representin...
5G and 6G refer to generations of mobile network technology, each representin...5G and 6G refer to generations of mobile network technology, each representin...
5G and 6G refer to generations of mobile network technology, each representin...
 
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdflitvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
litvinenko_Henry_Intrusion_Hong-Kong_2024.pdf
 
Worksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptxWorksharing and 3D Modeling with Revit.pptx
Worksharing and 3D Modeling with Revit.pptx
 
Filters for Electromagnetic Compatibility Applications
Filters for Electromagnetic Compatibility ApplicationsFilters for Electromagnetic Compatibility Applications
Filters for Electromagnetic Compatibility Applications
 
Research Methodolgy & Intellectual Property Rights Series 1
Research Methodolgy & Intellectual Property Rights Series 1Research Methodolgy & Intellectual Property Rights Series 1
Research Methodolgy & Intellectual Property Rights Series 1
 
The Entity-Relationship Model(ER Diagram).pptx
The Entity-Relationship Model(ER Diagram).pptxThe Entity-Relationship Model(ER Diagram).pptx
The Entity-Relationship Model(ER Diagram).pptx
 
Independent Solar-Powered Electric Vehicle Charging Station
Independent Solar-Powered Electric Vehicle Charging StationIndependent Solar-Powered Electric Vehicle Charging Station
Independent Solar-Powered Electric Vehicle Charging Station
 
analog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptxanalog-vs-digital-communication (concept of analog and digital).pptx
analog-vs-digital-communication (concept of analog and digital).pptx
 
CLOUD COMPUTING SERVICES - Cloud Reference Modal
CLOUD COMPUTING SERVICES - Cloud Reference ModalCLOUD COMPUTING SERVICES - Cloud Reference Modal
CLOUD COMPUTING SERVICES - Cloud Reference Modal
 
Basics of Relay for Engineering Students
Basics of Relay for Engineering StudentsBasics of Relay for Engineering Students
Basics of Relay for Engineering Students
 

Keep calm and automate your tests

  • 2. 12.03.2020Keep calm and automate your tests • Marius Meisenzahl 🙋‍♂ About me ● Marius Meisenzahl ● co-founder of ○ located in Bochum ○ we build software from embedded to web 2 /meisenzahl /msnzhl
  • 3. 12.03.2020Keep calm and automate your tests • Marius Meisenzahl Choose testing framework ● Google Test & Google Mock ● Qt Test ● Boost.Test ● Catch2 ● … 3
  • 4. 12.03.2020Keep calm and automate your tests • Marius Meisenzahl Where to start? ● organize your project to allow tests ○ split into logical units ● refactor your code to allow tests ○ don’t use singletons, ... ● write tests 4
  • 5. 12.03.2020Keep calm and automate your tests • Marius Meisenzahl Continuous Integration 5
  • 6. 12.03.2020Keep calm and automate your tests • Marius Meisenzahl Continuous Integration 6
  • 7. 12.03.2020Keep calm and automate your tests • Marius Meisenzahl Continuous Integration 7
  • 8. 12.03.2020Keep calm and automate your tests • Marius Meisenzahl Force increasing code coverage { "coverage": { "thresholds": { "lines": 38.9, "functions": 36.8, "branches": 19.10 } } } 8
  • 9. 12.03.2020Keep calm and automate your tests • Marius Meisenzahl Coverage reports 9
  • 10. 12.03.2020Keep calm and automate your tests • Marius Meisenzahl Conclusion ● make your code testable ● use Continuous Integration ● force increasing code coverage ● visualize your code coverage 10