SlideShare a Scribd company logo
1 of 48
1
An Exploration of Errors in Web-
based Applications in the Context
of Web-based Application Testing
PhD Proposal
Kinga Dobolyi
May 2009
2
The shopping cart
3
The shopping cart
4
The shopping cart
5
What is going on
• Problem: faults in web-based applications
cause losses of revenue, and they are hard to
test
• Approach: study errors in web-based
applications in the context of web testing
• Solution: improve the state of the art in web
testing techniques through guidelines targeted at
high severity faults and automation and
precision in regression testing
6
Outline
• Introduction and motivation
• Thesis statement
• Background
• Goals and approaches
• Preliminary work
• Expected contributions
7
Motivation
• Testing of web-based applications in
particular deserves further examination
due to economic considerations:
– Monetary throughput: Backbone of e-
commerce and communications businesses
– Customers: low customer loyalty
– Development: Companies are choosing not to
test due to resource constraints
8
Motivation: e-commerce
• Internet usage: 73% of people in the US in 2008
– Browsers are dominant application
– $204 billion in Internet retail sales annually
• Global online B2B transactions total several
$trillions annually
• One hour of downtime at Amazon.com cost $1.5
million dollars
• 70% of major online sites exhibit user-visible
failures
9
Motivation: customers
• Customer loyalty is notoriously low
– Determined by the usability of the application
[Offutt 2002]
– Freedom and options
10
Motivation: customers
• Lesson learned: web-based applications
need to be well-designed and well tested
• Are they?
11
Motivation: development
• Technology
challenges:
– Heterogeneous, opaque
components
– Dynamic page content generation
– Persistent state operated upon by
concurrent, global users around the clock
12
Motivation: development
• Web-based applications are often not
tested
– Enormous pressure to change
• Short delivery times, high developer turnover rates,
and quickly evolving user needs
– No formal process model
13
Motivation: summary
• Problem: faults in web-based applications
cause losses of revenue, and they are hard to
test
• Approach: study errors in web-based
applications in the context of web application
testing
• Solution: improve the state of the art in web
testing techniques through guidelines targeted at
high severity faults and automation and
precision in regression testing
14
Thesis statement
• Hypothesis: web-based applications have
special properties that can be exploited to
build tools and models that improve the
current state of web application testing
and development:
– Tend to fail in predictable and similar ways
– Human centric definition of acceptability
15
Thesis statement
• Problem: faults in web-based applications
cause losses of revenue, and they are hard to
test
• Approach: study errors in web-based
applications in the context of web testing
• Solution: improve the state of the art in web
testing techniques through guidelines targeted at
high severity faults and automation and
precision in regression testing
16
Background: testing techniques
• Non-functional (static) validation
– Server load testing
– Link testing
– HTML/spelling validation
• Modeling approaches
• Capture-replay
– User session-based testing
17
Background: oracles
• Oracles (oracle-comparator)
1 < <P>The same table could be indented.
2 < <TABLE border="1">
3 ---
4 > <p>The same table could be indented.</p>
5 > <table border="1" summary="">
– False positives from
diff-like tools
– Want precise comparators
18
Background: automation
• Automation
– Test case generation: VeriWeb, PHP
– Test case replay
• URL + post-data
– Failure detection
19
Background: metrics
• How do we measure success?
– Code coverage
– Fault seeding
• Human
• Automatic
– Cost
• How do we know these are indicative of
the real world?
20
Background: fault definition
• Defining an error:
– “the inability to obtain and deliver information,
such as documents or computational results,
requested by web
users.”
[Ma & Tian 2003]
• Fault taxonomies
– Figure from
[Marchetto et al
2007]
21
Background: challenges
• Functional validation remains a challenge
– Regression testing should be more precise
and automatic
• We do not know if test suite efficacy
metrics are indicative of the real world
– We should examine the severity of uncovered
faults
22
Goals and approaches
• Problem: faults in web-based applications
cause losses of revenue, and they are hard to
test
• Approach: study errors in web-based
applications in the context of web testing
• Solution: improve the state of the art in web
testing techniques through guidelines targeted at
high severity faults and automation and
precision in regression testing
23
Goals and approaches
• I propose to:
– Model errors in web-based applications
• Identify them more accurately
• Automate the oracle-comparator process
– Make web testing more cost-effective
• Devise a model of fault severity that will guide test
case design, selection, and prioritization
• Validate or refute the current underlying
assumption that all faults are equally severe in
fault-based testing
24
Goals and approaches: Goals
• Reduce the cost of regression testing web-
based applications
– Use special structure of web-based application output
to precisely identify errors
• Automate web-based application regression
testing
– Unrelated web-based applications tend to fail in
similar ways
• Understand customer-perceived severities of
web application errors.
25
Goals and approaches: Goals
• Formally ground the current state of industrial
practice
– Validate or refute fault injection as a standard for
measuring web application test suite quality
• Understand how to avoid high-severity faults
during web application design and development
• Reduce the cost of regression testing web
applications by exposing high-severity faults
– Test case design, selection, and prioritization (test
suite reduction)
26
Goals and approaches: Outline
27
Goals and approaches: Step 1 –
oracle-comparator
• Construct a precise oracle-comparator that
uses the tree-structured nature of
XML/HTML output and other features
– Model errors on a per-project basis
– Semantic distance metric to reduce false
positives
28
Goals and approaches: Step 2 –
automated oracle-comparator
• Exploit the similar way in which web
applications fail to avoid the need for
human annotations in training a precise
oracle-comparator
– Train a precise oracle-comparator on data
from other, unrelated web applications
– Use fault injection to improve the results when
necessary
29
Goals and approaches: Step 3 –
human study
• Conduct a human study of real-world fault
severity to identify a model of fault severity
– Severities different than self-reported in bug
repositories
– Screenshots of current-next idiom
– Also survey developers
30
Goals and approaches: Step 4 –
fault seeding validation
• Compare the severities of real-world faults
to seeded faults using human data
(validate fault seeding)
– The severities of seeded errors have uniform
distributions?
– The severity distribution of seeded errors
matches the distribution of real-world errors,
according to the results of the survey from
Step 3?
31
Goals and approaches: Step 5 –
software engineering guidelines
• Identify underlying technologies and
methodologies that correlate with high-
severity faults
– As an alternative to testing
– Tie high severity errors to underlying code,
components, programming languages, and
software engineering practices
32
Goals and approaches: Step 6 –
testing techniques
• Identify testing techniques to maximize
return on investment by targeting high-
severity faults
– Introduce a new metric for the (web
application) test suite reduction research
community
33
Preliminary Work: Step 1
• Step 1: Construct a precise oracle-comparator
using tree structured XML/HTML output and
other features
– Multiple versions of
10 open-source
benchmarks
– 7154 pairs of oracle-
testcase output, 919
of which labeled as
“possibly an error”
34
Preliminary Work: Step 1
• Evaluation: F-measure (precision and
recall) using our model
35
Preliminary Work: Step 1
• Longitudinal study to measure effort saved
– Calculate cost of looking : cost of missing
– Low ratio means we are saving effort
36
Preliminary Work: Step 2
• Step 2: Exploit similarities in web
application failures to avoid human
annotations when training a precise
oracle-comparator
– Same setup as Step 1
– Use existing, annotated pairs of test-oracle
output from unrelated applications to train a
comparator for the application at test
37
Preliminary Work: Step 2
• Evaluation: measure precision and recall
38
Preliminary Work: Step 2
• Use fault seeding to introduce project-
specific faults into the training data set
39
Preliminary Work: Step 3
• Step 3: Model real-world fault severity
based on a human study.
– Collect 400 real-world faults
• Evaluation:
have subjects
use the model
to classify
faults
40
Preliminary Work: Step 4
• Step 4: Compare the severities of real-
world faults to seeded faults using human
data.
– Test same human subjects with 200 + 200
manually-injected and automatically-injected
faults
– Conduct a survey
of developers for
fault severity
41
Preliminary Work: Step 5
• Step 5: Identify technologies and methodologies that
correlate with high-severity faults
• Do high severities correlate with:
– Programming Language
– Level in three-tier architecture
– COTS component
– User error (usability issue)
– Type of error (business logic, resource allocation, syntax error,
etc)
– Fault taxonomies (existing)
– Surface features of visible output: white screens, stack traces,
misspellings, formatting errors
• Evaluation: developer survey (time permitting)
42
Preliminary Work: Step 6
• Step 6: Identify testing techniques to target
high-severity faults
– Targets testing
– Assign a testcase a severity rating a priori
• Evaluation: compare the severity of faults
exposed with our technique versus other
test suite reduction approaches
43
Expected Contributions
• Problem: faults in web-based applications
cause losses of revenue, and they are hard to
test
• Approach: study errors in web-based
applications in the context of web testing
• Solution: improve the state of the art in web
testing techniques through guidelines targeted at
high severity faults and automation and
precision in regression testing
44
Expected Contributions
• Reduce the cost of regression testing by
constructing a precise oracle-comparator
• Develop a model of customer-perceived
severities of web application faults
• Validate or refute fault injection as a standard for
measuring web application test suite quality
• Propose new software engineering guidelines
for web application development and testing
45
Questions?
46
Original Contributions
• Fault Severity Model
– Severity has not been studied in this domain, and
customers are an integral part of these applications
– Providing a new metric to the research community
– Validate/refute fault seeding
• Precise-oracle comparators
– First to use different versions of benchmarks
– Can be completely automated
– XML and HTML
47
Expected Impact
• Fault Severity Model
– Can be applied to testing techniques in this field to
make them financially feasible for developers
– Change the way in which test suite efficacy is
measured
– Potentially impact web site design as usability issues
may become more evident
• Precise oracle-comparator
– Automation makes it much more feasible for adoption
than existing techniques
– Potentially allow companies to conduct regression
testing if they were not testing beforehand
48
Timeline
• Steps 1 and 2: precise comparators
– Completed, 2 papers under submission
• Steps 3 and 4: human study
– Data collection completed, analysis under way for submission of
1 paper
– Expected completion by September
• Step 5: software engineering guidelines
– Expected completion by October
– Expected 0.5 paper
• Step 6: testing according to fault model
– Expected completion by February
– Expected 1 paper

