SlideShare a Scribd company logo
1 of 1
Download to read offline
DejaVOO: A Regression Testing Tool for Java                                                                        Software *
                                                                     Alessandro Orso, Donglin Liang, Mary Jean Harrold and Manas Tungare — Georgia Institute of Technology
                                                                                                       http://www.cc.gatech.edu/aristotle/

 1. Regression Testing                                                                                                                                     5. Our Safe Regression Test Selection Algorithm: Characteristics
    • Performed on new versions of the software to provide confidence that:                                                                                    • It handles Java object-oriented features resulting in simple components and complex
       – the changed parts behave as intended                                                                                                                 interactions
       – the unchanged parts are not adversely affected by the modifications                                                                                      – inheritance
    • Can be very expensive, especially in some contexts                                                                                                         – polymorphism and dynamic binding
       – daily re-testing after nightly builds                                                                                                                   – exception handling
       – frequent re-testing during development                                                                                                               • It handles incomplete programs that play an important role in object-oriented software
       – for the extreme programming paradigm                                                                                                                    – components
                                                                                                                                                                 – applications using libraries (e.g., AWT)
                                                                                                                                                                 – subsystems
2. Regression Test Selection

                                                                                                                                                             6. DejaVOO: An Implementation of our Regression Test Selection
                                                                       A safe algorithm
                                       T-T’
                                                                                                                                                             Algorithm for Java Software
                                                                         • requires certain assumptions for safety
   Program
                                                               T
                                                                         • ensures that T’ contains all test cases in T that
      P
                                        T’
                                                                            can expose a fault in P’                                                          Architecture of DejaVOO

                                                                             – same execution environment                                                                 Execute P / Record coverage
                                                                             – deterministic test runs
  P’ Version
                                                                             –…
                                                                                                                                                                     P
     of P                                                                                                                                                                                                      Coverage
                                                                                                                                                                                        Events
                                        T’                                                                                                                                    JVM                  Profiler
                                                                                                                                                                     T
                                                                                                                                                                                                                Matrix
                                                                                                                                                                                                                                Test    T’
                                                                                                                                                                                                                              Selection
                                                                                                                                                                                                                                                                     JVM:	    Java Virtual Machine
3. Potential Savings                                                                                                                                                                                                            Tool
                                                                                                                                                                                                                        ous
                                                                                                                                                                                                                 Danger
                                                                                                                                                                     P
                                                                                      12                                                   12                                         JIG for P
                                                                                                                                                                                                                                                                     Profiler: JVM Profiling Interface
                                                                                                                                                                                                    Graph
                                                                                                                                                                                                                   Entities
                                                                                                                                                                             JABA
                                                                                                                                                                     P’               JIG for P'
                                                                                                                                                                                                   Traversal
                                                                                                                                                                                                                                                                     JABA: Java Architecture for
                                                                                        Time to
                                                                                                                                                                                                                                                                               Bytecode Analysis
                                                                                                                                                                          Identify dangerous entities
                                                                                        select T’
 Time to select T’ + Time to run T’                                                                                                        Time to run 3
                                                                                                               3
                                                                          9                                           9
 < Time to run T                                                                                                                               T
                                                                                                               Savings
                                                                                      Time to
                                                                                       run T’
                                                                                                                                                                Prototype GUI for DejaVOO
                                                                                        6                                                  6
                                                                                                                                                                • It shows a SeeSoft view of the source
                                                                                                                                                                  code of P
4. Our Safe Regression Test Selection Algorithm: Overview
                                                                                                                                                                • It highlights the lines of code that have
                                                                                                                                                                  been modified
                                                                                                                                                                • It displays the test cases to be rerun
                                                                              c. Differentiate G, G’ to find dangerous entities
