SlideShare a Scribd company logo
1 of 30
Download to read offline
Chmouel Boudjnah!
OpenStack in Action // Spring 2014
The art of Software testing in OpenStack
Chmouel Boudjnah - @chmouel - eNovance
Chmouel Boudjnah - @chmouel - eNovance
About me
Chmouel Boudjnah - @chmouel - eNovance
About this session
Chmouel Boudjnah - @chmouel - eNovance
Software Testing
overview
Chmouel Boudjnah - @chmouel - eNovance
• Unit Testing
• Integration Testing
• Performance Testing
• Scalability Testing.
Different type of Testing
Chmouel Boudjnah - @chmouel - eNovance
• Pentesting
• Usability Testing
• Regression Testing
• Compatibility Testing.
More testing
Chmouel Boudjnah - @chmouel - eNovance
Methodologies
Chmouel Boudjnah - @chmouel - eNovance
• Code a bit the test.
• Start a bit of coding.
• Make the test pass.
• Repeat until the feature is implemented.
TDD
Chmouel Boudjnah - @chmouel - eNovance
• Business Driven Development
Introducing BDD
Chmouel Boudjnah - @chmouel - eNovance
• Business Driven Development
• Behaviour Driven Development
Introducing BDD
Chmouel Boudjnah - @chmouel - eNovance
• Business Driven Development
• Behaviour Driven Development
• BS Driven Development (i.e: Vaporware)
Introducing BDD
Chmouel Boudjnah - @chmouel - eNovance
• Business Driven Development
• Behaviour Driven Development
• BS Driven Development
• Some people get it confused with “Bourrinage
Driven Development”
Introducing BDD
Chmouel Boudjnah - @chmouel - eNovance
Methodology
“You shall not pass a commit before each iterations has been
fully tested”
Chmouel Boudjnah - @chmouel - eNovance
Unit Testing
Chmouel Boudjnah - @chmouel - eNovance
The five year old technology mashup.
Chmouel Boudjnah - @chmouel - eNovance
The five year old technology mashup.
"well it is just like when you turn the wheel before we
are going on a ride you test that it turns properly
before actually riding it. If it didn’t turn then that means
I may going to have a crash and have a big bobo.”
Noah Boudjnah
Chmouel Boudjnah - @chmouel - eNovance
• Swift 2371 unit tests
• Ceilometer 2583
• Heat 2710
• Keystone 3216
• Nova 10653
In OpenStack
Chmouel Boudjnah - @chmouel - eNovance
• Mostly for code styling
• flake8 for pep8 and common
errors
• Openstack hacking
Static code analysis.
Chmouel Boudjnah - @chmouel - eNovance
Tooling and Libraries
Chmouel Boudjnah - @chmouel - eNovance
Devstack
Chmouel Boudjnah - @chmouel - eNovance
• tox
• pbr
• testrunner
• coverage
Tools
Chmouel Boudjnah - @chmouel - eNovance
• testtools
• mock
• httppretty
• six
Libraries
Chmouel Boudjnah - @chmouel - eNovance
Integration tests
Chmouel Boudjnah - @chmouel - eNovance
• run against any OpenStack clouds
• auto discover features
• only OpenStack public interfaces
• Black box testing
• can be reused as load generation
• self tested
• around 2000 functional tests run on each commit iterations.
Tempest
Chmouel Boudjnah - @chmouel - eNovance
WhatTheStack? A Tool Based on Tempest to Verify your Deployments
Chmouel Boudjnah - @chmouel - eNovance
• external CI plug into openstack
infrastructure.
• able to vote +1 but not -1
• Usually used by vendors for drivers
testing in Neutron / Nova / Cinder
• Used as well for other distros (only
RedHat at the moment).
External CI
Chmouel Boudjnah - @chmouel - eNovance
Performances testing
Chmouel Boudjnah - @chmouel - eNovance
Performance testing moto
One shall always testing the underlying hardware
before even thinking about performance testing.
Erwan Velu - eNovance Tester allumni
Chmouel Boudjnah - @chmouel - eNovance
• at eNovance we have a tool called AHC which benchmark
underlying platform before every deliveries.
• tempest can be used for performance testing of the
software itself.
• There is OpenStack Rally as well a tool that automate the
full thing with nicely generated reports and such.
• Highly dependent of your deployment (i.e: your hardware).
Performance testing.
Chmouel Boudjnah - @chmouel - eNovance
That’s it

