A Self-Configuring Test Harness for Web Applications Jairo Pava School of Computing and Information...
-
Upload
deborah-mosley -
Category
Documents
-
view
215 -
download
3
Transcript of A Self-Configuring Test Harness for Web Applications Jairo Pava School of Computing and Information...
A Self-Configuring Test Harness for Web Applications
Jairo PavaSchool of Computing and
Information SciencesFlorida International University
Courtney EnoexSchool of Applied Sciences and
ArtsSouthern Illinois University
06/19/2008REU Summer Program
Florida International University School of Computing and Information Sciences
Yanelis HernandezPhD Student
• Many Web Application Technologies
• No Standard Test Script Language
• Application May Provide Believable Result
• Migration of Technologies is Difficult and Time Consuming
• Cost of Software Testing Accounts for Fifty to Seventy-Five Percent of Total Development Costs [5]
Motivation
2
Presentation Content
•Background•Problem Statement•Objectives•Implementation•Evaluation Criteria•Project Plan
3
• Autonomic computing is a computing environment with the ability to manage itself and dynamically adapt to change in accordance with business policies and objectives [IBM05]
• IBM first coined the term Autonomic Computing in March 2001.
Background – Autonomic Computing
4
• There are four characteristics that make up Autonomic Computing:– Self-Healing - diagnose and correct problems
– Self-Protecting - able to anticipate and handle security risks
– Self-Configuring - automatically adapt to change
– Self-Optimizing - be able to track changes and act accordingly
Background – Autonomic Computing
5
Background - Regression Testing
• Testing Web Applications is Necessary
• Complex Web Applications Make Testing Difficult
• Regression Testing Points to Code Modifications That Cause Previously Functional Code to Fail
• Allows the Ability to Catch Regression Errors As Soon As They Are Introduced.
• Subtle Changes in Code Can Introduce Errors
6
Background - Automated Testing
• Meta-Model Allows Development of High Level Abstract Test Script Language • Meta-Model Contains Abstract Definitions of Web Application Elements
• Migrating Test Scripts is Challenging if the New Technology is Not Supported By the Current Testing Tool
• “Scripts have to be re-written in the scripting language of a new testing tool, defeating the purpose of test automation.” [1]
7
8
• An Integrated Self-Testing Framework for Autonomic Computing Systems• Tariq M. King, Alain E. Ramirez, Rodolfo Cruz, Peter J. Clarke• Authors developed an autonomic testing framework.
• Towards Model-Driven Testing• Reiko Heckel and Marc Lohmann• Model-Driven Approach to Support Execution of Test Scripts
• A Meta-Model to Support Regression Testing of Web Applications• Yanelis Hernandez, Tariq M. King, Jairo Pava, Peter J. Clarke• Model-Driven Approach to Create High-Level Abstract Test Script
Language
Literature Review
8
Problem Statement
To Develop A Web Application Test Harness that Dynamically Configures Its Test Suite to Generate and Execute Platform Specific Test Scripts .
9
Objectives
• Extend Previous Work by Hernandez et al. [1]• Minimize Human Interaction• Increase Web Technology Support
• Develop Self-Configuring Algorithm• Dynamic Selection of Test Suites• Automatic Execution of Platform Specific Test Script
• Implementation• Design and Test Web Applications
• Deliverables• Technical Report• ACM SAC 2009• ACMSE 2009
10
Implementation
• Design Three E-Commerce Web Applications• Similar Specifications• Different Web Technology Constructs
• HTML• PHP• Ruby on Rails
• Design and Apply Test Cases to Web Applications Using Autonomic Meta-Model
• ASP. Net• AJAX• MySQL
11
Evaluation Criteria
• Design and Apply Pre-Determined Test Cases• Pass• Fail
• Criteria• Accurate Identification of Web Technologies by Monitor• Proper Syntax of Platform Specific Test Script• Successful Execution in Test Tool• Appropriate Decisions Based on Policies
12
Related Work
• Meta-Model• Develop High-Level Abstract Test Script Language• Use Generator to Generate Platform Specific Test Scripts
• One Test Script for Testing Multiple Web Technologies
13
• Monitor1 Detect Web Technologies in Web Application5 Compute Amount of Code Coverage
• Analyze2 Identify Change in Web Technology6 Evaluate of Code Coverage
• Plan3 Structure Platform Specific Test Script7 Generate Test Plan
• Execute4 Execute Test Script8 Perform Policy Guided Decisions
Self-Configuring Algorithm
14
Self-Configuring Algorithm
Web Application
15
Summary
• Autonomic Property of Self-Configuration
• Automatically Identify Web Application Technologies
• Dynamically Configure Test Suite for Test Script Generation
• Generate Test Script
• Execute Test Script in Respective Tool
• Make Decisions Based on Test Results and Policies
16
References
•[1] A Meta-Model to Support Regression Testing of Web ApplicationsYanelis Hernandez, Tariq M. King, Jairo Pava, Peter J ClarkeInternational SEKE Conference April 2008
•[2] An Integrated Self-Testing Framework for Autonomic Computing SystemsTariq M. King, Alain E. Ramirez, Rodolfo Cruz, Peter J. ClarkeAcademy Publisher November 2007
•[3] Towards Model-Driven TestingR. Heckel and M. LohmannElectr. Notes Theor. Comput. Sci. 82(6) 2003
•[4] An Architectural Approach to Autonomic ComputingSteven R. White, James E. Hanson, Ian Whalley, David M. Chess, Jeffrey O. KephartInternational Conference on Autonomic Computing 2004
•[5] Software Debugging, Testing, and VerificationIBM Systems Journal 2002
17
Questions?
Comments?
End
18