a. Construct graph representations for                         P and P’
                                                                                                                                                                • It lets the user selectively shows which
                                                                                                                                                                  test cases traverse which parts of the
            G                                                  G’                                              Dangerous Edge
                                                                                    G                                                           G’                code and vice-versa
                      if()                          if()                                        if()                                if()
                  1                             1
                             2                             2                                1                                   1
                                                                                                       2                                   2

            doA                  doB      doA                  doC                  doA                    doB            doA                   doC


  b. Associate test cases in T with entities in P                         d. Select test cases based on dangerous entities                                  7. Empirical Studies:                                                                               Sizes of Selected Subsets of T
                                                                                                                                                               Subjects




                                                                                                                                                                                                                                       % Test Cases Selected
                                                                                                                                                                                                                                                               100

                                                                                                                                                               • Siena: Event notification system (185 methods),
                                                                                                                                                                                                                                                                90
                TC                                                                      TC                                                                                                                                                                      80
                             tc1        tc2           tc3                                                  tc1         tc2             tc3                                                                                                                      70
          En                                                                       En                                                                            7 versions, 138 test cases, 70% method coverage                                                60

                                                                                                                                                               • Jedit: Text editor (3495 methods),                                                             50
                                                                                                                                                                                                                                                                40
            en1                  X                                                   en1                   X                                                                                                                                                    30
                                                                                                                                                                 11 versions, 189 test cases, 75% method coverage                                               20
                                                                                                                                                               • Jmeter: Web-application test tool (109 methods),                                               10
                                                                                                                                                                                                                                                                 0
                                                                                                                                                                                                                                                                     Siena    Jedit    Jmeter   RegExp
            en2                          X             X                             en2                                  X                X                     5 versions, 50 test cases, 67% method coverage                                                       V1-V7   V1-V11    V1-V5    V1-V9
                                                                                                                                                               • RegExp: Regular-expression library (168 methods),                                                             Program Name
                                                                                                                                                                 10 versions, 66 test cases, 46% method coverage
* This work was supported in part by a grant from Boeing Aerospace Corporation to Georgia Tech, by National Science Foundation award CCR-9707792 to Ohio State
University, and awards CCR-9988294, CCR-0096321, and EIA-0196145 to Georgia Tech, and by the State of Georgia to Georgia Tech under the Yamacraw Mission.

More Related Content

What's hot

Migrating Legacy Waveforms to the Software Communications Architecture (SCA)
Migrating Legacy Waveforms to the Software Communications Architecture (SCA)Migrating Legacy Waveforms to the Software Communications Architecture (SCA)
Migrating Legacy Waveforms to the Software Communications Architecture (SCA)ADLINK Technology IoT
 
Reverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device SoftwareReverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device SoftwareDharmalingam Ganesan
 
Vince.bilardo
Vince.bilardoVince.bilardo
Vince.bilardoNASAPMC
 

What's hot (6)

Migrating Legacy Waveforms to the Software Communications Architecture (SCA)
Migrating Legacy Waveforms to the Software Communications Architecture (SCA)Migrating Legacy Waveforms to the Software Communications Architecture (SCA)
Migrating Legacy Waveforms to the Software Communications Architecture (SCA)
 
Confluence
ConfluenceConfluence
Confluence
 
Reverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device SoftwareReverse Architecting of a Medical Device Software
Reverse Architecting of a Medical Device Software
 
Ia3115171521
Ia3115171521Ia3115171521
Ia3115171521
 
Ohl project risk register
Ohl project risk registerOhl project risk register
Ohl project risk register
 
Vince.bilardo
Vince.bilardoVince.bilardo
Vince.bilardo
 

Similar to DejaVOO: A Regression Testing Tool for Java Software

Using LCDS to Power Live REAs
Using LCDS to Power Live REAsUsing LCDS to Power Live REAs
Using LCDS to Power Live REAsShailesh Mangal
 
Dancing about architecture
Dancing about architectureDancing about architecture
Dancing about architectureCoraline Ehmke
 
Adopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy ContextAdopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy ContextXavier Warzee
 
Pivotal Labs Open View Presentation Quality Assurance And Developer Testing
Pivotal Labs Open View Presentation Quality Assurance And Developer TestingPivotal Labs Open View Presentation Quality Assurance And Developer Testing
Pivotal Labs Open View Presentation Quality Assurance And Developer Testingguestc8adce
 
