SlideShare a Scribd company logo
1 of 29
Mining Testing Questions on
Stack Overflow
Pavneet Singh Kochhar
Singapore Management University
kochharps.2012@smu.edu.sg
Fifth International Workshop on Software Mining
Software Testing, Why Bother?
Functionality -- Requirements
Bugs -- Software reliability
Costs -- Late bugs cost more
Software Testing, Why Bother?
• Horgan and Mathur [1]
– Adequate testing is critical to develop reliable
software
• Tassey [2]
– Inadequate testing cost US economy 59
billion dollars annually
[1] J.R. Horgan and A.P. Mathur, “Software testing and reliability.”
McGraw-Hill, Inc., 1996.
[2] G. Tassey, “The economic impacts of inadequate infrastructure for
software testing,” National Institute of Standards and Technology, 2002.
Related Work
• Mining Questions asked by Web
Developers [1]
– 3 topics – JavaScript, HTML5, CSS
– Categories of discussions & hot topics.
– Temporal trends
– Prevalence in mobile-related discussions
– Challenges faced by web developers
[1] Bajaj et al. , “Mining Questions asked by Web Developers.”, MSR 2014.
Study Goals
To study common challenges and important
topics of discussion.
What are the questions asked by
developers about testing?
6
• Question Answering community
• 10 million questions; 4 million users
• Posts are related to:
• programming problem, software algorithm,
tools
• Share knowledge
• Seek expert advice
Stack Overflow
Dataset
Dataset
• Collect all the questions Jan ‘09 – Dec ’14
• Filter out questions with tag “test”
• Tags are predefined on Stack Overflow
e.g., unit-testing, testing, automated-tests.
Number of
Questions
Number of
Askers
38,289 25,292
Research Questions
Research Questions
RQ1: What are the categories of topics of testing
related discussion?
RQ2: What are the hot topics related to software
testing in terms of importance?
RQ3: Are there temporal trends present in
discussions related to software testing?
RQ4: How prevalent are testing-related topics in
discussions related to mobile web development?
RQ5: What are the main technical challenges related
to testing?
Methodology &
Empirical Results
RQ1: Topics of Discussion
12
Dataset
Filter questions with “test” in tags
Extract question &
accepted answer
LDA
Categories
Stop word removal & stemming
RQ1: Topics of Discussion
13
Topic Words
Test Framework test unit run suit integr
Database databas db creat db delet
Client Server request server respons client http
Login user password login usernam
Threads run start thread process call
Forms button window form click element
Image Processing imag png imgur path
RQ2: Hot Topics of Discussion
14
Dataset
Filter questions with “test” in tags
Extract accepted
answer
LDA
Categories
Stop word removal & stemming
Top 2000 sorted by view count
RQ2: Hot Topics of Discussion
15
Hot Topics
Test Framework
Database
Client Server
RQ3: Temporal Trends
16
Dataset
Filter questions with “test” in tags
Jan-Jun ‘09
LDA
Categories
Stop word removal & stemming
Partition Dataset
Jul-Dec ‘14
RQ3: Temporal Trends
17
0
0.02
0.04
0.06
0.08
0.1
0.12
0.14
CategoryShare
Database Client Server Test Framework
RQ4: Mobile Development
18
Dataset
Filter questions with “test” in tags
Extract question &
accepted answer
LDA
Categories
Stop word removal & stemming
Filter by mobile tags –
android, iphone, ios etc.
RQ4: Mobile Development
19
0
0.02
0.04
0.06
0.08
0.1
0.12
Percentage(%)
RQ5: Technical Challenges
20
Dataset
Filter questions with “test” in tags
Filter top 50 questions
Qualitative Analysis
Ranking based on formula
AMSi= 3Ui − 25Di + 10Ci + Ai + Fi
where Ui= number of users who upvoted, Di = users who downvoted, Ci =
number of comments, Ai = number of answers, Fi = favorite count
RQ5: Technical Challenges
• App Testing
“How to emulate GPS location in the Android
Emulator? I want to get longitude and latitude in
Android emulator for testing.”
Answer – Connecting to the emulator via Telnet
telnet localhost 5554
geo fix <longitude value> <latitude value>
RQ5: Technical Challenges
• Test Framework
“NUnit vs. MbUnit vs. MSTest vs. xUnit.net... I am
to choose the best one for us. But how? Does it
matter? Which one is most future proof? Should I
care about the features?”
• Best Practices
“I was wondering what the best practice is for unit
testing abstract classes and classes that extend
abstract classes.”
RQ5: Technical Challenges
• Database
“What strategies have you used for testing
database-driven applications, if any? What has
worked the best for you?”
• Web Testing
“what’s the best way to replicate a large load on an
asp.net web application? Is there an easy way to
simulate many requests on particular pages?
Conclusion
• Discussion Categories: test framework,
database, client server, threads, forms etc.
• Hot Topics: test framework, database, client
server.
• Hot topics have been consistently discussed
from Jan ‘09 – Dec ‘14.
• Mobile related discussions have increased in
testing questions.
• Users often post questions related to app
testing, test framework, best practices and
testing database-driven applications.
Future Work
• Expand the study to other Community Question
Answering websites.
• Survey developers to get an in-depth
understanding of challenges faced by
developers.
Thank you!
Questions? Comments? Advice?
Pavneet Singh
kochharps.2012@smu.edu.sg
Outline
• Motivation and Goals
• Overall Process
• Dataset
• Empirical Results
• Conclusion and Future Work
Threats to Validity
• Internal validity:
– We link bug reports to commits using bug ids
– We use Randoop for 5 minutes
• External validity:
– Only analyze 2 large software systems
• Construct validity:
– We use point biserial correlation
28
Related Work
• Empirical study on testing and coverage
– Gligoric et al. show that branch coverage is the
best measure for test suite quality[1]
– Namin et al. show that test suite size and
coverage is correlated with test suite
effectiveness [2]
– Gopinath et al. investigate the correlation
between coverage and a test suite’s
effectiveness in killing mutants [3]
29
[1] M. Gligoric, A. Groce, C. Zhang, R. Sharma, M. A. Alipour, and D. Marinov. Comparing non-adequate
test suites using coverage criteria, ISSTA, 2013.
[2] A. S. Namin and J. H. Andrews. The influence of size and coverage on test suite effectiveness, ISSTA, 2009.
[3] R Gopinath, C. Jensen, and A. Groce, Code coverage for suite evaluation for developers, ICSE, 2014.

