SlideShare a Scribd company logo
Development and Test Infrastructure
Q1 2016 hackfest, San Francisco
test infra team
Improvement 1
Jenkins-ci, what should be included in verify job
The definition
little thing is done in verify job(e.g., https://build.opnfv.org/ci/job/functest-verify-master/720/console)
Unit test is needed in each code development project written by themselves according to their own needs, a developer has
to pas through the unittest before he/she puts up a patch
Improvement 2
Multi-scenario names
What does this mean?
[installer]-[SDN controller]-[?]-[HA or not]-[pod]-[branch]
Question: Does this satisfy our requirement?
Does this confuse somebody?
Do we have reservation for future scenario expand?
Improvement 3
A tip to develop code more efficiently without too much reviews for one test case
Problem description
The test cases running progress will not included in the unittest module(i.e., verify job), since it will last long
if a developer puts up an patch to make some changes, it’s hard for himself/herself and the reviewers to
check if it works well, so the review, merge process is largely depends on the reviewer’s personal knowledge
and experience.
solutions
Local test with only checking the functions which are changed.
Local test by setting up his/her own installer env and run the test case, which is hard for general developers
and need some negotiation with the reviewers, besides, the installers’ code is always changing.
Integration with the community installer and run the test case once a patch set put up related to its code
Improvement 3
A tip to develop code more efficiently without too much reviews for one test case
If the test case is a little complicated, u can use the following method
Define a patchset parameter
for debugging
(in the test case Jenkins job
and code repo)
update the patchset
parameter in the Jenkins job
git fetch the updated code
repo
run the Jenkins job and check
the test results
Add reviewers and wait to
merge
Amend the patch and put up
a new patch set
success
fail
Improvement 4
dashboard
MongoDB is used nowadays for most of the projects.
update the dashboard automatically once the graph function changes, or
maybe re-draw the dashboard everyday or few hours , this seems not work
well.
The dashboard may not satisfy everyone’s requirement, such as metric test
results, 3D graphs.
The graphs may not seems cool enough especially compared to some
expert graph and dashboard builder
Improvement 5
lab resource pool
NodeLabel Parameter Plugin already installed
Just to configure the job to the node with correct label parameter
Not widely used yet
For virtual env, the VM management tool Nodepool can be considered
Improvement 6
Log system
ELK is recommended, it can be easily set up and used.
Thanks

More Related Content

What's hot

EFL QA: Where Are We and Where Should We Go?
EFL QA: Where Are We and Where Should We Go?EFL QA: Where Are We and Where Should We Go?
EFL QA: Where Are We and Where Should We Go?
Samsung Open Source Group
 
Игорь Бондаренко (Neklo) - Организация процесса разработки модулей для Magento
Игорь Бондаренко (Neklo) - Организация процесса разработки модулей для MagentoИгорь Бондаренко (Neklo) - Организация процесса разработки модулей для Magento
Игорь Бондаренко (Neklo) - Организация процесса разработки модулей для Magento
meet_magento
 
Growing Object Oriented Software
Growing Object Oriented SoftwareGrowing Object Oriented Software
Growing Object Oriented Software
Annmarie Lanesey
 

What's hot (20)

Continuous Testing for CTOs (Webinar Slides)
Continuous Testing for CTOs (Webinar Slides)Continuous Testing for CTOs (Webinar Slides)
Continuous Testing for CTOs (Webinar Slides)
 
Quality Assurance
Quality AssuranceQuality Assurance
Quality Assurance
 
The best day for qa
The best day for qaThe best day for qa
The best day for qa
 
Achieve Intelligent Test Execution: Strategies for Streamlining Regression Te...
Achieve Intelligent Test Execution: Strategies for Streamlining Regression Te...Achieve Intelligent Test Execution: Strategies for Streamlining Regression Te...
Achieve Intelligent Test Execution: Strategies for Streamlining Regression Te...
 
QA Process Overview for Firefox OS 2014
QA Process Overview for Firefox OS 2014QA Process Overview for Firefox OS 2014
QA Process Overview for Firefox OS 2014
 
QTest
QTest QTest
QTest
 
Continuous Delivery Presentation
Continuous Delivery PresentationContinuous Delivery Presentation
Continuous Delivery Presentation
 
User story workflow (eng)
User story workflow (eng)User story workflow (eng)
User story workflow (eng)
 
Android tdd
Android tddAndroid tdd
Android tdd
 
QA Process Overview
QA Process OverviewQA Process Overview
QA Process Overview
 
EFL QA: Where Are We and Where Should We Go?
EFL QA: Where Are We and Where Should We Go?EFL QA: Where Are We and Where Should We Go?
EFL QA: Where Are We and Where Should We Go?
 
Agile Acceptance testing with Fitnesse
Agile Acceptance testing with FitnesseAgile Acceptance testing with Fitnesse
Agile Acceptance testing with Fitnesse
 
Testing in java
Testing in javaTesting in java
Testing in java
 
Игорь Бондаренко (Neklo) - Организация процесса разработки модулей для Magento
Игорь Бондаренко (Neklo) - Организация процесса разработки модулей для MagentoИгорь Бондаренко (Neklo) - Организация процесса разработки модулей для Magento
Игорь Бондаренко (Neklo) - Организация процесса разработки модулей для Magento
 
Testing challenges in a continuous delivery world
Testing challenges in a continuous delivery worldTesting challenges in a continuous delivery world
Testing challenges in a continuous delivery world
 
Defect life cycle and Defect Status Life Cycle
Defect life cycle and Defect Status Life CycleDefect life cycle and Defect Status Life Cycle
Defect life cycle and Defect Status Life Cycle
 
How do you implement Continuous Delivery? Part 3: All about Pipelines
How do you implement Continuous Delivery? Part 3: All about PipelinesHow do you implement Continuous Delivery? Part 3: All about Pipelines
How do you implement Continuous Delivery? Part 3: All about Pipelines
 
Agile QA Automation process
Agile QA Automation processAgile QA Automation process
Agile QA Automation process
 
Growing Object Oriented Software
Growing Object Oriented SoftwareGrowing Object Oriented Software
Growing Object Oriented Software
 
QA with Microsoft Test Manager and Lab Management
QA with Microsoft Test Manager and Lab ManagementQA with Microsoft Test Manager and Lab Management
QA with Microsoft Test Manager and Lab Management
 

Similar to Development and test infrastructure

ESEconf2011 - Guckenheimer Sam: "Agile in the Very Large"
ESEconf2011 - Guckenheimer Sam: "Agile in the Very Large"ESEconf2011 - Guckenheimer Sam: "Agile in the Very Large"
ESEconf2011 - Guckenheimer Sam: "Agile in the Very Large"
Aberla
 
Improving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingImproving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester Training
Anna Russo
 
Acceptance test driven development
Acceptance test driven developmentAcceptance test driven development
Acceptance test driven development
Editor Jacotech
 

Similar to Development and test infrastructure (20)

DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build Automation
 
Dev box testing.pdf
Dev box testing.pdfDev box testing.pdf
Dev box testing.pdf
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposal
 
DevOps CI Automation Continuous Integration
DevOps CI Automation Continuous IntegrationDevOps CI Automation Continuous Integration
DevOps CI Automation Continuous Integration
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe Commerce
 
Introduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe CommerceIntroduction to Integration Tests in Magento / Adobe Commerce
Introduction to Integration Tests in Magento / Adobe Commerce
 
Ian Cooper webinar for DDD Iran: Kent beck style tdd seven years after
Ian Cooper webinar for DDD Iran: Kent beck style tdd   seven years afterIan Cooper webinar for DDD Iran: Kent beck style tdd   seven years after
Ian Cooper webinar for DDD Iran: Kent beck style tdd seven years after
 
Test driven development and unit testing with examples in C++
Test driven development and unit testing with examples in C++Test driven development and unit testing with examples in C++
Test driven development and unit testing with examples in C++
 
ESEconf2011 - Guckenheimer Sam: "Agile in the Very Large"
ESEconf2011 - Guckenheimer Sam: "Agile in the Very Large"ESEconf2011 - Guckenheimer Sam: "Agile in the Very Large"
ESEconf2011 - Guckenheimer Sam: "Agile in the Very Large"
 
2.1 Automation Nation: Keeping your Process Builders in Check
2.1 Automation Nation: Keeping your Process Builders in Check2.1 Automation Nation: Keeping your Process Builders in Check
2.1 Automation Nation: Keeping your Process Builders in Check
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Continuous Everything
Continuous EverythingContinuous Everything
Continuous Everything
 
Improving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester TrainingImproving Software Quality- 2-day Tester Training
Improving Software Quality- 2-day Tester Training
 
Devops interview questions 2 www.bigclasses.com
Devops interview questions  2  www.bigclasses.comDevops interview questions  2  www.bigclasses.com
Devops interview questions 2 www.bigclasses.com
 
Siebel Upgrade Best Practices & Processes V2
Siebel Upgrade Best Practices & Processes V2Siebel Upgrade Best Practices & Processes V2
Siebel Upgrade Best Practices & Processes V2
 
Acceptance test driven development
Acceptance test driven developmentAcceptance test driven development
Acceptance test driven development
 
STX Next - Scrum Development Process Overview
STX Next - Scrum Development Process OverviewSTX Next - Scrum Development Process Overview
STX Next - Scrum Development Process Overview
 
Tutorial test driven development with Visual Studio 2012
Tutorial test driven development with Visual Studio 2012Tutorial test driven development with Visual Studio 2012
Tutorial test driven development with Visual Studio 2012
 
Performance engineering10042915
Performance engineering10042915Performance engineering10042915
Performance engineering10042915
 

Recently uploaded

School management system project report.pdf
School management system project report.pdfSchool management system project report.pdf
School management system project report.pdf
Kamal Acharya
 
Online blood donation management system project.pdf
Online blood donation management system project.pdfOnline blood donation management system project.pdf
Online blood donation management system project.pdf
Kamal Acharya
 
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical SolutionsRS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
Atif Razi
 
Laundry management system project report.pdf
Laundry management system project report.pdfLaundry management system project report.pdf
Laundry management system project report.pdf
Kamal Acharya
 
Digital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdfDigital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdf
AbrahamGadissa
 

Recently uploaded (20)

HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
 
2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edge2024 DevOps Pro Europe - Growing at the edge
2024 DevOps Pro Europe - Growing at the edge
 
Courier management system project report.pdf
Courier management system project report.pdfCourier management system project report.pdf
Courier management system project report.pdf
 
Online resume builder management system project report.pdf
Online resume builder management system project report.pdfOnline resume builder management system project report.pdf
Online resume builder management system project report.pdf
 
Democratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek AryaDemocratizing Fuzzing at Scale by Abhishek Arya
Democratizing Fuzzing at Scale by Abhishek Arya
 
School management system project report.pdf
School management system project report.pdfSchool management system project report.pdf
School management system project report.pdf
 
retail automation billing system ppt.pptx
retail automation billing system ppt.pptxretail automation billing system ppt.pptx
retail automation billing system ppt.pptx
 
Introduction to Casting Processes in Manufacturing
Introduction to Casting Processes in ManufacturingIntroduction to Casting Processes in Manufacturing
Introduction to Casting Processes in Manufacturing
 
Online blood donation management system project.pdf
Online blood donation management system project.pdfOnline blood donation management system project.pdf
Online blood donation management system project.pdf
 
Event Management System Vb Net Project Report.pdf
Event Management System Vb Net  Project Report.pdfEvent Management System Vb Net  Project Report.pdf
Event Management System Vb Net Project Report.pdf
 
Natalia Rutkowska - BIM School Course in Kraków
Natalia Rutkowska - BIM School Course in KrakówNatalia Rutkowska - BIM School Course in Kraków
Natalia Rutkowska - BIM School Course in Kraków
 
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical SolutionsRS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
RS Khurmi Machine Design Clutch and Brake Exercise Numerical Solutions
 
Laundry management system project report.pdf
Laundry management system project report.pdfLaundry management system project report.pdf
Laundry management system project report.pdf
 
Peek implant persentation - Copy (1).pdf
Peek implant persentation - Copy (1).pdfPeek implant persentation - Copy (1).pdf
Peek implant persentation - Copy (1).pdf
 
Digital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdfDigital Signal Processing Lecture notes n.pdf
Digital Signal Processing Lecture notes n.pdf
 
Pharmacy management system project report..pdf
Pharmacy management system project report..pdfPharmacy management system project report..pdf
Pharmacy management system project report..pdf
 
shape functions of 1D and 2 D rectangular elements.pptx
shape functions of 1D and 2 D rectangular elements.pptxshape functions of 1D and 2 D rectangular elements.pptx
shape functions of 1D and 2 D rectangular elements.pptx
 
Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.Quality defects in TMT Bars, Possible causes and Potential Solutions.
Quality defects in TMT Bars, Possible causes and Potential Solutions.
 
Halogenation process of chemical process industries
Halogenation process of chemical process industriesHalogenation process of chemical process industries
Halogenation process of chemical process industries
 
Furniture showroom management system project.pdf
Furniture showroom management system project.pdfFurniture showroom management system project.pdf
Furniture showroom management system project.pdf
 

Development and test infrastructure

  • 1. Development and Test Infrastructure Q1 2016 hackfest, San Francisco test infra team
  • 2. Improvement 1 Jenkins-ci, what should be included in verify job The definition little thing is done in verify job(e.g., https://build.opnfv.org/ci/job/functest-verify-master/720/console) Unit test is needed in each code development project written by themselves according to their own needs, a developer has to pas through the unittest before he/she puts up a patch
  • 3. Improvement 2 Multi-scenario names What does this mean? [installer]-[SDN controller]-[?]-[HA or not]-[pod]-[branch] Question: Does this satisfy our requirement? Does this confuse somebody? Do we have reservation for future scenario expand?
  • 4. Improvement 3 A tip to develop code more efficiently without too much reviews for one test case Problem description The test cases running progress will not included in the unittest module(i.e., verify job), since it will last long if a developer puts up an patch to make some changes, it’s hard for himself/herself and the reviewers to check if it works well, so the review, merge process is largely depends on the reviewer’s personal knowledge and experience. solutions Local test with only checking the functions which are changed. Local test by setting up his/her own installer env and run the test case, which is hard for general developers and need some negotiation with the reviewers, besides, the installers’ code is always changing. Integration with the community installer and run the test case once a patch set put up related to its code
  • 5. Improvement 3 A tip to develop code more efficiently without too much reviews for one test case If the test case is a little complicated, u can use the following method Define a patchset parameter for debugging (in the test case Jenkins job and code repo) update the patchset parameter in the Jenkins job git fetch the updated code repo run the Jenkins job and check the test results Add reviewers and wait to merge Amend the patch and put up a new patch set success fail
  • 6. Improvement 4 dashboard MongoDB is used nowadays for most of the projects. update the dashboard automatically once the graph function changes, or maybe re-draw the dashboard everyday or few hours , this seems not work well. The dashboard may not satisfy everyone’s requirement, such as metric test results, 3D graphs. The graphs may not seems cool enough especially compared to some expert graph and dashboard builder
  • 7. Improvement 5 lab resource pool NodeLabel Parameter Plugin already installed Just to configure the job to the node with correct label parameter Not widely used yet For virtual env, the VM management tool Nodepool can be considered
  • 8. Improvement 6 Log system ELK is recommended, it can be easily set up and used.