More Related Content

Similar to kinga-phd-proposal.ppt

Review on cost estimation technque for web application [part 1]
Review on cost estimation technque for web application [part 1]Review on cost estimation technque for web application [part 1]
Review on cost estimation technque for web application [part 1]Sayed Mohsin Reza
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Lionel Briand
 
Neotys PAC - Bruno Da Silva
Neotys PAC - Bruno Da SilvaNeotys PAC - Bruno Da Silva
Neotys PAC - Bruno Da SilvaNeotys_Partner
 
Sucheta_kale_4.8years_QA
Sucheta_kale_4.8years_QASucheta_kale_4.8years_QA
Sucheta_kale_4.8years_QASucheta Kale
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing IntroductionArunKumar5524
 
Unit iv-testing-pune-university-sres-coe
Unit iv-testing-pune-university-sres-coeUnit iv-testing-pune-university-sres-coe
Unit iv-testing-pune-university-sres-coeHitesh Mohapatra
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Dakiry
 
Quality Assurance in Modern Software Development
Quality Assurance in Modern Software DevelopmentQuality Assurance in Modern Software Development
Quality Assurance in Modern Software DevelopmentZahra Sadeghi
 
software Engineering process
software Engineering processsoftware Engineering process
software Engineering processRaheel Aslam
 