More Related Content

What's hot

Make your CPAN module static installable
Make your CPAN module static installableMake your CPAN module static installable
Make your CPAN module static installableShoichi Kaji
 
Developing Resilient Cloud Native Apps with Spring Cloud
Developing Resilient Cloud Native Apps with Spring CloudDeveloping Resilient Cloud Native Apps with Spring Cloud
Developing Resilient Cloud Native Apps with Spring CloudDustin Ruehle
 
Основы нагрузочного тестирования с инструментом Jmeter
Основы нагрузочного тестирования с инструментом JmeterОсновы нагрузочного тестирования с инструментом Jmeter
Основы нагрузочного тестирования с инструментом JmeterКомпьютерная школа Hillel
 
Adding unit tests with tSQLt to the database deployment pipeline
Adding unit tests with tSQLt to the database deployment pipelineAdding unit tests with tSQLt to the database deployment pipeline
Adding unit tests with tSQLt to the database deployment pipelineEduardo Piairo
 
You don’t need DTAP + Backbase implementation - Amsterdam 17-12-2015
You don’t need DTAP + Backbase implementation - Amsterdam 17-12-2015You don’t need DTAP + Backbase implementation - Amsterdam 17-12-2015
You don’t need DTAP + Backbase implementation - Amsterdam 17-12-2015Pavel Chunyayev
 
Extending Continuous Integration
Extending Continuous IntegrationExtending Continuous Integration
Extending Continuous IntegrationJohannes Brodwall
 
Mistral Atlanta design session
Mistral Atlanta design sessionMistral Atlanta design session
Mistral Atlanta design sessionRenat Akhmerov
 
Load tests using Visual Studio 2013 and Azure
Load tests using Visual Studio 2013 and AzureLoad tests using Visual Studio 2013 and Azure
Load tests using Visual Studio 2013 and AzureRadu Vunvulea
 

What's hot (10)

Make your CPAN module static installable
Make your CPAN module static installableMake your CPAN module static installable
Make your CPAN module static installable
 
Speed = $$$
Speed = $$$Speed = $$$
Speed = $$$
 
Developing Resilient Cloud Native Apps with Spring Cloud
Developing Resilient Cloud Native Apps with Spring CloudDeveloping Resilient Cloud Native Apps with Spring Cloud
Developing Resilient Cloud Native Apps with Spring Cloud
 
Основы нагрузочного тестирования с инструментом Jmeter
Основы нагрузочного тестирования с инструментом JmeterОсновы нагрузочного тестирования с инструментом Jmeter
Основы нагрузочного тестирования с инструментом Jmeter
 
Adding unit tests with tSQLt to the database deployment pipeline
Adding unit tests with tSQLt to the database deployment pipelineAdding unit tests with tSQLt to the database deployment pipeline
Adding unit tests with tSQLt to the database deployment pipeline
 
You don’t need DTAP + Backbase implementation - Amsterdam 17-12-2015
You don’t need DTAP + Backbase implementation - Amsterdam 17-12-2015You don’t need DTAP + Backbase implementation - Amsterdam 17-12-2015
You don’t need DTAP + Backbase implementation - Amsterdam 17-12-2015
 
Spring Boot
Spring BootSpring Boot
Spring Boot
 
Extending Continuous Integration
Extending Continuous IntegrationExtending Continuous Integration
Extending Continuous Integration
 
Mistral Atlanta design session
Mistral Atlanta design sessionMistral Atlanta design session
Mistral Atlanta design session
 
Load tests using Visual Studio 2013 and Azure
Load tests using Visual Studio 2013 and AzureLoad tests using Visual Studio 2013 and Azure
Load tests using Visual Studio 2013 and Azure
 

Similar to Art of unittesting in OpenStack - Paris 2014

Git with Swift Atlanta 2014
Git with Swift Atlanta 2014Git with Swift Atlanta 2014
Git with Swift Atlanta 2014chmouel
 
Driving application development through behavior driven development
Driving application development through behavior driven developmentDriving application development through behavior driven development
Driving application development through behavior driven developmentEinar Ingebrigtsen
 
