SlideShare a Scribd company logo
Hungarian Software Testing Forum (HUSTEF 2014) 
The Gap Between Academic Research and 
Industrial Practice in Software Testing 
Budapest University of Technology and Economics 
Department of Measurement and Information Systems 
Zoltan Micskei 
assistant professor
The Gap: Examples 
“Automatic testing” 
Academia Industry 
2 
—> automatic test 
case generation 
—> automatic 
test execution
The Gap: Examples 
“Code coverage” 
Academia Industry 
3 
—> “We defined the 
new <obscure> metric.. ” 
—> “Nice, we reached 80% 
<statement> coverage.”
Illustrating the gap
(Some) Recent Papers in Academia 
Coverage Is Not Strongly Correlated with Test Suite Effectiveness 
An improved Pareto distribution for modelling 
the fault data of open source software 
Automatic test case generation from Simulink 
Stateflow models using model checking 
Adding Contextual Guidance to the Automated Search for Probabilistic Test Profiles 
Lookahead-Based Approaches for Minimizing Adaptive Distinguishing Sequences 
Design and industrial evaluation of a tool supporting semi-automated website testing 
Using Test Case Reduction and Prioritization to Improve Symbolic Execution 
Minimum Number of Test Paths for Prime Path and Other Structural Coverage Criteria 
Search-Based Testing for Embedded Telecom 
Software with Complex Input Structures 
Characterizing and Detecting Performance Bugs for Smartphone Applications 
5 
Enhancing Symbolic Execution with Veritesting 
Analysis and testing of black-box component-based 
systems by inferring partial models 
A Hitchhiker's guide to statistical tests for assessing 
randomized algorithms in software engineering 
Sample from ~130 papers from 7 conferences
Topics in Academia 
6 
Test case/input 
generation 
Test optimization and 
prioritization 
Empirical evaluations
(Some) Recent Talks in Industry 
Top Challenges in Testing Requirements 
How to Stress Test Your Mobile App 
Internationalization and Localization Testing 
Calculating the Cost of non-quality 
Breaking the Matrix - Android Testing at Scale 
Wisdom of Crowds in Software Testing 
Risk-Based Testing for Agile Projects 
Challenges and Solutions in Global Requirements Engineering 
7 
Web Performance Testing with WebDriver 
Key Test Design Techniques 
Appium: Automation for Mobile Apps Espresso: Fresh Start to Android UI Testing 
Designing for Testability: Differentiator in a Competitive Market 
Sample from ~80 papers from 5 conferences
Topics in Academia and Industry 
8 
Test management 
Test automation (tools, 
technologies) 
Test design techniques 
Test case/input 
generation 
Test optimization and 
prioritization 
Empirical evaluations
Reducing the Gap 
9
Factors Affecting The Gap 
Education Tools
Education: ACM/IEEE Comp. Sci. Curricula 
Software Engineering Knowledge Area 
Formal Methods 
Software Reliability 
Software Evolution 
Software Verification Validation 
0 5 10 15 20 25 30 35 40 45 50 
Social Issues and Prof. Practice 
Systems Fundamentals 
Software Engineering 
Software Development Fundamentals 
Programming Languages 
Parallel and Distributed Computing 
Platform-Based Development 
Operating Systems 
Networking and Communication 
Intelligent Systems 
Information Management 
Inf. Assurance and Security 
Human-Computer Interaction 
Graphics and Visualization 
Discrete Structures 
Copmputational Science 
Architecture and Organization 
Software Construction 
Software Design 
Requirements Engineering 
Tools and Environments 
Joint Task Force on Computing Curricula, Association for Computing Software Project Machinery Management 
(ACM) and 
IEEE Computer Society. 2013. Computer Science Curricula 2013: Curriculum Guidelines for 
Undergraduate Degree Programs in Computer Science. ACM, New York, NY, USA. 
11 
Algorithms and Compexity 
Knowledge Areas in CS2013 
CoreTier1 CoreTier2 
0 1 2 3 4 5 6 7 8 9 
Software Processes 
CoreTier1 CoreTier2
Education: Typical Example 
Creating programs vs. testing programs in BME’s curriculum 
Semester Course Topics Testing 
1 Basics of Programming 1 Basics, C, debugger - 
2 Basics of Programming 2 OO, C++ (STL) - 
3 Basics of Programming 3 Java JUnit example (2 hours) 
3 Software Engineering V&V (2 hours) 
12 
… 
5+ (Elective or spec. courses) Testing fundamentals 
In other Hungarian universities similar situation, see: 
K. Balla et al. “The Software Testing Curriculum in the Hungarian Education in Conjuction with 
International Standards”. In: Informatika a felsőoktatásban 2011 konferencia , 2011. (In Hungarian)
Factors Affecting The Gap 
Education Tools
Tools: Test Generation Tools 
Model-based Testing Tools (17+13) Code-based Testing Tools (19+10) 
14 
http://mit.bme.hu/~micskeiz/pages/ 
modelbased_testing.html 
http://mit.bme.hu/~micskeiz/pages/ 
code_based_test_generation.html 
Several 
mature tools 
Mostly proto-types 
(except 
security testing)
Our Experiences with Code-based Tools 
Evaluating Test Generators 
 E.g. “Can it handle float numbers?” 