More Related Content

Similar to Mining Testing Questions on Stack Overflow (STO

Focused Question and Answer for Job Portal
Focused Question and Answer for Job PortalFocused Question and Answer for Job Portal
Focused Question and Answer for Job PortalIRJET Journal
 
Shashank_Shetkar_CV TESTING
Shashank_Shetkar_CV TESTINGShashank_Shetkar_CV TESTING
Shashank_Shetkar_CV TESTINGShashank Shetkar
 
Capstone Presentation 2015 - Quality+
Capstone Presentation 2015 - Quality+Capstone Presentation 2015 - Quality+
Capstone Presentation 2015 - Quality+Eric M. Pastore
 
Uncovering Emerging Information Trends in Information Technology
Uncovering Emerging Information Trends in Information TechnologyUncovering Emerging Information Trends in Information Technology
Uncovering Emerging Information Trends in Information TechnologyEric M. Pastore
 
Akshay_salvi_Resume (1)
Akshay_salvi_Resume (1)Akshay_salvi_Resume (1)
Akshay_salvi_Resume (1)Akshay Salvi
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQASymphony
 
Android quiz application
Android quiz applicationAndroid quiz application
Android quiz applicationMOHDAHMED52
 
Aniruddha_Mukherjee_CV_June_2016
Aniruddha_Mukherjee_CV_June_2016Aniruddha_Mukherjee_CV_June_2016
Aniruddha_Mukherjee_CV_June_2016Aniruddha Mukherjee
 
Vipin qa engineer-3.5+years_exp
Vipin qa engineer-3.5+years_expVipin qa engineer-3.5+years_exp
Vipin qa engineer-3.5+years_expVipin Gupta
 
Software engineering practices and software quality empirical research results
Software engineering practices and software quality empirical research resultsSoftware engineering practices and software quality empirical research results
Software engineering practices and software quality empirical research resultsNikolai Avteniev
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentNeotys
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentDynatrace
 
The other side of elegant websites
The other side of elegant websitesThe other side of elegant websites
The other side of elegant websitesAnwar Malgave
 
Shriraam-performance test engineer 5.4 years
Shriraam-performance test engineer 5.4 yearsShriraam-performance test engineer 5.4 years
Shriraam-performance test engineer 5.4 yearsshriraam ms
 

Similar to Mining Testing Questions on Stack Overflow (STO (20)

Focused Question and Answer for Job Portal
Focused Question and Answer for Job PortalFocused Question and Answer for Job Portal
Focused Question and Answer for Job Portal
 
Shashank_Shetkar_CV TESTING
Shashank_Shetkar_CV TESTINGShashank_Shetkar_CV TESTING
Shashank_Shetkar_CV TESTING
 
Capstone Presentation 2015 - Quality+
Capstone Presentation 2015 - Quality+Capstone Presentation 2015 - Quality+
Capstone Presentation 2015 - Quality+
 
Uncovering Emerging Information Trends in Information Technology
Uncovering Emerging Information Trends in Information TechnologyUncovering Emerging Information Trends in Information Technology
Uncovering Emerging Information Trends in Information Technology
 
Akshay_salvi_Resume (1)
Akshay_salvi_Resume (1)Akshay_salvi_Resume (1)
Akshay_salvi_Resume (1)
 
Quality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the EnterpriseQuality Jam: BDD, TDD and ATDD for the Enterprise
Quality Jam: BDD, TDD and ATDD for the Enterprise
 
Aniruddha_Mukherjee_Jan_2015
Aniruddha_Mukherjee_Jan_2015Aniruddha_Mukherjee_Jan_2015
Aniruddha_Mukherjee_Jan_2015
 
Android quiz application
Android quiz applicationAndroid quiz application
Android quiz application
 
Aniruddha_Mukherjee_CV_June_2016
Aniruddha_Mukherjee_CV_June_2016Aniruddha_Mukherjee_CV_June_2016
Aniruddha_Mukherjee_CV_June_2016
 
Cnpm bkdn
Cnpm bkdnCnpm bkdn
Cnpm bkdn
 
Vipin qa engineer-3.5+years_exp
Vipin qa engineer-3.5+years_expVipin qa engineer-3.5+years_exp
Vipin qa engineer-3.5+years_exp
 
Software engineering practices and software quality empirical research results
Software engineering practices and software quality empirical research resultsSoftware engineering practices and software quality empirical research results
Software engineering practices and software quality empirical research results
 
Week_02.pptx
Week_02.pptxWeek_02.pptx
Week_02.pptx
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile Development
 
Continuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile DevelopmentContinuous Performance Testing and Monitoring in Agile Development
Continuous Performance Testing and Monitoring in Agile Development
 
The other side of elegant websites
The other side of elegant websitesThe other side of elegant websites
The other side of elegant websites
 
TestOps and Shift Left
TestOps and Shift LeftTestOps and Shift Left
TestOps and Shift Left
 
Updated resume
Updated resumeUpdated resume
Updated resume
 
Shriraam-performance test engineer 5.4 years
Shriraam-performance test engineer 5.4 yearsShriraam-performance test engineer 5.4 years
Shriraam-performance test engineer 5.4 years
 

More from Pavneet Singh Kochhar

An Exploratory Study of Functionality and Learning Resources of WebAPIs on Pr...
An Exploratory Study of Functionality and Learning Resources of WebAPIs on Pr...An Exploratory Study of Functionality and Learning Resources of WebAPIs on Pr...
An Exploratory Study of Functionality and Learning Resources of WebAPIs on Pr...Pavneet Singh Kochhar
 
Revisiting Assert Use in GitHub Projects
Revisiting Assert Use in GitHub ProjectsRevisiting Assert Use in GitHub Projects
Revisiting Assert Use in GitHub ProjectsPavneet Singh Kochhar
 
Practitioners’ Expectations on Automated Fault Localization
Practitioners’ Expectations on Automated Fault LocalizationPractitioners’ Expectations on Automated Fault Localization
Practitioners’ Expectations on Automated Fault LocalizationPavneet Singh Kochhar
 
A Large Scale Study of Multiple Programming Languages and Code Quality
A Large Scale Study of Multiple Programming Languages and Code QualityA Large Scale Study of Multiple Programming Languages and Code Quality
A Large Scale Study of Multiple Programming Languages and Code QualityPavneet Singh Kochhar
 
Adoption of Software Testing in Open Source Projects - A Preliminary Study on...
Adoption of Software Testing in Open Source Projects - A Preliminary Study on...Adoption of Software Testing in Open Source Projects - A Preliminary Study on...
Adoption of Software Testing in Open Source Projects - A Preliminary Study on...Pavneet Singh Kochhar
 
Understanding the Test Automation Culture of App Developers
Understanding the Test Automation Culture of App DevelopersUnderstanding the Test Automation Culture of App Developers
Understanding the Test Automation Culture of App DevelopersPavneet Singh Kochhar
 
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...Pavneet Singh Kochhar
 
An Empirical Study on the Adequacy of Testing in Open Source Projects
An Empirical Study on the Adequacy of Testing in Open Source ProjectsAn Empirical Study on the Adequacy of Testing in Open Source Projects
An Empirical Study on the Adequacy of Testing in Open Source ProjectsPavneet Singh Kochhar
 
Potential Biases in Bug Localization: Do They Matter?
Potential Biases in Bug Localization: Do They Matter?Potential Biases in Bug Localization: Do They Matter?
Potential Biases in Bug Localization: Do They Matter?Pavneet Singh Kochhar
 
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?Pavneet Singh Kochhar
 
Automatic Fine-Grained Issue Report Reclassification
Automatic Fine-Grained Issue Report ReclassificationAutomatic Fine-Grained Issue Report Reclassification
Automatic Fine-Grained Issue Report ReclassificationPavneet Singh Kochhar
 
An Empirical Study of Adoption of Software Testing in Open Source Projects
An Empirical Study of Adoption of Software Testing in Open Source ProjectsAn Empirical Study of Adoption of Software Testing in Open Source Projects
An Empirical Study of Adoption of Software Testing in Open Source ProjectsPavneet Singh Kochhar
 

More from Pavneet Singh Kochhar (13)

Cataloging GitHub Repositories
Cataloging GitHub RepositoriesCataloging GitHub Repositories
Cataloging GitHub Repositories
 
An Exploratory Study of Functionality and Learning Resources of WebAPIs on Pr...
An Exploratory Study of Functionality and Learning Resources of WebAPIs on Pr...An Exploratory Study of Functionality and Learning Resources of WebAPIs on Pr...
An Exploratory Study of Functionality and Learning Resources of WebAPIs on Pr...
 
Revisiting Assert Use in GitHub Projects
Revisiting Assert Use in GitHub ProjectsRevisiting Assert Use in GitHub Projects
Revisiting Assert Use in GitHub Projects
 
Practitioners’ Expectations on Automated Fault Localization
Practitioners’ Expectations on Automated Fault LocalizationPractitioners’ Expectations on Automated Fault Localization
Practitioners’ Expectations on Automated Fault Localization
 
A Large Scale Study of Multiple Programming Languages and Code Quality
A Large Scale Study of Multiple Programming Languages and Code QualityA Large Scale Study of Multiple Programming Languages and Code Quality
A Large Scale Study of Multiple Programming Languages and Code Quality
 
Adoption of Software Testing in Open Source Projects - A Preliminary Study on...
Adoption of Software Testing in Open Source Projects - A Preliminary Study on...Adoption of Software Testing in Open Source Projects - A Preliminary Study on...
Adoption of Software Testing in Open Source Projects - A Preliminary Study on...
 
Understanding the Test Automation Culture of App Developers
Understanding the Test Automation Culture of App DevelopersUnderstanding the Test Automation Culture of App Developers
Understanding the Test Automation Culture of App Developers
 
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
Code Coverage and Test Suite Effectiveness: Empirical Study with Real Bugs in...
 
An Empirical Study on the Adequacy of Testing in Open Source Projects
An Empirical Study on the Adequacy of Testing in Open Source ProjectsAn Empirical Study on the Adequacy of Testing in Open Source Projects
An Empirical Study on the Adequacy of Testing in Open Source Projects
 
Potential Biases in Bug Localization: Do They Matter?
Potential Biases in Bug Localization: Do They Matter?Potential Biases in Bug Localization: Do They Matter?
Potential Biases in Bug Localization: Do They Matter?
 
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?It’s Not a Bug, It’s a Feature:Does Misclassification Affect Bug Localization?
It’s Not a Bug, It’s a Feature: Does Misclassification Affect Bug Localization?
 
Automatic Fine-Grained Issue Report Reclassification
Automatic Fine-Grained Issue Report ReclassificationAutomatic Fine-Grained Issue Report Reclassification
Automatic Fine-Grained Issue Report Reclassification
 
An Empirical Study of Adoption of Software Testing in Open Source Projects
An Empirical Study of Adoption of Software Testing in Open Source ProjectsAn Empirical Study of Adoption of Software Testing in Open Source Projects
An Empirical Study of Adoption of Software Testing in Open Source Projects
 

Recently uploaded

Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
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
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 

Recently uploaded (20)

Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
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
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 

Mining Testing Questions on Stack Overflow (STO

  • 1. Mining Testing Questions on Stack Overflow Pavneet Singh Kochhar Singapore Management University kochharps.2012@smu.edu.sg Fifth International Workshop on Software Mining
  • 2. Software Testing, Why Bother? Functionality -- Requirements Bugs -- Software reliability Costs -- Late bugs cost more
  • 3. Software Testing, Why Bother? • Horgan and Mathur [1] – Adequate testing is critical to develop reliable software • Tassey [2] – Inadequate testing cost US economy 59 billion dollars annually [1] J.R. Horgan and A.P. Mathur, “Software testing and reliability.” McGraw-Hill, Inc., 1996. [2] G. Tassey, “The economic impacts of inadequate infrastructure for software testing,” National Institute of Standards and Technology, 2002.
  • 4. Related Work • Mining Questions asked by Web Developers [1] – 3 topics – JavaScript, HTML5, CSS – Categories of discussions & hot topics. – Temporal trends – Prevalence in mobile-related discussions – Challenges faced by web developers [1] Bajaj et al. , “Mining Questions asked by Web Developers.”, MSR 2014.
  • 5. Study Goals To study common challenges and important topics of discussion. What are the questions asked by developers about testing?
  • 6. 6 • Question Answering community • 10 million questions; 4 million users • Posts are related to: • programming problem, software algorithm, tools • Share knowledge • Seek expert advice Stack Overflow
  • 8. Dataset • Collect all the questions Jan ‘09 – Dec ’14 • Filter out questions with tag “test” • Tags are predefined on Stack Overflow e.g., unit-testing, testing, automated-tests. Number of Questions Number of Askers 38,289 25,292
  • 10. Research Questions RQ1: What are the categories of topics of testing related discussion? RQ2: What are the hot topics related to software testing in terms of importance? RQ3: Are there temporal trends present in discussions related to software testing? RQ4: How prevalent are testing-related topics in discussions related to mobile web development? RQ5: What are the main technical challenges related to testing?
  • 12. RQ1: Topics of Discussion 12 Dataset Filter questions with “test” in tags Extract question & accepted answer LDA Categories Stop word removal & stemming
  • 13. RQ1: Topics of Discussion 13 Topic Words Test Framework test unit run suit integr Database databas db creat db delet Client Server request server respons client http Login user password login usernam Threads run start thread process call Forms button window form click element Image Processing imag png imgur path
  • 14. RQ2: Hot Topics of Discussion 14 Dataset Filter questions with “test” in tags Extract accepted answer LDA Categories Stop word removal & stemming Top 2000 sorted by view count
  • 15. RQ2: Hot Topics of Discussion 15 Hot Topics Test Framework Database Client Server
  • 16. RQ3: Temporal Trends 16 Dataset Filter questions with “test” in tags Jan-Jun ‘09 LDA Categories Stop word removal & stemming Partition Dataset Jul-Dec ‘14
  • 18. RQ4: Mobile Development 18 Dataset Filter questions with “test” in tags Extract question & accepted answer LDA Categories Stop word removal & stemming Filter by mobile tags – android, iphone, ios etc.
  • 20. RQ5: Technical Challenges 20 Dataset Filter questions with “test” in tags Filter top 50 questions Qualitative Analysis Ranking based on formula AMSi= 3Ui − 25Di + 10Ci + Ai + Fi where Ui= number of users who upvoted, Di = users who downvoted, Ci = number of comments, Ai = number of answers, Fi = favorite count
  • 21. RQ5: Technical Challenges • App Testing “How to emulate GPS location in the Android Emulator? I want to get longitude and latitude in Android emulator for testing.” Answer – Connecting to the emulator via Telnet telnet localhost 5554 geo fix <longitude value> <latitude value>
  • 22. RQ5: Technical Challenges • Test Framework “NUnit vs. MbUnit vs. MSTest vs. xUnit.net... I am to choose the best one for us. But how? Does it matter? Which one is most future proof? Should I care about the features?” • Best Practices “I was wondering what the best practice is for unit testing abstract classes and classes that extend abstract classes.”
  • 23. RQ5: Technical Challenges • Database “What strategies have you used for testing database-driven applications, if any? What has worked the best for you?” • Web Testing “what’s the best way to replicate a large load on an asp.net web application? Is there an easy way to simulate many requests on particular pages?
  • 24. Conclusion • Discussion Categories: test framework, database, client server, threads, forms etc. • Hot Topics: test framework, database, client server. • Hot topics have been consistently discussed from Jan ‘09 – Dec ‘14. • Mobile related discussions have increased in testing questions. • Users often post questions related to app testing, test framework, best practices and testing database-driven applications.
  • 25. Future Work • Expand the study to other Community Question Answering websites. • Survey developers to get an in-depth understanding of challenges faced by developers.
  • 26. Thank you! Questions? Comments? Advice? Pavneet Singh kochharps.2012@smu.edu.sg
  • 27. Outline • Motivation and Goals • Overall Process • Dataset • Empirical Results • Conclusion and Future Work
  • 28. Threats to Validity • Internal validity: – We link bug reports to commits using bug ids – We use Randoop for 5 minutes • External validity: – Only analyze 2 large software systems • Construct validity: – We use point biserial correlation 28
  • 29. Related Work • Empirical study on testing and coverage – Gligoric et al. show that branch coverage is the best measure for test suite quality[1] – Namin et al. show that test suite size and coverage is correlated with test suite effectiveness [2] – Gopinath et al. investigate the correlation between coverage and a test suite’s effectiveness in killing mutants [3] 29 [1] M. Gligoric, A. Groce, C. Zhang, R. Sharma, M. A. Alipour, and D. Marinov. Comparing non-adequate test suites using coverage criteria, ISSTA, 2013. [2] A. S. Namin and J. H. Andrews. The influence of size and coverage on test suite effectiveness, ISSTA, 2009. [3] R Gopinath, C. Jensen, and A. Groce, Code coverage for suite evaluation for developers, ICSE, 2014.