Olli-Pekka Puolitaival - Model-Based Testing for Integration Testing in Real ...
Olli-Pekka Puolitaival - Model-Based Testing for Integration Testing in Real ...Olli-Pekka Puolitaival - Model-Based Testing for Integration Testing in Real ...
Olli-Pekka Puolitaival - Model-Based Testing for Integration Testing in Real ...TEST Huddle
 
Olli-Pekka Puolitaival - Model-Based Tested for Integration Tested in Real Pr...
Olli-Pekka Puolitaival - Model-Based Tested for Integration Tested in Real Pr...Olli-Pekka Puolitaival - Model-Based Tested for Integration Tested in Real Pr...
Olli-Pekka Puolitaival - Model-Based Tested for Integration Tested in Real Pr...TEST Huddle
 
Continuous Deployment To The Cloud @DevoxxPL 2017
Continuous Deployment To The Cloud @DevoxxPL 2017 Continuous Deployment To The Cloud @DevoxxPL 2017
Continuous Deployment To The Cloud @DevoxxPL 2017 Marcin Grzejszczak
 
JNation - Integration Testing from the Trenches Rebooted
JNation - Integration Testing from the Trenches RebootedJNation - Integration Testing from the Trenches Rebooted
JNation - Integration Testing from the Trenches RebootedNicolas Fränkel
 
Test Driven Development using QUnit
Test Driven Development using QUnitTest Driven Development using QUnit
Test Driven Development using QUnitsatejsahu
 
Automating Deployments with Deployer - php[world] 2018
Automating Deployments with Deployer - php[world] 2018Automating Deployments with Deployer - php[world] 2018
Automating Deployments with Deployer - php[world] 2018Colin O'Dell
 
Ansible module development 101
Ansible module development 101Ansible module development 101
Ansible module development 101yfauser
 
A la découverte des google/test (aka gtest)
A la découverte des google/test (aka gtest)A la découverte des google/test (aka gtest)
A la découverte des google/test (aka gtest)Thierry Gayet
 
Automated php unit testing in drupal 8
Automated php unit testing in drupal 8Automated php unit testing in drupal 8
Automated php unit testing in drupal 8Jay Friendly
 
Westrich spock-assets-gum
Westrich spock-assets-gumWestrich spock-assets-gum
Westrich spock-assets-gumBrian Westrich
 
Automated testing on steroids – Trick for managing test data using Docker sna...
Automated testing on steroids – Trick for managing test data using Docker sna...Automated testing on steroids – Trick for managing test data using Docker sna...
Automated testing on steroids – Trick for managing test data using Docker sna...Lucas Jellema
 
Continuous Deployment of your Application - SpringOne Tour Dallas
Continuous Deployment of your Application - SpringOne Tour DallasContinuous Deployment of your Application - SpringOne Tour Dallas
Continuous Deployment of your Application - SpringOne Tour DallasVMware Tanzu
 
Angular CLI : HelloWorld
Angular CLI : HelloWorldAngular CLI : HelloWorld
Angular CLI : HelloWorldnikspatel007
 
Continuous Deployment of your Application @jSession#5
Continuous Deployment of your Application @jSession#5Continuous Deployment of your Application @jSession#5
Continuous Deployment of your Application @jSession#5Marcin Grzejszczak
 
Quickly Testing Legacy Cpp Code - ACCU Cambridge 2019
Quickly Testing Legacy Cpp Code - ACCU Cambridge 2019Quickly Testing Legacy Cpp Code - ACCU Cambridge 2019
Quickly Testing Legacy Cpp Code - ACCU Cambridge 2019Clare Macrae
 
Technical Lessons Learned Turning the Agile Dials to Eleven!
Technical Lessons Learned Turning the Agile Dials to Eleven!Technical Lessons Learned Turning the Agile Dials to Eleven!
Technical Lessons Learned Turning the Agile Dials to Eleven!Craig Smith
 

Similar to Art of unittesting in OpenStack - Paris 2014 (20)

Git with Swift Atlanta 2014
Git with Swift Atlanta 2014Git with Swift Atlanta 2014
Git with Swift Atlanta 2014
 
Driving application development through behavior driven development
Driving application development through behavior driven developmentDriving application development through behavior driven development
Driving application development through behavior driven development
 