Usability requirements and their elicitation
Usability requirements and their elicitationUsability requirements and their elicitation
Usability requirements and their elicitationLucas Machado
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introMykola Kovsh
 
OOSE Unit 5 PPT.ppt
OOSE Unit 5 PPT.pptOOSE Unit 5 PPT.ppt
OOSE Unit 5 PPT.pptitadmin33
 
Soft engg introduction and process models
Soft engg introduction and process modelsSoft engg introduction and process models
Soft engg introduction and process modelssnehalkulkarni74
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategiesSHREEHARI WADAWADAGI
 
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...Curiosity Software Ireland
 
Oose unit 5 ppt
Oose unit 5 pptOose unit 5 ppt
Oose unit 5 pptDr VISU P
 

Similar to kinga-phd-proposal.ppt (20)

Web testing
Web testingWeb testing
Web testing
 
Amita_Kashyap1_CV
Amita_Kashyap1_CVAmita_Kashyap1_CV
Amita_Kashyap1_CV
 
Review on cost estimation technque for web application [part 1]
Review on cost estimation technque for web application [part 1]Review on cost estimation technque for web application [part 1]
Review on cost estimation technque for web application [part 1]
 
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...Making Model-Driven Verification Practical and Scalable: Experiences and Less...
Making Model-Driven Verification Practical and Scalable: Experiences and Less...
 
