SlideShare a Scribd company logo
Functional Testing
High-Quality Enablers for High-Quality Applications
Pasquale Vitale
R&D Engineer, Engineering Ingegneria Informatica SpA
▪ FIWARE is working on production environments
• FIWARE platform must scale up in reliable and real workload conditions
• FIWARE GEs must work at an adequate quality, reliability and performance level
▪ Provide to FIWARE users the high-quality support
• installation, configuration and usage of the FIWARE technology
• improve the FIWARE user experience
▪ Practical approach on improving quality and transparency
• light and agile methodology very operative
Why to test FIWARE: the motivation
1
Guarantee
Improvement
Standard
Satisfaction
Reliability Business
Why to test
FIWARE
▪ Check the completeness of documentation, the specification, the implementation and the
installation of the GEris
▪ Three sections to assess FIWARE GEs:
1. functional testing
2. non-functional testing
3. addressing documentation
▪ How to highlight these assess
• Quality Assurance
Why to test FIWARE: the scope
2
Functional
Testing
Non-Functional
Testing
Documentation
Testing
Verification of the GE specification, validating the APIs
Assessment of performance, stability and scalability, finding the limits of the components
Integrity of GEs documentation, completeness and soundness
OK
▪ Analyzing and checking of the results to:
§ provide labelling to summarize the quality level (A, B, C, D) of the GE
§ send feedback through JIRA issues for any GEs
Quality Assurance in FIWARE: the approach
3
workflow
Functional
Any
GEi
Non-Functional
Documentation
results LABELLING
results
results
Testing
The Labelling approach
▪ Quick at a glance mechanism to check the assessed GEs’ quality
▪ Following the EU energy label system
▪ Sub-label per each tested aspect:
• Completeness, Usability, Tests Passed, Scalability, Performance, Stability
▪ All results are available in the catalogue
https://github.com/FIWARE/catalogue
4
FIWARE Testing: functional testing
▪ Functional and Non-Functional Testing
• improve the service (reliability, scalability, performance, stability)
▪ FIWARE Testing approach
• automate the test cases using a tool (JMeter) to
□ load functional test and measure performance and
□ provide test results
▪ What is the Functional Testing?
• Test of REST APIs (get, post, put, delete)
5
REST APIs
GET POST PUT DELETE
The methodology for Documentation Testing
▪ Documentation tests merge different sources of information:
q installation manuals (step-by-step, docker)
q user and administrator manuals
q academy entries
q catalogue entries
6
Catalogue entry
Installation
Training courses
new
version
GEi
User/Admin
collect
results
update
labels
notify
issues
(Jira)
Labelling
The methodology for Functional Testing
▪ Functional test are:
q developed as JMeter scripts
q describing the test environment and versioned in GitHub
q storing results together with scripts
q computing part of the label
q notifying GEi owner via Jira (if needed)
7
API validation
new
version
GEi
run/fix scripts
dev new
scripts
collect
results
update
labels
notify
issues
(Jira)
Labelling
▪ Non-Functional tests are:
q developed as JMeter scripts
q run in a dedicated testing environment isolated from noise and external interactions
q uploaded in GitHub and reported in a detailed analysis report (graphs, tables, etc)
q used for labelling each GE version from three aspects: performance, stability and scalability
q notifying GEi owner via Jira (if needed)
The methodology for Non-Functional Testing
8
new
version
GEi
define metrics
to test (diff for
each type of GE)
dev test
scripts
define
(re-use)
test cases
update
labels
notify
issues
(Jira)
install GE
testing
environment
set up
run tests
collect
results
Analysis and
reporting
Labelling
Functional Test: in detail
▪ All tests are committed in GitHub repository:
• https://github.com/FIWARE/test.Functional/tree/master/API.test
▪ Name convention
• <CHAPTER_NAME>.<GE_NAME>/<GE_VERSION>
where
□ CHAPTER_NAME - apps, data, i2nd, iot, security
□ GE_NAME - ApplicationMashup, ContextBroker, Idm, etc..
□ GE_VERSION - i.e. 1.12.0, 1.8.0, 7.0.2, 5.4.3
9
Results for each GE version
▪ results sub-folder within CSVs file
• <GE_name>-<GE_version>_<datetime>.csv
▪ <GE name>-<version>.jmx
▪ README.md (how to run the test)
▪ Any additional files (if necessary)
10
Test Executed (TE) Test Failed (TF)
orion_context_broker-2.0.0_2018-10-17_094847.csv
JIRA Ticketing: add a WorkItem
11
Prefix:
FIWARE.WorkItem.QA
Chapter
GE name
GE version
Postfix:
functional
JIRA Ticketing: add a Bug
12
Prefix:
FIWARE.Bug Chapter GE name
Postfix:
Short bug detail
GE owner
Functional Test: The Labelling
▪ Labelling process evaluation
13
Label Value Base Measures Formula
A+++ < 0,1
Total number of Test Failed (TF)
Total number of Test cases Executed (TE)
TF/TE
A++ 0,1 - 0,25
A+ 0,26 - 0,40
A 0,41 - 0,55
B 0,56 - 0,7
C 0,71 - 0,85
D > 0,85
Functional Test Results
▪ Results in FI-NEXT (2 years)
14
Functional Test in numbers
Total number of GEs used 26
Total script executed 58
Total bugs detected 119
Labelling
A+++ 50 86 %
A++ 7 12 %
A+ 0 -
A 1 2 %
B 0 -
C 0 -
D 0 -
The Future
▪ Upon the continuation of presented activities…
▪ FIWARE Foundation is taking care of QA activities
▪ extending and systematizing tests to all GEs, existing and incubated
▪ Automating as much as possible the assessment:
▪ labelling assignment and updating
▪ launching of verification and performance tests for every new version of GEs in the Catalogue
▪ passing tests to incubated GEs to become part of Catalogue
15
Thank you!
http://fiware.org
Follow @FIWARE on Twitter
16