Nevmug Emc January 2009
Nevmug   Emc January 2009Nevmug   Emc January 2009
Nevmug Emc January 2009csharney
 
Is the current model of load testing broken ukcmg - steve thair
Is the current model of load testing broken   ukcmg - steve thairIs the current model of load testing broken   ukcmg - steve thair
Is the current model of load testing broken ukcmg - steve thairStephen Thair
 
Riverbed's presentation at SFSE Meetup 2/22
Riverbed's presentation at SFSE Meetup 2/22Riverbed's presentation at SFSE Meetup 2/22
Riverbed's presentation at SFSE Meetup 2/22Sauce Labs
 
EAIESB-JavaCAPS6-Implementation
EAIESB-JavaCAPS6-ImplementationEAIESB-JavaCAPS6-Implementation
EAIESB-JavaCAPS6-ImplementationVijay Reddy
 
JMeter vs LoadRunner | Edureka
JMeter vs LoadRunner | EdurekaJMeter vs LoadRunner | Edureka
JMeter vs LoadRunner | EdurekaEdureka!
 
PL/SQL Development
PL/SQL DevelopmentPL/SQL Development
PL/SQL DevelopmentThanh Nguyen
 
P2, the new Eclipse provisioning system
P2, the new Eclipse provisioning systemP2, the new Eclipse provisioning system
P2, the new Eclipse provisioning systemBenjamin Cabé
 
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...Cωνσtantίnoς Giannoulis
 
An Infrastructure for Team Development - Gaylord Aulke
An Infrastructure for Team Development - Gaylord AulkeAn Infrastructure for Team Development - Gaylord Aulke
An Infrastructure for Team Development - Gaylord Aulkedpc
 
Ashwini - Effective use of CI by QA
Ashwini - Effective use of CI by QAAshwini - Effective use of CI by QA
Ashwini - Effective use of CI by QAvodQA
 
Real Impact Testing Analysis For JVM
Real Impact Testing Analysis For JVMReal Impact Testing Analysis For JVM
Real Impact Testing Analysis For JVMRaquel Pau
 
NTT DATA Vertex Open2test Overview
NTT DATA Vertex Open2test OverviewNTT DATA Vertex Open2test Overview
NTT DATA Vertex Open2test OverviewJorrit26
 

Similar to DejaVOO: A Regression Testing Tool for Java Software (20)

BeJUG JavaFx In Practice
BeJUG JavaFx In PracticeBeJUG JavaFx In Practice
BeJUG JavaFx In Practice
 
Using LCDS to Power Live REAs
Using LCDS to Power Live REAsUsing LCDS to Power Live REAs
Using LCDS to Power Live REAs
 
XS Japan 2008 Ganeti English
XS Japan 2008 Ganeti EnglishXS Japan 2008 Ganeti English
XS Japan 2008 Ganeti English
 
Dancing about architecture
Dancing about architectureDancing about architecture
Dancing about architecture
 
Adopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy ContextAdopting Agile Tools & Methods In A Legacy Context
Adopting Agile Tools & Methods In A Legacy Context
 
Pivotal Labs Open View Presentation Quality Assurance And Developer Testing
Pivotal Labs Open View Presentation Quality Assurance And Developer TestingPivotal Labs Open View Presentation Quality Assurance And Developer Testing
Pivotal Labs Open View Presentation Quality Assurance And Developer Testing
 
Nevmug Emc January 2009
Nevmug   Emc January 2009Nevmug   Emc January 2009
Nevmug Emc January 2009
 
Is the current model of load testing broken ukcmg - steve thair
Is the current model of load testing broken   ukcmg - steve thairIs the current model of load testing broken   ukcmg - steve thair
Is the current model of load testing broken ukcmg - steve thair
 
Riverbed's presentation at SFSE Meetup 2/22
Riverbed's presentation at SFSE Meetup 2/22Riverbed's presentation at SFSE Meetup 2/22
Riverbed's presentation at SFSE Meetup 2/22
 
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAUTest Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
Test Automation and Keyword-driven testing af Brian Nielsen, CISS/AAU
 