15 
Joint work with Lajos Cseppento 
Tool 1 
Tool 2 
Tool 3 
Tool 4
Our Experiences with Code-based Tools 
Helping industrial adoption 
 Tool for visualizing test generation problems 
16 
Joint work with David Honfi
Summary 
Factors affecting the gap: 
Education: Testing literacy of fresh graduates 
Tools: Maturing prototype tools 
Need: Do everyday testers need advanced tools and 
techniques and have time for them? 
17 
Gap?

More Related Content

What's hot

Software Testing Overview for Students
Software Testing Overview for StudentsSoftware Testing Overview for Students
Software Testing Overview for Studentskiranmalla
 
Comparative Analysis of Model Based Testing and Formal Based Testing - A Review
Comparative Analysis of Model Based Testing and Formal Based Testing - A ReviewComparative Analysis of Model Based Testing and Formal Based Testing - A Review
Comparative Analysis of Model Based Testing and Formal Based Testing - A Review
IJERA Editor
 
Identification, Analysis & Empirical Validation (IAV) of Object Oriented Desi...
Identification, Analysis & Empirical Validation (IAV) of Object Oriented Desi...Identification, Analysis & Empirical Validation (IAV) of Object Oriented Desi...
Identification, Analysis & Empirical Validation (IAV) of Object Oriented Desi...
rahulmonikasharma
 
Saner16b.ppt
Saner16b.pptSaner16b.ppt
An overview of automated test suites and defect density in Android
An overview of automated test suites and defect density in AndroidAn overview of automated test suites and defect density in Android
An overview of automated test suites and defect density in Android
Vahid Garousi
 
Software engineering ontology and software testing
Software engineering ontology and software testingSoftware engineering ontology and software testing
Software engineering ontology and software testing
Khushbu Patel
 
Clayton Reakes - Resume 12-30-15
Clayton Reakes - Resume 12-30-15Clayton Reakes - Resume 12-30-15
Clayton Reakes - Resume 12-30-15Clayton Reakes
 
Holistic Model-Based Testing for Business Information Systems
Holistic Model-Based Testing for Business Information SystemsHolistic Model-Based Testing for Business Information Systems
Holistic Model-Based Testing for Business Information Systems
Michael Mlynarski
 
ME2011 presentation by Mirandolle
ME2011 presentation by MirandolleME2011 presentation by Mirandolle
Synopsis ( Code Smells)
Synopsis ( Code Smells)Synopsis ( Code Smells)
Synopsis ( Code Smells)
DeepAnshu Sharma
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
ijfcst journal
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
ijfcst journal
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
ijfcst journal
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
ijfcst journal
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
ijfcst journal
 