More Related Content

PDF
CERTIFICADO CURSO INGLES
PPT
Test automation lessons from WebSphere Application Server
PDF
Quality Management Introduction
PDF
C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010
PPTX
Pengujian Sistem WebGIS
PDF
XRAY for Jira
PDF
Why Should I Trust on FIWARE?
PDF
03 test specification and execution
CERTIFICADO CURSO INGLES
Test automation lessons from WebSphere Application Server
Quality Management Introduction
C.V, Narayanan - Open Source Tools for Test Management - EuroSTAR 2010
Pengujian Sistem WebGIS
XRAY for Jira
Why Should I Trust on FIWARE?
03 test specification and execution

Similar to FIWARE Global Summit - Functional Testing – High-Quality Enablers for High-Quality Applications (20)

DOC
Testing Process
PPT
ISTQB / ISEB Foundation Exam Practice - 2
PPTX
Incorporating Performance Testing in Agile Development Process
PPTX
Quality Assurance Made Easy in JIRA - Xpand IT & Atlassian JAM Sessions 2017
PPT
How to Build and Maintain Quality Drupal Sites with Automated Testing
DOC
Priyadarshi Nanda_QA_Resume
PPTX
Enhancing Software Quality
PDF
Building functional Quality Gates with ReportPortal
PPTX
Zero touch QA automation platform for DevOps
PPT
ISTQB, ISEB Lecture Notes- 2
PPT
Rational Quality Manager
PPT
Your score increases as you pick a category, fill out a long description and ...
PPT
Qa Lifecycle Colaci.Com
PDF
Qulaity strategy template
PDF
Test Automation using UiPath Test Suite - Developer Circle Part-4.pdf
PDF
Testlink Test Management with Teamforge
PPTX
Mobile Quality Assurance
PPSX
QA with Microsoft Test Manager and Lab Management
PPTX
Automated Acceptance Tests & Tool choice
PPTX
Cerberus_Presentation1
Testing Process
ISTQB / ISEB Foundation Exam Practice - 2
Incorporating Performance Testing in Agile Development Process
Quality Assurance Made Easy in JIRA - Xpand IT & Atlassian JAM Sessions 2017
How to Build and Maintain Quality Drupal Sites with Automated Testing
Priyadarshi Nanda_QA_Resume
Enhancing Software Quality
Building functional Quality Gates with ReportPortal
Zero touch QA automation platform for DevOps
ISTQB, ISEB Lecture Notes- 2
Rational Quality Manager
Your score increases as you pick a category, fill out a long description and ...
Qa Lifecycle Colaci.Com
Qulaity strategy template
Test Automation using UiPath Test Suite - Developer Circle Part-4.pdf
Testlink Test Management with Teamforge
Mobile Quality Assurance
QA with Microsoft Test Manager and Lab Management
Automated Acceptance Tests & Tool choice
Cerberus_Presentation1
Ad

More from FIWARE (20)