Test Case Potency Assessment
Test Case Potency AssessmentTest Case Potency Assessment
Test Case Potency Assessment
 
EAIESB-JavaCAPS6-Implementation
EAIESB-JavaCAPS6-ImplementationEAIESB-JavaCAPS6-Implementation
EAIESB-JavaCAPS6-Implementation
 
JMeter vs LoadRunner | Edureka
JMeter vs LoadRunner | EdurekaJMeter vs LoadRunner | Edureka
JMeter vs LoadRunner | Edureka
 
PL/SQL Development
PL/SQL DevelopmentPL/SQL Development
PL/SQL Development
 
P2, the new Eclipse provisioning system
P2, the new Eclipse provisioning systemP2, the new Eclipse provisioning system
P2, the new Eclipse provisioning system
 
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
 
An Infrastructure for Team Development - Gaylord Aulke
An Infrastructure for Team Development - Gaylord AulkeAn Infrastructure for Team Development - Gaylord Aulke
An Infrastructure for Team Development - Gaylord Aulke
 
Ashwini - Effective use of CI by QA
Ashwini - Effective use of CI by QAAshwini - Effective use of CI by QA
Ashwini - Effective use of CI by QA
 
Real Impact Testing Analysis For JVM
Real Impact Testing Analysis For JVMReal Impact Testing Analysis For JVM
Real Impact Testing Analysis For JVM
 
NTT DATA Vertex Open2test Overview
NTT DATA Vertex Open2test OverviewNTT DATA Vertex Open2test Overview
NTT DATA Vertex Open2test Overview
 

More from Manas Tungare

Mental Workload at Transitions between Multiple Devices in Personal Informati...
Mental Workload at Transitions between Multiple Devices in Personal Informati...Mental Workload at Transitions between Multiple Devices in Personal Informati...
Mental Workload at Transitions between Multiple Devices in Personal Informati...Manas Tungare
 
Research Internships Panel at Virginia Tech 2008
Research Internships Panel at Virginia Tech 2008Research Internships Panel at Virginia Tech 2008
Research Internships Panel at Virginia Tech 2008Manas Tungare
 
Preliminary Examination Proposal Slides
Preliminary Examination Proposal SlidesPreliminary Examination Proposal Slides
Preliminary Examination Proposal SlidesManas Tungare
 
Thinking Outside the (Beige) Box: Personal Information Management Beyond the ...
Thinking Outside the (Beige) Box: Personal Information Management Beyond the ...Thinking Outside the (Beige) Box: Personal Information Management Beyond the ...
Thinking Outside the (Beige) Box: Personal Information Management Beyond the ...Manas Tungare
 
Understanding the Evolution of Users' Personal Information Practices
Understanding the Evolution of Users' Personal Information PracticesUnderstanding the Evolution of Users' Personal Information Practices
Understanding the Evolution of Users' Personal Information PracticesManas Tungare
 
Genetic Algorithms and their use in the Design of Evolvable Hardware
Genetic Algorithms and their use in the Design of Evolvable HardwareGenetic Algorithms and their use in the Design of Evolvable Hardware
Genetic Algorithms and their use in the Design of Evolvable HardwareManas Tungare
 
SIGIR PIM Workshop 2006
SIGIR PIM Workshop 2006SIGIR PIM Workshop 2006
SIGIR PIM Workshop 2006Manas Tungare
 
Increasing the Adoption of Public Transport Through Multi-Platform Social Net...
Increasing the Adoption of Public Transport Through Multi-Platform Social Net...Increasing the Adoption of Public Transport Through Multi-Platform Social Net...
Increasing the Adoption of Public Transport Through Multi-Platform Social Net...Manas Tungare
 
Towards a Syllabus Repository for Computer Science Courses
Towards a Syllabus Repository for Computer Science CoursesTowards a Syllabus Repository for Computer Science Courses
Towards a Syllabus Repository for Computer Science CoursesManas Tungare
 