Neotys PAC - Bruno Da Silva
Neotys PAC - Bruno Da SilvaNeotys PAC - Bruno Da Silva
Neotys PAC - Bruno Da Silva
 
Pm 6 testing
Pm 6 testingPm 6 testing
Pm 6 testing
 
Pm 6 testing
Pm 6 testingPm 6 testing
Pm 6 testing
 
Sucheta_kale_4.8years_QA
Sucheta_kale_4.8years_QASucheta_kale_4.8years_QA
Sucheta_kale_4.8years_QA
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing Introduction
 
Unit iv-testing-pune-university-sres-coe
Unit iv-testing-pune-university-sres-coeUnit iv-testing-pune-university-sres-coe
Unit iv-testing-pune-university-sres-coe
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
 
Quality Assurance in Modern Software Development
Quality Assurance in Modern Software DevelopmentQuality Assurance in Modern Software Development
Quality Assurance in Modern Software Development
 
software Engineering process
software Engineering processsoftware Engineering process
software Engineering process
 
Usability requirements and their elicitation
Usability requirements and their elicitationUsability requirements and their elicitation
Usability requirements and their elicitation
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
 
OOSE Unit 5 PPT.ppt
OOSE Unit 5 PPT.pptOOSE Unit 5 PPT.ppt
OOSE Unit 5 PPT.ppt
 
Soft engg introduction and process models
Soft engg introduction and process modelsSoft engg introduction and process models
Soft engg introduction and process models
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
Curiosity and Xray present - In sprint testing: Aligning tests and teams to r...
 
Oose unit 5 ppt
Oose unit 5 pptOose unit 5 ppt
Oose unit 5 ppt
 

More from ssuser03e52f

Beyond-our-eyes-the-non-visual-impact-of-light-Centre-for-Chronobiology-Unive...
Beyond-our-eyes-the-non-visual-impact-of-light-Centre-for-Chronobiology-Unive...Beyond-our-eyes-the-non-visual-impact-of-light-Centre-for-Chronobiology-Unive...
Beyond-our-eyes-the-non-visual-impact-of-light-Centre-for-Chronobiology-Unive...ssuser03e52f
 
FAA_AST_10.06a.ppt
FAA_AST_10.06a.pptFAA_AST_10.06a.ppt
FAA_AST_10.06a.pptssuser03e52f
 
62e1000ab7a43615fdc9f2f9_2022 Jul Webinar - PPT FINAL.pptx.pdf
62e1000ab7a43615fdc9f2f9_2022 Jul Webinar - PPT FINAL.pptx.pdf62e1000ab7a43615fdc9f2f9_2022 Jul Webinar - PPT FINAL.pptx.pdf
62e1000ab7a43615fdc9f2f9_2022 Jul Webinar - PPT FINAL.pptx.pdfssuser03e52f
 
499162main_2009-1217_HSIKB-Human-Centered-Design-Process.ppt
499162main_2009-1217_HSIKB-Human-Centered-Design-Process.ppt499162main_2009-1217_HSIKB-Human-Centered-Design-Process.ppt
499162main_2009-1217_HSIKB-Human-Centered-Design-Process.pptssuser03e52f
 

More from ssuser03e52f (6)