Olli-Pekka Puolitaival - Model-Based Testing for Integration Testing in Real ...
Olli-Pekka Puolitaival - Model-Based Testing for Integration Testing in Real ...Olli-Pekka Puolitaival - Model-Based Testing for Integration Testing in Real ...
Olli-Pekka Puolitaival - Model-Based Testing for Integration Testing in Real ...
 
Olli-Pekka Puolitaival - Model-Based Tested for Integration Tested in Real Pr...
Olli-Pekka Puolitaival - Model-Based Tested for Integration Tested in Real Pr...Olli-Pekka Puolitaival - Model-Based Tested for Integration Tested in Real Pr...
Olli-Pekka Puolitaival - Model-Based Tested for Integration Tested in Real Pr...
 
Continuous Deployment To The Cloud @DevoxxPL 2017
Continuous Deployment To The Cloud @DevoxxPL 2017 Continuous Deployment To The Cloud @DevoxxPL 2017
Continuous Deployment To The Cloud @DevoxxPL 2017
 
JNation - Integration Testing from the Trenches Rebooted
JNation - Integration Testing from the Trenches RebootedJNation - Integration Testing from the Trenches Rebooted
JNation - Integration Testing from the Trenches Rebooted
 
Ch11lect1 ud
Ch11lect1 udCh11lect1 ud
Ch11lect1 ud
 
Test Driven Development using QUnit
Test Driven Development using QUnitTest Driven Development using QUnit
Test Driven Development using QUnit
 
Automating Deployments with Deployer - php[world] 2018
Automating Deployments with Deployer - php[world] 2018Automating Deployments with Deployer - php[world] 2018
Automating Deployments with Deployer - php[world] 2018
 
Ansible module development 101
Ansible module development 101Ansible module development 101
Ansible module development 101
 
A la découverte des google/test (aka gtest)
A la découverte des google/test (aka gtest)A la découverte des google/test (aka gtest)
A la découverte des google/test (aka gtest)
 
Automated php unit testing in drupal 8
Automated php unit testing in drupal 8Automated php unit testing in drupal 8
Automated php unit testing in drupal 8
 
Westrich spock-assets-gum
Westrich spock-assets-gumWestrich spock-assets-gum
Westrich spock-assets-gum
 
Automated testing on steroids – Trick for managing test data using Docker sna...
Automated testing on steroids – Trick for managing test data using Docker sna...Automated testing on steroids – Trick for managing test data using Docker sna...
Automated testing on steroids – Trick for managing test data using Docker sna...
 
Continuous Deployment of your Application - SpringOne Tour Dallas
Continuous Deployment of your Application - SpringOne Tour DallasContinuous Deployment of your Application - SpringOne Tour Dallas
Continuous Deployment of your Application - SpringOne Tour Dallas
 
Angular CLI : HelloWorld
Angular CLI : HelloWorldAngular CLI : HelloWorld
Angular CLI : HelloWorld
 
Unit testing in Unity
Unit testing in UnityUnit testing in Unity
Unit testing in Unity
 
Continuous Deployment of your Application @jSession#5
Continuous Deployment of your Application @jSession#5Continuous Deployment of your Application @jSession#5
Continuous Deployment of your Application @jSession#5
 
Quickly Testing Legacy Cpp Code - ACCU Cambridge 2019
Quickly Testing Legacy Cpp Code - ACCU Cambridge 2019Quickly Testing Legacy Cpp Code - ACCU Cambridge 2019
Quickly Testing Legacy Cpp Code - ACCU Cambridge 2019
 
Technical Lessons Learned Turning the Agile Dials to Eleven!
Technical Lessons Learned Turning the Agile Dials to Eleven!Technical Lessons Learned Turning the Agile Dials to Eleven!
Technical Lessons Learned Turning the Agile Dials to Eleven!
 

Recently uploaded

The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfayushiqss
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech studentsHimanshiGarg82
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfryanfarris8
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfkalichargn70th171
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...Nitya salvi
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedDelhi Call girls
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesVictorSzoltysek
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxalwaysnagaraju26
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 

Recently uploaded (20)

The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...Chinsurah Escorts ☎️8617697112  Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 