Towards a Standardized Representation of Syllabi to Facilitation Sharing and ...
Towards a Standardized Representation of Syllabi to Facilitation Sharing and ...Towards a Standardized Representation of Syllabi to Facilitation Sharing and ...
Towards a Standardized Representation of Syllabi to Facilitation Sharing and ...Manas Tungare
 
Evaluation of a Location-Linked Notes System
Evaluation of a Location-Linked Notes SystemEvaluation of a Location-Linked Notes System
Evaluation of a Location-Linked Notes SystemManas Tungare
 
Embodied Data Objects
Embodied Data ObjectsEmbodied Data Objects
Embodied Data ObjectsManas Tungare
 
Why Consistency is Not Everything, and Seamless Task Migration is Key
Why Consistency is Not Everything, and Seamless Task Migration is KeyWhy Consistency is Not Everything, and Seamless Task Migration is Key
Why Consistency is Not Everything, and Seamless Task Migration is KeyManas Tungare
 
The Syncables Framework
The Syncables FrameworkThe Syncables Framework
The Syncables FrameworkManas Tungare
 

More from Manas Tungare (16)

Mental Workload at Transitions between Multiple Devices in Personal Informati...
Mental Workload at Transitions between Multiple Devices in Personal Informati...Mental Workload at Transitions between Multiple Devices in Personal Informati...
Mental Workload at Transitions between Multiple Devices in Personal Informati...
 
My Research Defense
My Research DefenseMy Research Defense
My Research Defense
 
Research Internships Panel at Virginia Tech 2008
Research Internships Panel at Virginia Tech 2008Research Internships Panel at Virginia Tech 2008
Research Internships Panel at Virginia Tech 2008
 
Grad School 101
Grad School 101Grad School 101
Grad School 101
 
Preliminary Examination Proposal Slides
Preliminary Examination Proposal SlidesPreliminary Examination Proposal Slides
Preliminary Examination Proposal Slides
 
Thinking Outside the (Beige) Box: Personal Information Management Beyond the ...
Thinking Outside the (Beige) Box: Personal Information Management Beyond the ...Thinking Outside the (Beige) Box: Personal Information Management Beyond the ...
Thinking Outside the (Beige) Box: Personal Information Management Beyond the ...
 
Understanding the Evolution of Users' Personal Information Practices
Understanding the Evolution of Users' Personal Information PracticesUnderstanding the Evolution of Users' Personal Information Practices
Understanding the Evolution of Users' Personal Information Practices
 
Genetic Algorithms and their use in the Design of Evolvable Hardware
Genetic Algorithms and their use in the Design of Evolvable HardwareGenetic Algorithms and their use in the Design of Evolvable Hardware
Genetic Algorithms and their use in the Design of Evolvable Hardware
 
SIGIR PIM Workshop 2006
SIGIR PIM Workshop 2006SIGIR PIM Workshop 2006
SIGIR PIM Workshop 2006
 
Increasing the Adoption of Public Transport Through Multi-Platform Social Net...
Increasing the Adoption of Public Transport Through Multi-Platform Social Net...Increasing the Adoption of Public Transport Through Multi-Platform Social Net...
Increasing the Adoption of Public Transport Through Multi-Platform Social Net...
 
Towards a Syllabus Repository for Computer Science Courses
Towards a Syllabus Repository for Computer Science CoursesTowards a Syllabus Repository for Computer Science Courses
Towards a Syllabus Repository for Computer Science Courses
 
Towards a Standardized Representation of Syllabi to Facilitation Sharing and ...
Towards a Standardized Representation of Syllabi to Facilitation Sharing and ...Towards a Standardized Representation of Syllabi to Facilitation Sharing and ...
Towards a Standardized Representation of Syllabi to Facilitation Sharing and ...
 
Evaluation of a Location-Linked Notes System
Evaluation of a Location-Linked Notes SystemEvaluation of a Location-Linked Notes System
Evaluation of a Location-Linked Notes System
 