PPTX
Behm_Herne_NeMo_akt.pptx
PDF
Katharina Hogrebe Herne Digital Days.pdf
PPTX
Christoph Mertens_IDSA_Introduction to Data Spaces.pptx
PPTX
Behm_Herne_NeMo.pptx
PPTX
Evangelists + iHubs Promo Slides.pptx
PPTX
Lukas Künzel Smart City Operating System.pptx
PPTX
Pierre Golz Der Transformationsprozess im Konzern Stadt.pptx
PPTX
Dennis Wendland_The i4Trust Collaboration Programme.pptx
PPTX
Ulrich Ahle_FIWARE.pptx
PPTX
Aleksandar Vrglevski _FIWARE DACH_OSIH.pptx
PDF
Water Quality - Lukas Kuenzel.pdf
PPTX
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
PPTX
FiWareSummit.msGIS-Data-to-Value.2023.06.12.pptx
PPTX
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
PPTX
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
PDF
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
PDF
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
PPTX
HTAG_Skalierung_Plattform_lokal_final_versand.pptx
PPTX
WE_LoRaWAN _ IoT.pptx
PPTX
EU Opp_Clara Pezuela - German chapter.pptx
Behm_Herne_NeMo_akt.pptx
Katharina Hogrebe Herne Digital Days.pdf
Christoph Mertens_IDSA_Introduction to Data Spaces.pptx
Behm_Herne_NeMo.pptx
Evangelists + iHubs Promo Slides.pptx
Lukas Künzel Smart City Operating System.pptx
Pierre Golz Der Transformationsprozess im Konzern Stadt.pptx
Dennis Wendland_The i4Trust Collaboration Programme.pptx
Ulrich Ahle_FIWARE.pptx
Aleksandar Vrglevski _FIWARE DACH_OSIH.pptx
Water Quality - Lukas Kuenzel.pdf
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
FiWareSummit.msGIS-Data-to-Value.2023.06.12.pptx
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
HTAG_Skalierung_Plattform_lokal_final_versand.pptx
WE_LoRaWAN _ IoT.pptx
EU Opp_Clara Pezuela - German chapter.pptx
Ad

Recently uploaded (20)

PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
A comparative analysis of optical character recognition models for extracting...
PPTX
sap open course for s4hana steps from ECC to s4
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Encapsulation theory and applications.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
Spectroscopy.pptx food analysis technology
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Machine learning based COVID-19 study performance prediction
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
The Rise and Fall of 3GPP – Time for a Sabbatical?
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
A comparative analysis of optical character recognition models for extracting...
sap open course for s4hana steps from ECC to s4
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
20250228 LYD VKU AI Blended-Learning.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
MIND Revenue Release Quarter 2 2025 Press Release
Network Security Unit 5.pdf for BCA BBA.
Encapsulation theory and applications.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Spectroscopy.pptx food analysis technology
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Per capita expenditure prediction using model stacking based on satellite ima...
Review of recent advances in non-invasive hemoglobin estimation
Machine learning based COVID-19 study performance prediction
Diabetes mellitus diagnosis method based random forest with bat algorithm