What's hot (19)

Software Testing Overview for Students
Software Testing Overview for StudentsSoftware Testing Overview for Students
Software Testing Overview for Students
 
Comparative Analysis of Model Based Testing and Formal Based Testing - A Review
Comparative Analysis of Model Based Testing and Formal Based Testing - A ReviewComparative Analysis of Model Based Testing and Formal Based Testing - A Review
Comparative Analysis of Model Based Testing and Formal Based Testing - A Review
 
Identification, Analysis & Empirical Validation (IAV) of Object Oriented Desi...
Identification, Analysis & Empirical Validation (IAV) of Object Oriented Desi...Identification, Analysis & Empirical Validation (IAV) of Object Oriented Desi...
Identification, Analysis & Empirical Validation (IAV) of Object Oriented Desi...
 
CV
CVCV
CV
 
Saner16b.ppt
Saner16b.pptSaner16b.ppt
Saner16b.ppt
 
MBA_Project_Presentation
MBA_Project_PresentationMBA_Project_Presentation
MBA_Project_Presentation
 
Sandeep testing
Sandeep testingSandeep testing
Sandeep testing
 
An overview of automated test suites and defect density in Android
An overview of automated test suites and defect density in AndroidAn overview of automated test suites and defect density in Android
An overview of automated test suites and defect density in Android
 
CV_蒋巍_EN
CV_蒋巍_ENCV_蒋巍_EN
CV_蒋巍_EN
 
Software engineering ontology and software testing
Software engineering ontology and software testingSoftware engineering ontology and software testing
Software engineering ontology and software testing
 
Clayton Reakes - Resume 12-30-15
Clayton Reakes - Resume 12-30-15Clayton Reakes - Resume 12-30-15
Clayton Reakes - Resume 12-30-15
 
Holistic Model-Based Testing for Business Information Systems
Holistic Model-Based Testing for Business Information SystemsHolistic Model-Based Testing for Business Information Systems
Holistic Model-Based Testing for Business Information Systems
 
ME2011 presentation by Mirandolle
ME2011 presentation by MirandolleME2011 presentation by Mirandolle
ME2011 presentation by Mirandolle
 
Synopsis ( Code Smells)
Synopsis ( Code Smells)Synopsis ( Code Smells)
Synopsis ( Code Smells)
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
 
International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)International Journal of Software Engineering & Applications (IJSEA)
International Journal of Software Engineering & Applications (IJSEA)
 

Similar to The Gap Between Academic Research and Industrial Practice in Software Testing

Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
gerogepatton
 
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
gerogepatton
 
SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...
SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...
SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...
ijaia
 
Unit Testing Essay
Unit Testing EssayUnit Testing Essay
Unit Testing Essay
Dani Cox
 
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
IJECEIAES
 
Lecture 02 Software Management Renaissance.ppt
Lecture 02 Software Management Renaissance.pptLecture 02 Software Management Renaissance.ppt
Lecture 02 Software Management Renaissance.ppt
Getahuntigistu5
 
Software testing automation a comparative study on productivity rate of ope...
Software testing automation   a comparative study on productivity rate of ope...Software testing automation   a comparative study on productivity rate of ope...
Software testing automation a comparative study on productivity rate of ope...
Conference Papers
 
SE Syllabus gvp it.pdf
SE Syllabus gvp it.pdfSE Syllabus gvp it.pdf
SE Syllabus gvp it.pdf
MrsMChandraJyostna
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
Rizwan411667
 
