Tuesday, March 30, 2010

Synchronizing AJAX Playbacks

We have had a lot of interest lately in eValid's ability to synchronize complex AJAX application playback in an efficient and yet 100% realistic way. There is no universal, fixed method for implementing AJAX pages, and therefore there is no 100% perfect algorithm to assuring wait-time-independent fully automatic playback.

However, there are certain aspects to synchronization that are partially generalizable. Here is how the script development process can work as eValid browser-based tests interact with the web server in a typical AJAX application:

  1. Confirm Page Is Present -- Make sure that you are starting in a known place, because loss of synchronization will ruin the test.
  2. Find The Pivot Object -- Choose some place on the page that you know will be present and preferably unique on the page.
  3. Move Up/Down To Action Element -- Move structurally to the desired action point.
  4. Take Acton -- Apply the action (click, text input value, etc.)
  5. Synchronize Completion Of Response -- Make sure you KEEP synchronized.
  6. Repeat (Go Back to Step 1)

There are a lot more details about how this can be done -- using eValid's scripting resources -- at this page: AJAX Synchronization Loop General Description.

No comments: