Your e-Business Partner eValid™ -- The WebSite Quality Authority
Browser-Based, Client-Side, WebSite Mapping & Analysis, Functional Testing and Validation, Server Loading, Page Timing/Tuning, and Quality Monitoring.

eValid -- Structural/Algorithmic Testing
eValid Home

Introduction
The eValid product technology represents an abstraction of web testing that has as its primary goal the development of algorithmic/structural testing rather than programmatic testing. This page identifies key distinctions between these three types of testing:

As the table shows, these three approaches differ in a variety of ways including effectiveness, ease-of-use, test durability, and technical difficulty.

Observations About Functional Testing From Different Perspectives
Topic Record/Play Testing
Paradigm
Structural/Algorithmic
Testing
Programmatic
Testing
Advantages & Disadvantages
Summary Quick & reliable, no training required. Flexible, durable tests, minimal training required. Flexible, durable tests requiring deep programming and web application knowledge.
Relative Degree of Difficulty 1 1.5 10+
Typical Title of User QA Staff Test Engineer Software Developer
Required Skill Set General Technical Knowledge
Web Application Familiarity
General Technical/Engineering Knowledge
Light Programming
Basic Web Application Familiarity
In-Depth Programming
Deep Web Application Familarity
Knowledge Required Application operation (browser based application). Location and description of objects on page, limited knowledge of DOM properties. Programming language, complete DOM details.
What Operator Does Click to record test. Adapt recorded test using index/motion commands. Create complete program to perform desired test action.
Estimated Cost Effectiveness Very high because recordings are so easy to make. High because most scripts can be "developed" from a recorded prototype. Low because scripting without a recording is difficult.
Technology Concerns
Underlying Technology Basis Extracts data from DOM and writes the script automatically. Index/motion commands and DOM-synchronization commands. C++ programming language interface to existing commands as API.
Tolerance for Dynamic Page Changes Adaptive playback overcomes most dynamic changes. Invulnerable to dynamic changes. Invulnerable to dynamic changes.
Operation on Normal (Non-AJAX) Applications Record/Play gets 99+% "what you see and what you do is what eValid records and what eValid plays back". If Record/Play works OK, then the script is the "test algorithm". Not needed.
Operation on Basic AJAX Applications Record/Play forms the basis for the algorithmic test. Identify de-synchronizations, repair them, and you have a good AJAX test. Identify de-synchronizations, write programs to overcome each one separately.
Operation with Complex AJAX Applications Record/Play produced script probably will fail. Augmentation with algorithmic methods needed. Index/motion and DOM-synchronization Use the recording as the specification, requires hand coding in the EPI.
eValid Product Option Description
eValid Product Options eValid
Regression Test Bundle
eValid
AJAX Regression Test Bundle
With PAGEMAP Feature
Index/Motion Commands
eValid/EPI:
eValid Programmatic Interface
With PAGEMAP Feature