Art of unittesting in OpenStack - Paris 2014

  • 1. Chmouel Boudjnah! OpenStack in Action // Spring 2014 The art of Software testing in OpenStack Chmouel Boudjnah - @chmouel - eNovance
  • 2. Chmouel Boudjnah - @chmouel - eNovance About me
  • 3. Chmouel Boudjnah - @chmouel - eNovance About this session
  • 4. Chmouel Boudjnah - @chmouel - eNovance Software Testing overview
  • 5. Chmouel Boudjnah - @chmouel - eNovance • Unit Testing • Integration Testing • Performance Testing • Scalability Testing. Different type of Testing
  • 6. Chmouel Boudjnah - @chmouel - eNovance • Pentesting • Usability Testing • Regression Testing • Compatibility Testing. More testing
  • 7. Chmouel Boudjnah - @chmouel - eNovance Methodologies
  • 8. Chmouel Boudjnah - @chmouel - eNovance • Code a bit the test. • Start a bit of coding. • Make the test pass. • Repeat until the feature is implemented. TDD
  • 9. Chmouel Boudjnah - @chmouel - eNovance • Business Driven Development Introducing BDD
  • 10. Chmouel Boudjnah - @chmouel - eNovance • Business Driven Development • Behaviour Driven Development Introducing BDD
  • 11. Chmouel Boudjnah - @chmouel - eNovance • Business Driven Development • Behaviour Driven Development • BS Driven Development (i.e: Vaporware) Introducing BDD
  • 12. Chmouel Boudjnah - @chmouel - eNovance • Business Driven Development • Behaviour Driven Development • BS Driven Development • Some people get it confused with “Bourrinage Driven Development” Introducing BDD
  • 13. Chmouel Boudjnah - @chmouel - eNovance Methodology “You shall not pass a commit before each iterations has been fully tested”
  • 14. Chmouel Boudjnah - @chmouel - eNovance Unit Testing
  • 15. Chmouel Boudjnah - @chmouel - eNovance The five year old technology mashup.
  • 16. Chmouel Boudjnah - @chmouel - eNovance The five year old technology mashup. "well it is just like when you turn the wheel before we are going on a ride you test that it turns properly before actually riding it. If it didn’t turn then that means I may going to have a crash and have a big bobo.” Noah Boudjnah
  • 17. Chmouel Boudjnah - @chmouel - eNovance • Swift 2371 unit tests • Ceilometer 2583 • Heat 2710 • Keystone 3216 • Nova 10653 In OpenStack
  • 18. Chmouel Boudjnah - @chmouel - eNovance • Mostly for code styling • flake8 for pep8 and common errors • Openstack hacking Static code analysis.
  • 19. Chmouel Boudjnah - @chmouel - eNovance Tooling and Libraries
  • 20. Chmouel Boudjnah - @chmouel - eNovance Devstack
  • 21. Chmouel Boudjnah - @chmouel - eNovance • tox • pbr • testrunner • coverage Tools
  • 22. Chmouel Boudjnah - @chmouel - eNovance • testtools • mock • httppretty • six Libraries
  • 23. Chmouel Boudjnah - @chmouel - eNovance Integration tests
  • 24. Chmouel Boudjnah - @chmouel - eNovance • run against any OpenStack clouds • auto discover features • only OpenStack public interfaces • Black box testing • can be reused as load generation • self tested • around 2000 functional tests run on each commit iterations. Tempest
  • 25. Chmouel Boudjnah - @chmouel - eNovance WhatTheStack? A Tool Based on Tempest to Verify your Deployments
  • 26. Chmouel Boudjnah - @chmouel - eNovance • external CI plug into openstack infrastructure. • able to vote +1 but not -1 • Usually used by vendors for drivers testing in Neutron / Nova / Cinder • Used as well for other distros (only RedHat at the moment). External CI
  • 27. Chmouel Boudjnah - @chmouel - eNovance Performances testing
  • 28. Chmouel Boudjnah - @chmouel - eNovance Performance testing moto One shall always testing the underlying hardware before even thinking about performance testing. Erwan Velu - eNovance Tester allumni
  • 29. Chmouel Boudjnah - @chmouel - eNovance • at eNovance we have a tool called AHC which benchmark underlying platform before every deliveries. • tempest can be used for performance testing of the software itself. • There is OpenStack Rally as well a tool that automate the full thing with nicely generated reports and such. • Highly dependent of your deployment (i.e: your hardware). Performance testing.
  • 30. Chmouel Boudjnah - @chmouel - eNovance That’s it