FIWARE Global Summit - Functional Testing – High-Quality Enablers for High-Quality Applications

  • 1. Functional Testing High-Quality Enablers for High-Quality Applications Pasquale Vitale R&D Engineer, Engineering Ingegneria Informatica SpA
  • 2. ▪ FIWARE is working on production environments • FIWARE platform must scale up in reliable and real workload conditions • FIWARE GEs must work at an adequate quality, reliability and performance level ▪ Provide to FIWARE users the high-quality support • installation, configuration and usage of the FIWARE technology • improve the FIWARE user experience ▪ Practical approach on improving quality and transparency • light and agile methodology very operative Why to test FIWARE: the motivation 1 Guarantee Improvement Standard Satisfaction Reliability Business Why to test FIWARE
  • 3. ▪ Check the completeness of documentation, the specification, the implementation and the installation of the GEris ▪ Three sections to assess FIWARE GEs: 1. functional testing 2. non-functional testing 3. addressing documentation ▪ How to highlight these assess • Quality Assurance Why to test FIWARE: the scope 2 Functional Testing Non-Functional Testing Documentation Testing Verification of the GE specification, validating the APIs Assessment of performance, stability and scalability, finding the limits of the components Integrity of GEs documentation, completeness and soundness OK
  • 4. ▪ Analyzing and checking of the results to: § provide labelling to summarize the quality level (A, B, C, D) of the GE § send feedback through JIRA issues for any GEs Quality Assurance in FIWARE: the approach 3 workflow Functional Any GEi Non-Functional Documentation results LABELLING results results Testing
  • 5. The Labelling approach ▪ Quick at a glance mechanism to check the assessed GEs’ quality ▪ Following the EU energy label system ▪ Sub-label per each tested aspect: • Completeness, Usability, Tests Passed, Scalability, Performance, Stability ▪ All results are available in the catalogue https://github.com/FIWARE/catalogue 4
  • 6. FIWARE Testing: functional testing ▪ Functional and Non-Functional Testing • improve the service (reliability, scalability, performance, stability) ▪ FIWARE Testing approach • automate the test cases using a tool (JMeter) to □ load functional test and measure performance and □ provide test results ▪ What is the Functional Testing? • Test of REST APIs (get, post, put, delete) 5 REST APIs GET POST PUT DELETE
  • 7. The methodology for Documentation Testing ▪ Documentation tests merge different sources of information: q installation manuals (step-by-step, docker) q user and administrator manuals q academy entries q catalogue entries 6 Catalogue entry Installation Training courses new version GEi User/Admin collect results update labels notify issues (Jira) Labelling
  • 8. The methodology for Functional Testing ▪ Functional test are: q developed as JMeter scripts q describing the test environment and versioned in GitHub q storing results together with scripts q computing part of the label q notifying GEi owner via Jira (if needed) 7 API validation new version GEi run/fix scripts dev new scripts collect results update labels notify issues (Jira) Labelling
  • 9. ▪ Non-Functional tests are: q developed as JMeter scripts q run in a dedicated testing environment isolated from noise and external interactions q uploaded in GitHub and reported in a detailed analysis report (graphs, tables, etc) q used for labelling each GE version from three aspects: performance, stability and scalability q notifying GEi owner via Jira (if needed) The methodology for Non-Functional Testing 8 new version GEi define metrics to test (diff for each type of GE) dev test scripts define (re-use) test cases update labels notify issues (Jira) install GE testing environment set up run tests collect results Analysis and reporting Labelling
  • 10. Functional Test: in detail ▪ All tests are committed in GitHub repository: • https://github.com/FIWARE/test.Functional/tree/master/API.test ▪ Name convention • <CHAPTER_NAME>.<GE_NAME>/<GE_VERSION> where □ CHAPTER_NAME - apps, data, i2nd, iot, security □ GE_NAME - ApplicationMashup, ContextBroker, Idm, etc.. □ GE_VERSION - i.e. 1.12.0, 1.8.0, 7.0.2, 5.4.3 9
  • 11. Results for each GE version ▪ results sub-folder within CSVs file • <GE_name>-<GE_version>_<datetime>.csv ▪ <GE name>-<version>.jmx ▪ README.md (how to run the test) ▪ Any additional files (if necessary) 10 Test Executed (TE) Test Failed (TF) orion_context_broker-2.0.0_2018-10-17_094847.csv
  • 12. JIRA Ticketing: add a WorkItem 11 Prefix: FIWARE.WorkItem.QA Chapter GE name GE version Postfix: functional
  • 13. JIRA Ticketing: add a Bug 12 Prefix: FIWARE.Bug Chapter GE name Postfix: Short bug detail GE owner
  • 14. Functional Test: The Labelling ▪ Labelling process evaluation 13 Label Value Base Measures Formula A+++ < 0,1 Total number of Test Failed (TF) Total number of Test cases Executed (TE) TF/TE A++ 0,1 - 0,25 A+ 0,26 - 0,40 A 0,41 - 0,55 B 0,56 - 0,7 C 0,71 - 0,85 D > 0,85
  • 15. Functional Test Results ▪ Results in FI-NEXT (2 years) 14 Functional Test in numbers Total number of GEs used 26 Total script executed 58 Total bugs detected 119 Labelling A+++ 50 86 % A++ 7 12 % A+ 0 - A 1 2 % B 0 - C 0 - D 0 -
  • 16. The Future ▪ Upon the continuation of presented activities… ▪ FIWARE Foundation is taking care of QA activities ▪ extending and systematizing tests to all GEs, existing and incubated ▪ Automating as much as possible the assessment: ▪ labelling assignment and updating ▪ launching of verification and performance tests for every new version of GEs in the Catalogue ▪ passing tests to incubated GEs to become part of Catalogue 15