Beyond-our-eyes-the-non-visual-impact-of-light-Centre-for-Chronobiology-Unive...
Beyond-our-eyes-the-non-visual-impact-of-light-Centre-for-Chronobiology-Unive...Beyond-our-eyes-the-non-visual-impact-of-light-Centre-for-Chronobiology-Unive...
Beyond-our-eyes-the-non-visual-impact-of-light-Centre-for-Chronobiology-Unive...
 
Pelin-MCC.ppt
Pelin-MCC.pptPelin-MCC.ppt
Pelin-MCC.ppt
 
FAA_AST_10.06a.ppt
FAA_AST_10.06a.pptFAA_AST_10.06a.ppt
FAA_AST_10.06a.ppt
 
44050552046.pdf
44050552046.pdf44050552046.pdf
44050552046.pdf
 
62e1000ab7a43615fdc9f2f9_2022 Jul Webinar - PPT FINAL.pptx.pdf
62e1000ab7a43615fdc9f2f9_2022 Jul Webinar - PPT FINAL.pptx.pdf62e1000ab7a43615fdc9f2f9_2022 Jul Webinar - PPT FINAL.pptx.pdf
62e1000ab7a43615fdc9f2f9_2022 Jul Webinar - PPT FINAL.pptx.pdf
 
499162main_2009-1217_HSIKB-Human-Centered-Design-Process.ppt
499162main_2009-1217_HSIKB-Human-Centered-Design-Process.ppt499162main_2009-1217_HSIKB-Human-Centered-Design-Process.ppt
499162main_2009-1217_HSIKB-Human-Centered-Design-Process.ppt
 

Recently uploaded

CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLDeelipZope
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
microprocessor 8085 and its interfacing
microprocessor 8085  and its interfacingmicroprocessor 8085  and its interfacing
microprocessor 8085 and its interfacingjaychoudhary37
 

Recently uploaded (20)

CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCL
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
microprocessor 8085 and its interfacing
microprocessor 8085  and its interfacingmicroprocessor 8085  and its interfacing
microprocessor 8085 and its interfacing
 

