SlideShare a Scribd company logo
Critical Paths for GUI
Regression Testing

        Zheng-Wen Shen
          2005/07/13
References
   Critical Paths for GUI Regression
    Testing. Alexander K. Ames and Haward
    Jie. Univ. of California, Santa Cruz
   http://www.soe.ucsc.edu/~sasha/
    S’04 – Topics in Software Engineering
Outline
   1.   Introduction
   2.   Background
   3.   Methodology
   4.   Evaluation
   5.   Future Work
   6.   Conclusion
1. Introduction
   The goal of regression test selection analysis
    is to answer the following question:




   To apply test selection to test suites, and
    determine the critical unit tests to detect
    which state are the critical paths to test.
   In describing GUI testing
       A state to be the result of a single user
        action or manipulation of the GUI.
       There are paths between states.
       Critical path
2. Background
   Manual Regression Testing
       The manual testing of the interface.
       A time-consuming and labor intensive
        process.
   Automatic Regression Testing
       Capture/Replay tools
       The replay portion can be problematic.
   Unit Testing for GUIs
Comparison of Testing
Techniques
Conventional Process for GUI testing




Modified Process for GUI Testing
GUI call graphs
   A call graph as opposed to a CFG
       The vertices of the graphs represent the
        states of the GUI
       The edges within the graph show action
        taken in the manipulation of the GUI that
        shall bring in from one state to the next.
       The weights represent how many times the
        test traverses the same states.
   G = (V, S, e, x)
       p = [s1, s2, …, sn], n>2
       p = [s1, v1, s2, v2, …, vn-1, sn], n>2
GUI Regression Selection
3. Methodology
   3.1   Assumptions
   3.2   Test Case Data Capture
   3.3   XML Parsing
   3.4   Unit Test
3.1 Assumptions
   The test cases also have some
    redundancy paths.
   The Standard GUI classes perform
    according to the specification.
   The next version of the tested
    software will not have any dramatic
    changes.
       The applications being tested is that
        given an implementation of the
        applications with separate GUI and
        non-GUI components.
         Pure frontend for presentation V.S.
          backend or business logic layers.
       Our focus in testing is strictly on the
        functionality of the user-interface.
3.2 Test Case Data Capture
   To capture the test case data we use a
    capture/replay tool – Abbot.
   Abbot has provided us with the test
    case data in XML format.
   We introduce a testing aide that reads
    the XML data.
The Abbot’s XML test script
3.3 XML Parsing
3.4 Unit Test
   After the critical paths have been
    identified, we need to check the
    correctness of the states.
   Use a JUnit regression framework.
4. Evaluation
1.   Jdai
2.   Numerical Chameleon
3.   Huckster
4.   BeatsByDesign
4.1 Data for test case parsing
Plotting exec time for number
of test cases
4.2 Test Implementation
JDAI Testcase 1: Image Rotation
JDAI Testcase 2: Image Info Edit
5. Future Work
   To build the next version to be
    extensible with respect to the XML DTD.
   Automate the coding of the unit tests
    directly from processing the captured
    GUI test suites.
6. Conclusion
   We see that GUI regression tests have
    redundant steps which are critical to the
    functioning of the GUI and deserve sufficient
    testing.
   Performing the unit tests for critical states will
    save much time and testing versus manually
    trying to set up the tests without knowing
    them or going through the manual testing
    process.
Jdai (Java Digital Album Infrastructure)
Numerical Chameleon
Huckster
BeatsByDesign

More Related Content

PPTX
Basis path testing
PDF
Cyclomatic complexity
PPTX
Control Flow Testing
PPT
Qat09 presentations dxw07u
PPT
White box testing
PPTX
Feature Selection Techniques for Software Fault Prediction (Summary)
ODP
White box ppt
PPTX
Unit 3 Control Flow Testing
Basis path testing
Cyclomatic complexity
Control Flow Testing
Qat09 presentations dxw07u
White box testing
Feature Selection Techniques for Software Fault Prediction (Summary)
White box ppt
Unit 3 Control Flow Testing

What's hot (20)