Embodied Data Objects
Embodied Data ObjectsEmbodied Data Objects
Embodied Data Objects
 
Why Consistency is Not Everything, and Seamless Task Migration is Key
Why Consistency is Not Everything, and Seamless Task Migration is KeyWhy Consistency is Not Everything, and Seamless Task Migration is Key
Why Consistency is Not Everything, and Seamless Task Migration is Key
 
The Syncables Framework
The Syncables FrameworkThe Syncables Framework
The Syncables Framework
 

Recently uploaded

Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfPaul Menig
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxAndy Lambert
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...Any kyc Account
 
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...anilsa9823
 
HONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsHONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsMichael W. Hawkins
 
Best Basmati Rice Manufacturers in India
Best Basmati Rice Manufacturers in IndiaBest Basmati Rice Manufacturers in India
Best Basmati Rice Manufacturers in IndiaShree Krishna Exports
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Serviceritikaroy0888
 
Pharma Works Profile of Karan Communications
Pharma Works Profile of Karan CommunicationsPharma Works Profile of Karan Communications
Pharma Works Profile of Karan Communicationskarancommunications
 
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 DelhiCall Girls in Delhi
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...Paul Menig
 
Value Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and painsValue Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and painsP&CO
 
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779Delhi Call girls
 
Cracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptxCracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptxWorkforce Group
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Servicediscovermytutordmt
 
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876dlhescort
 
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...lizamodels9
 
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Dipal Arora
 
A305_A2_file_Batkhuu progress report.pdf
A305_A2_file_Batkhuu progress report.pdfA305_A2_file_Batkhuu progress report.pdf
A305_A2_file_Batkhuu progress report.pdftbatkhuu1
 

Recently uploaded (20)

Grateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdfGrateful 7 speech thanking everyone that has helped.pdf
Grateful 7 speech thanking everyone that has helped.pdf
 
Monthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptxMonthly Social Media Update April 2024 pptx.pptx
Monthly Social Media Update April 2024 pptx.pptx
 
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
KYC-Verified Accounts: Helping Companies Handle Challenging Regulatory Enviro...
 
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
Lucknow 💋 Escorts in Lucknow - 450+ Call Girl Cash Payment 8923113531 Neha Th...
 
HONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael HawkinsHONOR Veterans Event Keynote by Michael Hawkins
HONOR Veterans Event Keynote by Michael Hawkins
 
Best Basmati Rice Manufacturers in India
Best Basmati Rice Manufacturers in IndiaBest Basmati Rice Manufacturers in India
Best Basmati Rice Manufacturers in India
 
Call Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine ServiceCall Girls In Panjim North Goa 9971646499 Genuine Service
Call Girls In Panjim North Goa 9971646499 Genuine Service
 
Pharma Works Profile of Karan Communications
Pharma Works Profile of Karan CommunicationsPharma Works Profile of Karan Communications
Pharma Works Profile of Karan Communications
 
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
9599632723 Top Call Girls in Delhi at your Door Step Available 24x7 Delhi
 
7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...7.pdf This presentation captures many uses and the significance of the number...
7.pdf This presentation captures many uses and the significance of the number...
 
Value Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and painsValue Proposition canvas- Customer needs and pains
Value Proposition canvas- Customer needs and pains
 
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
Best VIP Call Girls Noida Sector 40 Call Me: 8448380779
 
Cracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptxCracking the Cultural Competence Code.pptx
Cracking the Cultural Competence Code.pptx
 
Call Girls in Gomti Nagar - 7388211116 - With room Service
Call Girls in Gomti Nagar - 7388211116  - With room ServiceCall Girls in Gomti Nagar - 7388211116  - With room Service
Call Girls in Gomti Nagar - 7388211116 - With room Service
 
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
Call Girls in Delhi, Escort Service Available 24x7 in Delhi 959961-/-3876
 
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
Call Girls In Holiday Inn Express Gurugram➥99902@11544 ( Best price)100% Genu...
 
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
Call Girls Navi Mumbai Just Call 9907093804 Top Class Call Girl Service Avail...
 
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
VVVIP Call Girls In Greater Kailash ➡️ Delhi ➡️ 9999965857 🚀 No Advance 24HRS...
 