International Journal of Soft Computing and Engineering (IJS
International Journal of Soft Computing and Engineering (IJSInternational Journal of Soft Computing and Engineering (IJS
International Journal of Soft Computing and Engineering (IJS
hildredzr1di
 
How Would Software Testing Change in the Future.docx.docx
How Would Software Testing Change in the Future.docx.docxHow Would Software Testing Change in the Future.docx.docx
How Would Software Testing Change in the Future.docx.docx
Sun Technologies
 
Application Quality Best Practices with VS2010
Application Quality Best Practices with VS2010Application Quality Best Practices with VS2010
Application Quality Best Practices with VS2010
adrian8three
 
Application Quality Best Practices with Visual Studio 2010 - Adrian Dunne
Application Quality Best Practices with Visual Studio 2010 - Adrian DunneApplication Quality Best Practices with Visual Studio 2010 - Adrian Dunne
Application Quality Best Practices with Visual Studio 2010 - Adrian DunneSpiffy
 
Automating The Process For Building Reliable Software
Automating The Process For Building Reliable SoftwareAutomating The Process For Building Reliable Software
Automating The Process For Building Reliable Software
guest8861ff
 
Embedded software validation best practices with NI and RQM
Embedded software validation best practices with NI and RQMEmbedded software validation best practices with NI and RQM
Embedded software validation best practices with NI and RQM
Paul Urban
 
Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...
Vahid Garousi
 
Creating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran KinsbrunerCreating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran Kinsbruner
QA or the Highway
 
Mi0033 software engineering...
Mi0033  software engineering...Mi0033  software engineering...
Mi0033 software engineering...smumbahelp
 

Similar to The Gap Between Academic Research and Industrial Practice in Software Testing (20)

Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
 
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
Software Testing: Issues and Challenges of Artificial Intelligence & Machine ...
 
SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...
SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...
SOFTWARE TESTING: ISSUES AND CHALLENGES OF ARTIFICIAL INTELLIGENCE & MACHINE ...
 
Unit Testing Essay
Unit Testing EssayUnit Testing Essay
Unit Testing Essay
 
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
Test Case Optimization and Redundancy Reduction Using GA and Neural Networks
 
Lecture 02 Software Management Renaissance.ppt
Lecture 02 Software Management Renaissance.pptLecture 02 Software Management Renaissance.ppt
Lecture 02 Software Management Renaissance.ppt
 
Software testing automation a comparative study on productivity rate of ope...
Software testing automation   a comparative study on productivity rate of ope...Software testing automation   a comparative study on productivity rate of ope...
Software testing automation a comparative study on productivity rate of ope...
 
SE Syllabus gvp it.pdf
SE Syllabus gvp it.pdfSE Syllabus gvp it.pdf
SE Syllabus gvp it.pdf
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
International Journal of Soft Computing and Engineering (IJS
International Journal of Soft Computing and Engineering (IJSInternational Journal of Soft Computing and Engineering (IJS
International Journal of Soft Computing and Engineering (IJS
 
How Would Software Testing Change in the Future.docx.docx
How Would Software Testing Change in the Future.docx.docxHow Would Software Testing Change in the Future.docx.docx
How Would Software Testing Change in the Future.docx.docx
 
Application Quality Best Practices with VS2010
Application Quality Best Practices with VS2010Application Quality Best Practices with VS2010
Application Quality Best Practices with VS2010
 
Application Quality Best Practices with Visual Studio 2010 - Adrian Dunne
Application Quality Best Practices with Visual Studio 2010 - Adrian DunneApplication Quality Best Practices with Visual Studio 2010 - Adrian Dunne
Application Quality Best Practices with Visual Studio 2010 - Adrian Dunne
 
Automating The Process For Building Reliable Software
Automating The Process For Building Reliable SoftwareAutomating The Process For Building Reliable Software
Automating The Process For Building Reliable Software
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Embedded software validation best practices with NI and RQM
Embedded software validation best practices with NI and RQMEmbedded software validation best practices with NI and RQM
Embedded software validation best practices with NI and RQM
 
Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...Test automation with the Gauge framework: Experience and best practices -- SE...
Test automation with the Gauge framework: Experience and best practices -- SE...
 
Creating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran KinsbrunerCreating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran Kinsbruner
 
Mi0033 software engineering...
Mi0033  software engineering...Mi0033  software engineering...
Mi0033 software engineering...
 

More from Zoltan Micskei

Model-based Regression Testing of Autonomous Robots
Model-based Regression Testing of Autonomous RobotsModel-based Regression Testing of Autonomous Robots
Model-based Regression Testing of Autonomous Robots
Zoltan Micskei
 
Modell alapú tesztelés: célok és lehetőségek
Modell alapú tesztelés: célok és lehetőségekModell alapú tesztelés: célok és lehetőségek
Modell alapú tesztelés: célok és lehetőségek
Zoltan Micskei
 
Evaluating code-based test-generator tools
Evaluating code-based test-generator toolsEvaluating code-based test-generator tools
Evaluating code-based test-generator tools
Zoltan Micskei
 
Egységtesztek automatikus generálása forráskódból
Egységtesztek automatikus generálása forráskódbólEgységtesztek automatikus generálása forráskódból
Egységtesztek automatikus generálása forráskódból
Zoltan Micskei
 
Comparing robustness of AIS-based middleware implementations
Comparing robustness of AIS-based middleware implementationsComparing robustness of AIS-based middleware implementations
Comparing robustness of AIS-based middleware implementations
Zoltan Micskei
 
Languages and frameworks for specifying test artifacts
Languages and frameworks for specifying test artifactsLanguages and frameworks for specifying test artifacts
Languages and frameworks for specifying test artifacts
Zoltan Micskei
 

More from Zoltan Micskei (6)

Model-based Regression Testing of Autonomous Robots
Model-based Regression Testing of Autonomous RobotsModel-based Regression Testing of Autonomous Robots
Model-based Regression Testing of Autonomous Robots
 
Modell alapú tesztelés: célok és lehetőségek
Modell alapú tesztelés: célok és lehetőségekModell alapú tesztelés: célok és lehetőségek
Modell alapú tesztelés: célok és lehetőségek
 
Evaluating code-based test-generator tools
Evaluating code-based test-generator toolsEvaluating code-based test-generator tools
Evaluating code-based test-generator tools
 
Egységtesztek automatikus generálása forráskódból
Egységtesztek automatikus generálása forráskódbólEgységtesztek automatikus generálása forráskódból
Egységtesztek automatikus generálása forráskódból
 
Comparing robustness of AIS-based middleware implementations
Comparing robustness of AIS-based middleware implementationsComparing robustness of AIS-based middleware implementations
Comparing robustness of AIS-based middleware implementations
 
Languages and frameworks for specifying test artifacts
Languages and frameworks for specifying test artifactsLanguages and frameworks for specifying test artifacts
Languages and frameworks for specifying test artifacts
 

Recently uploaded

Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
Drona Infotech
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 

Recently uploaded (20)

Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
Mobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona InfotechMobile App Development Company In Noida | Drona Infotech
Mobile App Development Company In Noida | Drona Infotech
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 

The Gap Between Academic Research and Industrial Practice in Software Testing

  • 1. Hungarian Software Testing Forum (HUSTEF 2014) The Gap Between Academic Research and Industrial Practice in Software Testing Budapest University of Technology and Economics Department of Measurement and Information Systems Zoltan Micskei assistant professor
  • 2. The Gap: Examples “Automatic testing” Academia Industry 2 —> automatic test case generation —> automatic test execution
  • 3. The Gap: Examples “Code coverage” Academia Industry 3 —> “We defined the new <obscure> metric.. ” —> “Nice, we reached 80% <statement> coverage.”
  • 5. (Some) Recent Papers in Academia Coverage Is Not Strongly Correlated with Test Suite Effectiveness An improved Pareto distribution for modelling the fault data of open source software Automatic test case generation from Simulink Stateflow models using model checking Adding Contextual Guidance to the Automated Search for Probabilistic Test Profiles Lookahead-Based Approaches for Minimizing Adaptive Distinguishing Sequences Design and industrial evaluation of a tool supporting semi-automated website testing Using Test Case Reduction and Prioritization to Improve Symbolic Execution Minimum Number of Test Paths for Prime Path and Other Structural Coverage Criteria Search-Based Testing for Embedded Telecom Software with Complex Input Structures Characterizing and Detecting Performance Bugs for Smartphone Applications 5 Enhancing Symbolic Execution with Veritesting Analysis and testing of black-box component-based systems by inferring partial models A Hitchhiker's guide to statistical tests for assessing randomized algorithms in software engineering Sample from ~130 papers from 7 conferences
  • 6. Topics in Academia 6 Test case/input generation Test optimization and prioritization Empirical evaluations
  • 7. (Some) Recent Talks in Industry Top Challenges in Testing Requirements How to Stress Test Your Mobile App Internationalization and Localization Testing Calculating the Cost of non-quality Breaking the Matrix - Android Testing at Scale Wisdom of Crowds in Software Testing Risk-Based Testing for Agile Projects Challenges and Solutions in Global Requirements Engineering 7 Web Performance Testing with WebDriver Key Test Design Techniques Appium: Automation for Mobile Apps Espresso: Fresh Start to Android UI Testing Designing for Testability: Differentiator in a Competitive Market Sample from ~80 papers from 5 conferences
  • 8. Topics in Academia and Industry 8 Test management Test automation (tools, technologies) Test design techniques Test case/input generation Test optimization and prioritization Empirical evaluations
  • 10. Factors Affecting The Gap Education Tools
  • 11. Education: ACM/IEEE Comp. Sci. Curricula Software Engineering Knowledge Area Formal Methods Software Reliability Software Evolution Software Verification Validation 0 5 10 15 20 25 30 35 40 45 50 Social Issues and Prof. Practice Systems Fundamentals Software Engineering Software Development Fundamentals Programming Languages Parallel and Distributed Computing Platform-Based Development Operating Systems Networking and Communication Intelligent Systems Information Management Inf. Assurance and Security Human-Computer Interaction Graphics and Visualization Discrete Structures Copmputational Science Architecture and Organization Software Construction Software Design Requirements Engineering Tools and Environments Joint Task Force on Computing Curricula, Association for Computing Software Project Machinery Management (ACM) and IEEE Computer Society. 2013. Computer Science Curricula 2013: Curriculum Guidelines for Undergraduate Degree Programs in Computer Science. ACM, New York, NY, USA. 11 Algorithms and Compexity Knowledge Areas in CS2013 CoreTier1 CoreTier2 0 1 2 3 4 5 6 7 8 9 Software Processes CoreTier1 CoreTier2
  • 12. Education: Typical Example Creating programs vs. testing programs in BME’s curriculum Semester Course Topics Testing 1 Basics of Programming 1 Basics, C, debugger - 2 Basics of Programming 2 OO, C++ (STL) - 3 Basics of Programming 3 Java JUnit example (2 hours) 3 Software Engineering V&V (2 hours) 12 … 5+ (Elective or spec. courses) Testing fundamentals In other Hungarian universities similar situation, see: K. Balla et al. “The Software Testing Curriculum in the Hungarian Education in Conjuction with International Standards”. In: Informatika a felsőoktatásban 2011 konferencia , 2011. (In Hungarian)
  • 13. Factors Affecting The Gap Education Tools
  • 14. Tools: Test Generation Tools Model-based Testing Tools (17+13) Code-based Testing Tools (19+10) 14 http://mit.bme.hu/~micskeiz/pages/ modelbased_testing.html http://mit.bme.hu/~micskeiz/pages/ code_based_test_generation.html Several mature tools Mostly proto-types (except security testing)
  • 15. Our Experiences with Code-based Tools Evaluating Test Generators  E.g. “Can it handle float numbers?” 15 Joint work with Lajos Cseppento Tool 1 Tool 2 Tool 3 Tool 4
  • 16. Our Experiences with Code-based Tools Helping industrial adoption  Tool for visualizing test generation problems 16 Joint work with David Honfi
  • 17. Summary Factors affecting the gap: Education: Testing literacy of fresh graduates Tools: Maturing prototype tools Need: Do everyday testers need advanced tools and techniques and have time for them? 17 Gap?

Editor's Notes

  1. Summary: In software engineering, there is always a gap between the current research topics and the everyday industrial practice. However, in my experience this gap is much wider in software testing, e.g. advanced testing techniques seldom reach everyday testers. This gap can be attributed to several factors, the talk will highlight education and tools from the possible causes. In order to illustrate this gap the talk will collect and compere the topics of recent academic and industrial testing related conferences. My goal is to offer a glimpse into recent software testing research topics to practitioners, and start a discussion whether there is really a wide gap between academy and industry.
  2. For example, fully automatic test case generation is an everlasting topic in academic conferences decades ago, in industrial conferences automatic testing usually means automatic test execution (and not generation).
  3. Research on code coverage usually involves creating a new, even more complex metric, while many real life project use only the most basic metric, statement coverage. (There are specific application domains, like safety-critical embedded systems or mission-critical telecommunication services, where the gap is much narrower, but these are usually the exceptions and not the majority in testing practices.)
  4. List of collected papers can be downloaded from: http://mit.bme.hu/~micskeiz/papers/hustef-2014/ Paper/talk titles collected from: Software Testing, Verification and Reliability (STVR journal) IEEE International Conference on Software Testing, Verification and Validation (ICST) 2014 International Symposium on Software Testing and Analysis (ISSTA) 2014 26th IFIP International Conference on Testing Software and Systems (ICTSS) 2014 Workshop on Model-Based Testing (MBT) 2014 Workshop on Advances in Model Based Testing (A-MOST) 2014
  5. Papers/talk titles collected from: Google Test Automation Conference (GTAC) 2013 Testing Experience (TE magazine) Software Testing Analysis & Review (STAREAST, STARWEST) Software Quality Days EuroSTAR Software Testing Conference
  6. This gap can be attributed to several factors, I will highlight education and tools from the possible causes
  7. The “Computer Science Curricula 2013” is a guideline by ACM and IEEE for undergraduate programs in computing. The body of knowledge is organized into Knowledge Areas, which are divided into Knowledge Units, which contain topics. The topics are identified as Core Tier-1 (a curriculum should include all topics), Core Tier-2 (a curriculum should aim to cover 80-90%), or Elective. Each KU has recommended Tier-1 and Tier-2 “course hours” (illustrated on the above diagrams), which shows the relative weight of the topics in the given KU. Software testing is mentioned in Software Development Fundamentals/Development Methods, but hours are really allocated to it only in Software Engineering/Software Verification and Validation.
  8. Software testing is rarely taught as a compulsory subject at the Bachelor level, thus fresh graduates need to learn later even the basic test techniques. As a consequence professional testing courses could include mostly the basic methods (although the new ISTQB model based testing add-on is a refreshing exception).
  9. I maintain a list of (model and code-based) automatic test generation tools on my webpage since 2010. Currently the list includes 17 active + 13 archive model-based and 19 active + 10 archive code-based test generation tools (the lists are not complete). Thus, there is no shortage in tools! Tools come and go: most of the research prototypes are abandoned after a couple of years, then new ones appear. However, in the recent years more and more commercial MBT tools emerged.
  10. Framework for evaluating code-based generators Creating 300 code snippets representing important programming language concepts and features Detailed feedback per tool (e.g. “Can the tool generate tests for a program containing float numbers?”) Results: weak spots of each tool
  11. We collaborated with an industrial partner to apply a code-based generator on their code. Lessons learnt from the case studies: Even an advanced tool is of little use without solid testing fundamentals (e.g. highly coupled, non-testable code) With complex code it is not obvious why test generation was not successful Thus we created a prototype tool to visualize test generation and identify problems: not isolated code, unbounded loops…