PPT
Dynamic analysis in Software Testing
PPT
Testing Fundamentals
PPT
Software Testing Techniques
PPTX
Software Testing Methodologies
PPTX
White Box Testing
PPT
Software Testing Techniques
PPTX
Sta unit 2(abimanyu)
PPTX
States, state graphs and transition testing
PDF
Evaluating Model Testing and Model Checking for Finding Requirements Violatio...
PPTX
Black box software testing
PPTX
Sta unit 4(abimanyu)
PPS
Lesson 2....PPT 1
PPTX
The Current State of the Art of Regression Testing
PDF
A Model To Compare The Degree Of Refactoring Opportunities Of Three Projects ...
PPTX
States, state graphs and transition testing
PPT
20041221 gui testing survey
PPTX
Introduction to White box testing
PPT
Black box & white-box testing technique
PPTX
20100522 software verification_sharygina_lecture02
DOC
Cs6502 ooad-cse-vst-au-unit-v dce
Dynamic analysis in Software Testing
Testing Fundamentals
Software Testing Techniques
Software Testing Methodologies
White Box Testing
Software Testing Techniques
Sta unit 2(abimanyu)
States, state graphs and transition testing
Evaluating Model Testing and Model Checking for Finding Requirements Violatio...
Black box software testing
Sta unit 4(abimanyu)
Lesson 2....PPT 1
The Current State of the Art of Regression Testing
A Model To Compare The Degree Of Refactoring Opportunities Of Three Projects ...
States, state graphs and transition testing
20041221 gui testing survey
Introduction to White box testing
Black box & white-box testing technique
20100522 software verification_sharygina_lecture02
Cs6502 ooad-cse-vst-au-unit-v dce
Ad

Similar to 20050713 critical paths for gui regression testing (20)

PPT
2.5 gui
PDF
Geoff & Emily Bache - Specification By Example With GUI Tests-How Could That ...
PPTX
User interface testing By Priyanka Chauhan
PDF
Gui path oriented test generation algorithms paper
PPT
20051019 automating regression testing for evolving gui software
PDF
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
PPT
6months industrial training in software testing, ludhiana
PPT
6 weeks summer training in software testing,ludhiana
PPT
6 weeks summer training in software testing,jalandhar
PPT
6months industrial training in software testing, jalandhar
PPT
Software testing mtech project in jalandhar
PPT
Software testing mtech project in ludhiana
PPTX
Test design techniques
ODP
Alexandre.iline rit 2010 java_fxui_extra
PPTX
Software Testing 3/5
PDF
20070514 introduction to test ng and its application for test driven gui deve...
PPTX
Software Testing_mmmmmmmmmmmmmmmmmmmmmmm
PPT
AutoTest.ppt
PDF
Jemmy Introduction
DOC
Testing terms & definitions
2.5 gui
Geoff & Emily Bache - Specification By Example With GUI Tests-How Could That ...
User interface testing By Priyanka Chauhan
Gui path oriented test generation algorithms paper
20051019 automating regression testing for evolving gui software
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
6months industrial training in software testing, ludhiana
6 weeks summer training in software testing,ludhiana
6 weeks summer training in software testing,jalandhar
6months industrial training in software testing, jalandhar
Software testing mtech project in jalandhar
Software testing mtech project in ludhiana
Test design techniques
Alexandre.iline rit 2010 java_fxui_extra
Software Testing 3/5
20070514 introduction to test ng and its application for test driven gui deve...
Software Testing_mmmmmmmmmmmmmmmmmmmmmmm
AutoTest.ppt
Jemmy Introduction
Testing terms & definitions
Ad

More from Will Shen (15)

PDF
20180717 Introduction of Seamless BLE Connection Migration System (SeamBlue)
PPTX
16格筆記讀書法
PDF
Bade Smells in Code
PDF
Intro To BOOST.Spirit
PDF
20060411 face recognition using face arg matching
PDF
20060411 Analytic Hierarchy Process (AHP)
PDF
20050314 specification based regression test selection with risk analysis
PDF
20041113 A Test Generation Tool for Specifications in the Form of State Machine
PDF
Junit Recipes - Elementary tests (2/2)
PDF
Junit Recipes - Elementary tests (1/2)
PDF
Junit Recipes - Intro
PPT
20060712 automated model based testing of community-driven open-source gui ap...
PPT
20060927 application facades
PPT
20111018 boost and gtest
PPTX
Data collection for field studies
20180717 Introduction of Seamless BLE Connection Migration System (SeamBlue)
16格筆記讀書法
Bade Smells in Code
Intro To BOOST.Spirit
20060411 face recognition using face arg matching
20060411 Analytic Hierarchy Process (AHP)
20050314 specification based regression test selection with risk analysis
20041113 A Test Generation Tool for Specifications in the Form of State Machine
Junit Recipes - Elementary tests (2/2)
Junit Recipes - Elementary tests (1/2)
Junit Recipes - Intro
20060712 automated model based testing of community-driven open-source gui ap...
20060927 application facades
20111018 boost and gtest
Data collection for field studies