A305_A2_file_Batkhuu progress report.pdf
A305_A2_file_Batkhuu progress report.pdfA305_A2_file_Batkhuu progress report.pdf
A305_A2_file_Batkhuu progress report.pdf
 
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabiunwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
unwanted pregnancy Kit [+918133066128] Abortion Pills IN Dubai UAE Abudhabi
 

DejaVOO: A Regression Testing Tool for Java Software

  • 1. DejaVOO: A Regression Testing Tool for Java Software * Alessandro Orso, Donglin Liang, Mary Jean Harrold and Manas Tungare — Georgia Institute of Technology http://www.cc.gatech.edu/aristotle/ 1. Regression Testing 5. Our Safe Regression Test Selection Algorithm: Characteristics • Performed on new versions of the software to provide confidence that: • It handles Java object-oriented features resulting in simple components and complex – the changed parts behave as intended interactions – the unchanged parts are not adversely affected by the modifications – inheritance • Can be very expensive, especially in some contexts – polymorphism and dynamic binding – daily re-testing after nightly builds – exception handling – frequent re-testing during development • It handles incomplete programs that play an important role in object-oriented software – for the extreme programming paradigm – components – applications using libraries (e.g., AWT) – subsystems 2. Regression Test Selection 6. DejaVOO: An Implementation of our Regression Test Selection A safe algorithm T-T’ Algorithm for Java Software • requires certain assumptions for safety Program T • ensures that T’ contains all test cases in T that P T’ can expose a fault in P’ Architecture of DejaVOO – same execution environment Execute P / Record coverage – deterministic test runs P’ Version –… P of P Coverage Events T’ JVM Profiler T Matrix Test T’ Selection JVM: Java Virtual Machine 3. Potential Savings Tool ous Danger P 12 12 JIG for P Profiler: JVM Profiling Interface Graph Entities JABA P’ JIG for P' Traversal JABA: Java Architecture for Time to Bytecode Analysis Identify dangerous entities select T’ Time to select T’ + Time to run T’ Time to run 3 3 9 9 < Time to run T T Savings Time to run T’ Prototype GUI for DejaVOO 6 6 • It shows a SeeSoft view of the source code of P 4. Our Safe Regression Test Selection Algorithm: Overview • It highlights the lines of code that have been modified • It displays the test cases to be rerun c. Differentiate G, G’ to find dangerous entities a. Construct graph representations for P and P’ • It lets the user selectively shows which test cases traverse which parts of the G G’ Dangerous Edge G G’ code and vice-versa if() if() if() if() 1 1 2 2 1 1 2 2 doA doB doA doC doA doB doA doC b. Associate test cases in T with entities in P d. Select test cases based on dangerous entities 7. Empirical Studies: Sizes of Selected Subsets of T Subjects % Test Cases Selected 100 • Siena: Event notification system (185 methods), 90 TC TC 80 tc1 tc2 tc3 tc1 tc2 tc3 70 En En 7 versions, 138 test cases, 70% method coverage 60 • Jedit: Text editor (3495 methods), 50 40 en1 X en1 X 30 11 versions, 189 test cases, 75% method coverage 20 • Jmeter: Web-application test tool (109 methods), 10 0 Siena Jedit Jmeter RegExp en2 X X en2 X X 5 versions, 50 test cases, 67% method coverage V1-V7 V1-V11 V1-V5 V1-V9 • RegExp: Regular-expression library (168 methods), Program Name 10 versions, 66 test cases, 46% method coverage * This work was supported in part by a grant from Boeing Aerospace Corporation to Georgia Tech, by National Science Foundation award CCR-9707792 to Ohio State University, and awards CCR-9988294, CCR-0096321, and EIA-0196145 to Georgia Tech, and by the State of Georgia to Georgia Tech under the Yamacraw Mission.