A Self-Configuring Test Harness for Web Applications - School of ...

tunisianbromidrosisInternet and Web Development

Feb 5, 2013 (4 years and 2 months ago)

101 views

A Self
-
Configuring Test Harness for Web
Applications


Jairo Pava

School of Computing and

Information Sciences

Florida International University

Courtney Enoex

School of Applied Sciences and

Arts

Southern Illinois University

06/19/2008

REU Summer Program

Florida International University

School of Computing and Information Sciences

Yanelis Hernandez

PhD 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



Monitor

1 Detect Web Technologies in Web Application

5 Compute Amount of Code Coverage



Analyze

2 Identify Change in Web Technology

6 Evaluate of Code Coverage



Plan

3 Structure Platform Specific Test Script

7 Generate Test Plan



Execute

4 Execute Test Script

8 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 Applications

Yanelis Hernandez, Tariq M. King, Jairo Pava, Peter J Clarke

International SEKE Conference April 2008



[2] An Integrated Self
-
Testing Framework for Autonomic Computing Systems

Tariq M. King, Alain E. Ramirez, Rodolfo Cruz, Peter J. Clarke

Academy Publisher November 2007



[3] Towards Model
-
Driven Testing

R.
Heckel

and M.
Lohmann

Electr
. Notes
Theor
.
Comput
. Sci. 82(6) 2003



[4] An Architectural Approach to Autonomic Computing

Steven R. White, James E. Hanson, Ian
Whalley
, David M. Chess, Jeffrey O.
Kephart

International Conference on Autonomic Computing 2004



[5] Software Debugging, Testing, and Verification

IBM Systems Journal 2002

17

Questions?


Comments?

End

18