Recently uploaded (20)

PPTX
MYSQL Presentation for SQL database connectivity
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Empathic Computing: Creating Shared Understanding
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
Cloud computing and distributed systems.
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Spectroscopy.pptx food analysis technology
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
A Presentation on Artificial Intelligence
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
MYSQL Presentation for SQL database connectivity
Encapsulation_ Review paper, used for researhc scholars
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
The AUB Centre for AI in Media Proposal.docx
Chapter 3 Spatial Domain Image Processing.pdf
Empathic Computing: Creating Shared Understanding
Spectral efficient network and resource selection model in 5G networks
Cloud computing and distributed systems.
A comparative analysis of optical character recognition models for extracting...
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Review of recent advances in non-invasive hemoglobin estimation
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Spectroscopy.pptx food analysis technology
Building Integrated photovoltaic BIPV_UPV.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
Assigned Numbers - 2025 - Bluetooth® Document
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
A Presentation on Artificial Intelligence
20250228 LYD VKU AI Blended-Learning.pptx

20050713 critical paths for gui regression testing

  • 1. Critical Paths for GUI Regression Testing Zheng-Wen Shen 2005/07/13
  • 2. References  Critical Paths for GUI Regression Testing. Alexander K. Ames and Haward Jie. Univ. of California, Santa Cruz  http://www.soe.ucsc.edu/~sasha/ S’04 – Topics in Software Engineering
  • 3. Outline  1. Introduction  2. Background  3. Methodology  4. Evaluation  5. Future Work  6. Conclusion
  • 4. 1. Introduction  The goal of regression test selection analysis is to answer the following question:  To apply test selection to test suites, and determine the critical unit tests to detect which state are the critical paths to test.
  • 5. In describing GUI testing  A state to be the result of a single user action or manipulation of the GUI.  There are paths between states.  Critical path
  • 6. 2. Background  Manual Regression Testing  The manual testing of the interface.  A time-consuming and labor intensive process.  Automatic Regression Testing  Capture/Replay tools  The replay portion can be problematic.  Unit Testing for GUIs
  • 8. Conventional Process for GUI testing Modified Process for GUI Testing
  • 9. GUI call graphs  A call graph as opposed to a CFG  The vertices of the graphs represent the states of the GUI  The edges within the graph show action taken in the manipulation of the GUI that shall bring in from one state to the next.  The weights represent how many times the test traverses the same states.
  • 10. G = (V, S, e, x)  p = [s1, s2, …, sn], n>2  p = [s1, v1, s2, v2, …, vn-1, sn], n>2
  • 12. 3. Methodology  3.1 Assumptions  3.2 Test Case Data Capture  3.3 XML Parsing  3.4 Unit Test
  • 13. 3.1 Assumptions  The test cases also have some redundancy paths.  The Standard GUI classes perform according to the specification.  The next version of the tested software will not have any dramatic changes.
  • 14. The applications being tested is that given an implementation of the applications with separate GUI and non-GUI components.  Pure frontend for presentation V.S. backend or business logic layers.  Our focus in testing is strictly on the functionality of the user-interface.
  • 15. 3.2 Test Case Data Capture  To capture the test case data we use a capture/replay tool – Abbot.  Abbot has provided us with the test case data in XML format.  We introduce a testing aide that reads the XML data.
  • 16. The Abbot’s XML test script
  • 18. 3.4 Unit Test  After the critical paths have been identified, we need to check the correctness of the states.  Use a JUnit regression framework.
  • 19. 4. Evaluation 1. Jdai 2. Numerical Chameleon 3. Huckster 4. BeatsByDesign
  • 20. 4.1 Data for test case parsing
  • 21. Plotting exec time for number of test cases
  • 23. JDAI Testcase 1: Image Rotation
  • 24. JDAI Testcase 2: Image Info Edit
  • 25. 5. Future Work  To build the next version to be extensible with respect to the XML DTD.  Automate the coding of the unit tests directly from processing the captured GUI test suites.
  • 26. 6. Conclusion  We see that GUI regression tests have redundant steps which are critical to the functioning of the GUI and deserve sufficient testing.  Performing the unit tests for critical states will save much time and testing versus manually trying to set up the tests without knowing them or going through the manual testing process.
  • 27. Jdai (Java Digital Album Infrastructure)