kinga-phd-proposal.ppt

  • 1. 1 An Exploration of Errors in Web- based Applications in the Context of Web-based Application Testing PhD Proposal Kinga Dobolyi May 2009
  • 5. 5 What is going on • Problem: faults in web-based applications cause losses of revenue, and they are hard to test • Approach: study errors in web-based applications in the context of web testing • Solution: improve the state of the art in web testing techniques through guidelines targeted at high severity faults and automation and precision in regression testing
  • 6. 6 Outline • Introduction and motivation • Thesis statement • Background • Goals and approaches • Preliminary work • Expected contributions
  • 7. 7 Motivation • Testing of web-based applications in particular deserves further examination due to economic considerations: – Monetary throughput: Backbone of e- commerce and communications businesses – Customers: low customer loyalty – Development: Companies are choosing not to test due to resource constraints
  • 8. 8 Motivation: e-commerce • Internet usage: 73% of people in the US in 2008 – Browsers are dominant application – $204 billion in Internet retail sales annually • Global online B2B transactions total several $trillions annually • One hour of downtime at Amazon.com cost $1.5 million dollars • 70% of major online sites exhibit user-visible failures
  • 9. 9 Motivation: customers • Customer loyalty is notoriously low – Determined by the usability of the application [Offutt 2002] – Freedom and options
  • 10. 10 Motivation: customers • Lesson learned: web-based applications need to be well-designed and well tested • Are they?
  • 11. 11 Motivation: development • Technology challenges: – Heterogeneous, opaque components – Dynamic page content generation – Persistent state operated upon by concurrent, global users around the clock
  • 12. 12 Motivation: development • Web-based applications are often not tested – Enormous pressure to change • Short delivery times, high developer turnover rates, and quickly evolving user needs – No formal process model
  • 13. 13 Motivation: summary • Problem: faults in web-based applications cause losses of revenue, and they are hard to test • Approach: study errors in web-based applications in the context of web application testing • Solution: improve the state of the art in web testing techniques through guidelines targeted at high severity faults and automation and precision in regression testing
  • 14. 14 Thesis statement • Hypothesis: web-based applications have special properties that can be exploited to build tools and models that improve the current state of web application testing and development: – Tend to fail in predictable and similar ways – Human centric definition of acceptability
  • 15. 15 Thesis statement • Problem: faults in web-based applications cause losses of revenue, and they are hard to test • Approach: study errors in web-based applications in the context of web testing • Solution: improve the state of the art in web testing techniques through guidelines targeted at high severity faults and automation and precision in regression testing
  • 16. 16 Background: testing techniques • Non-functional (static) validation – Server load testing – Link testing – HTML/spelling validation • Modeling approaches • Capture-replay – User session-based testing
  • 17. 17 Background: oracles • Oracles (oracle-comparator) 1 < <P>The same table could be indented. 2 < <TABLE border="1"> 3 --- 4 > <p>The same table could be indented.</p> 5 > <table border="1" summary=""> – False positives from diff-like tools – Want precise comparators
  • 18. 18 Background: automation • Automation – Test case generation: VeriWeb, PHP – Test case replay • URL + post-data – Failure detection
  • 19. 19 Background: metrics • How do we measure success? – Code coverage – Fault seeding • Human • Automatic – Cost • How do we know these are indicative of the real world?
  • 20. 20 Background: fault definition • Defining an error: – “the inability to obtain and deliver information, such as documents or computational results, requested by web users.” [Ma & Tian 2003] • Fault taxonomies – Figure from [Marchetto et al 2007]
  • 21. 21 Background: challenges • Functional validation remains a challenge – Regression testing should be more precise and automatic • We do not know if test suite efficacy metrics are indicative of the real world – We should examine the severity of uncovered faults
  • 22. 22 Goals and approaches • Problem: faults in web-based applications cause losses of revenue, and they are hard to test • Approach: study errors in web-based applications in the context of web testing • Solution: improve the state of the art in web testing techniques through guidelines targeted at high severity faults and automation and precision in regression testing
  • 23. 23 Goals and approaches • I propose to: – Model errors in web-based applications • Identify them more accurately • Automate the oracle-comparator process – Make web testing more cost-effective • Devise a model of fault severity that will guide test case design, selection, and prioritization • Validate or refute the current underlying assumption that all faults are equally severe in fault-based testing
  • 24. 24 Goals and approaches: Goals • Reduce the cost of regression testing web- based applications – Use special structure of web-based application output to precisely identify errors • Automate web-based application regression testing – Unrelated web-based applications tend to fail in similar ways • Understand customer-perceived severities of web application errors.
  • 25. 25 Goals and approaches: Goals • Formally ground the current state of industrial practice – Validate or refute fault injection as a standard for measuring web application test suite quality • Understand how to avoid high-severity faults during web application design and development • Reduce the cost of regression testing web applications by exposing high-severity faults – Test case design, selection, and prioritization (test suite reduction)
  • 27. 27 Goals and approaches: Step 1 – oracle-comparator • Construct a precise oracle-comparator that uses the tree-structured nature of XML/HTML output and other features – Model errors on a per-project basis – Semantic distance metric to reduce false positives
  • 28. 28 Goals and approaches: Step 2 – automated oracle-comparator • Exploit the similar way in which web applications fail to avoid the need for human annotations in training a precise oracle-comparator – Train a precise oracle-comparator on data from other, unrelated web applications – Use fault injection to improve the results when necessary
  • 29. 29 Goals and approaches: Step 3 – human study • Conduct a human study of real-world fault severity to identify a model of fault severity – Severities different than self-reported in bug repositories – Screenshots of current-next idiom – Also survey developers
  • 30. 30 Goals and approaches: Step 4 – fault seeding validation • Compare the severities of real-world faults to seeded faults using human data (validate fault seeding) – The severities of seeded errors have uniform distributions? – The severity distribution of seeded errors matches the distribution of real-world errors, according to the results of the survey from Step 3?
  • 31. 31 Goals and approaches: Step 5 – software engineering guidelines • Identify underlying technologies and methodologies that correlate with high- severity faults – As an alternative to testing – Tie high severity errors to underlying code, components, programming languages, and software engineering practices
  • 32. 32 Goals and approaches: Step 6 – testing techniques • Identify testing techniques to maximize return on investment by targeting high- severity faults – Introduce a new metric for the (web application) test suite reduction research community
  • 33. 33 Preliminary Work: Step 1 • Step 1: Construct a precise oracle-comparator using tree structured XML/HTML output and other features – Multiple versions of 10 open-source benchmarks – 7154 pairs of oracle- testcase output, 919 of which labeled as “possibly an error”
  • 34. 34 Preliminary Work: Step 1 • Evaluation: F-measure (precision and recall) using our model
  • 35. 35 Preliminary Work: Step 1 • Longitudinal study to measure effort saved – Calculate cost of looking : cost of missing – Low ratio means we are saving effort
  • 36. 36 Preliminary Work: Step 2 • Step 2: Exploit similarities in web application failures to avoid human annotations when training a precise oracle-comparator – Same setup as Step 1 – Use existing, annotated pairs of test-oracle output from unrelated applications to train a comparator for the application at test
  • 37. 37 Preliminary Work: Step 2 • Evaluation: measure precision and recall
  • 38. 38 Preliminary Work: Step 2 • Use fault seeding to introduce project- specific faults into the training data set
  • 39. 39 Preliminary Work: Step 3 • Step 3: Model real-world fault severity based on a human study. – Collect 400 real-world faults • Evaluation: have subjects use the model to classify faults
  • 40. 40 Preliminary Work: Step 4 • Step 4: Compare the severities of real- world faults to seeded faults using human data. – Test same human subjects with 200 + 200 manually-injected and automatically-injected faults – Conduct a survey of developers for fault severity
  • 41. 41 Preliminary Work: Step 5 • Step 5: Identify technologies and methodologies that correlate with high-severity faults • Do high severities correlate with: – Programming Language – Level in three-tier architecture – COTS component – User error (usability issue) – Type of error (business logic, resource allocation, syntax error, etc) – Fault taxonomies (existing) – Surface features of visible output: white screens, stack traces, misspellings, formatting errors • Evaluation: developer survey (time permitting)
  • 42. 42 Preliminary Work: Step 6 • Step 6: Identify testing techniques to target high-severity faults – Targets testing – Assign a testcase a severity rating a priori • Evaluation: compare the severity of faults exposed with our technique versus other test suite reduction approaches
  • 43. 43 Expected Contributions • Problem: faults in web-based applications cause losses of revenue, and they are hard to test • Approach: study errors in web-based applications in the context of web testing • Solution: improve the state of the art in web testing techniques through guidelines targeted at high severity faults and automation and precision in regression testing
  • 44. 44 Expected Contributions • Reduce the cost of regression testing by constructing a precise oracle-comparator • Develop a model of customer-perceived severities of web application faults • Validate or refute fault injection as a standard for measuring web application test suite quality • Propose new software engineering guidelines for web application development and testing
  • 46. 46 Original Contributions • Fault Severity Model – Severity has not been studied in this domain, and customers are an integral part of these applications – Providing a new metric to the research community – Validate/refute fault seeding • Precise-oracle comparators – First to use different versions of benchmarks – Can be completely automated – XML and HTML
  • 47. 47 Expected Impact • Fault Severity Model – Can be applied to testing techniques in this field to make them financially feasible for developers – Change the way in which test suite efficacy is measured – Potentially impact web site design as usability issues may become more evident • Precise oracle-comparator – Automation makes it much more feasible for adoption than existing techniques – Potentially allow companies to conduct regression testing if they were not testing beforehand
  • 48. 48 Timeline • Steps 1 and 2: precise comparators – Completed, 2 papers under submission • Steps 3 and 4: human study – Data collection completed, analysis under way for submission of 1 paper – Expected completion by September • Step 5: software engineering guidelines – Expected completion by October – Expected 0.5 paper • Step 6: testing according to fault model – Expected completion by February – Expected 1 paper