Friday, May 30, 2008

AJAX Synchronized Testing Example

The AJAX Autocompletion Demo on includes the major methods use in almost any AJAX application.

We've worked up a demo of how eValid reliably handles text input, DOM-based AJAX synchronization, input selection, and result validation activities on this example website. These are the same kinds of actions you would need to perform in testing any AJAX implementation. The eValid Example Script involves use of eValid DOM search, DOM synchronization, and DOM state identification commands.

Thursday, May 29, 2008

New DOM Analysis Command Supports Event Firing

eValid users have been making use of the DOM-based "page motion" capability for some time. These commands let you identify an object in a page based on its properties, and then take an action on the page element you've identified. Scripts made this are particularly attractive because of their ability to tolerate a very wide range of page variability without the tests losing their meaning and effect.

A new eValid command, IndexElementEvent provides a capability in eValid to initiate any kind of action on a selected sourceIndex. The actions available this way are intended to include all possible user-initiated events. The new command is part of the DOM Element Motion/Manipulation commands that are used to construct position/structure independent scripts that operate entirely at the DOM level.

Tuesday, May 27, 2008

New Google Maps Example Illustrates Map Motion Validation

The Google Maps application is one of the oldest and most widely used AJAX applications. Building tests for it is a great way to exercise a web application test engine, so it is natural enough that eValid would use it to illustrate eValid capabilities.

One of the areas that eValid users ask about is the actual map area. How do you drag the display around and confirm (validate) that what you got to today is where you wanted to get to? This is the essence of a functional validation test for the application.

Moving the map display necessarily involves using desktop actions, so from the outset we know that the tests that involve this kind of work won't be "desktop safe". In spite of the desktop-required limitations, can these tests be made reliable and repeatable?

The answer turns out to be YES, as illustrated in this Google Maps Motion Consistency Demonstration Script. The main point about this example is that it performs two kinds of synchronization (one on the URL and one based on DOM values), and then reliably does the image drag operations, followed by a checksum verification of the resulting map image.

Thursday, May 22, 2008

20th International Conference on Computer Aided Verification

CAV 2008.
The CAV conference has held a key role in software quality from a theoretical side as well as for practical applications. In most prior rendictions, and in this year's version as well, the CAV content has aimed at very high-level issues that directly or indirectly affect system reliability, fault tolerance, internal quality, and the like. The important -- and often unwisely underemphasized -- area of formal verification technology is unusually well-represented at CAV 2008.

Monday, May 19, 2008

13th ICRST, 16-20 June 2008, Venice, Italy

This the conference EVERYBODY wants to go to, because of the technical content of course, but perhaps also because of the location: ICRST 2008. You can tell that "location" is important when the top page of a conference web page opens up with a Google Map picture showing the location right on the banks of the Lido de Venezia. Think of the quality of the environment, and the food...

ICRST is one of the longest-running conferences in the field devoted to real-world applications of all kinds of quality technologies. Historically, ICRST's industrial presentations have been very stong, having become in effect the venue of choice for disclosure of important results on real-world reliabilty and quality work. This year's program follows that tradition.

Oh, one more detail that may or may not be important: it seems that one of the vaporetta stops is right in front of the conference venue. How convenient! How delightful!

Saturday, May 17, 2008

Backbase/Duke's Bookstore Example

AJAX continues to be an area of strong interest in web testing, and in AJAX applications there seems to be two recurring issues: playback time access to the DOM, and playback synchronization.

To illustrate how to do both of these we've put together the Backbase/Duke's Bookstore Example & Demonstration Script. The main feature of the script is the use of a DOM value to achieve the required playback synchronization. To do this required some investigation of the page properties using the eValid PageMap feature. As you can see from the example script several variations of the SyncOnSelectedObjProperty command were used. Note that the synchronizations are done 100% inside the browser (i.e. they do not require use of the desktop); this means two or more of these same scripts could be running in parallel if you wished (or need to).

Friday, May 16, 2008

Testing the Google Gmail Application

The Google Gmail system is a widely used AJAX application that presents some special problems for testing, not the least of which is the process of synchronizing a test playback. We're all familiar with the "Loading..." message...and the problem in setting up a test script is how to make the playback wait until the mail file is ready to be processed

The solution, as described in our Testing the Google Gmail Application writeup, is to synchronize on a visible text entity. As you'll see in the example script, this means having the test playback wait until the string "You are currently using" appears on the screen. Note that this synchronization is done 100% inside the browser (i.e. it does not require use of the desktop); this means two or more of these same scripts could be running in parallel if you wished (or need to).

Thursday, May 15, 2008

eValid Confirmed Operational on MS Windows XP/SP3

We're pleased to confirm that eValid V8 is fully checked-out on the most-recent version of Microsoft XP/SP3. This kind of confirmation is part part of our regular automated QA process, in which eValid's eV.Manager is used to run a complete library of scripts to make sure everything is as it should be.

Wednesday, May 14, 2008

eValid Product Review (Spanish)

In response to a query on a blog titled "Because Your Son Could Be A Tester", Mr. Raul Sanchez Echeverria posted a very nice eValid Review (Spanish). It's a positive review, but we do think that he missed a couple of points. Here's what we posted on his Blog to augment his comments:
  • It turns out that normal-page sync is built in and automatic — using 6+ different page complete signals, and this includes frames. For AJAX applications there exist eValid commands to do that work — but they require some knowledge of the AJAX application.
  • Interaction with JavaScript is pretty much automatic, also, but you need to turn "mouseover recording" ON to get the best results. Moreoever, if that is insufficient there is a family of built-in DOM manipulation commands that give you direct access to each element on the page by its DOM characteristics.
  • On comparing images, did you not see the Validate Selected Image command? It records the checksum of the image so you don't have to save the images and compare them separately (but of course you can do that if you wish).
  • LoadTest runs are limited by RAM and if you use the THIN playback engine you can get 200+ per PC image. It is possible to consolidate all of the data from multiple PC images, and there is a utility to do that for you, but in LoadTest runs the main thing is to impose load on the server.
Thanks once again to Raul for his deligent work.

Tuesday, May 13, 2008

Backbase/Explorer Demonstration

The AJAX environment supported by Backbase includes an example called the Backbase Explorer, which illustrates key features of how the Backbase system works. Our Backbase/Explorer Example & Demonstration Script shows hoe eValid can be used to test this example. Our workup uses both a DOM-based playback synchronization step, and a series of position-independent (index motion) commands.

Monday, May 12, 2008

eValid Maps Live AJAX Example Illustrates Motion Command Operation

The Microsoft Maps Live site is a sophisticated AJAX application that has some powerful features that are very difficult to test.

As an illustration of how well eValid handles the Maps Live application here is an example script description, Microsoft Maps Live AJAX Testing Demonstration. The writeup includes a description of the properties of the application, what makes it difficult to test, and how we approached the test script development. There are two examples:
  • Script #1 illustrates searching and validating within the Maps Live system.
  • Script #2 shows how eValid searches for a particular location and then shows a particular map sequence indicating where that location is.
The most important feature of these examples is that in playback mode (as might be used in monitoring) both examples are entirely Desktop Safe scripts without requiring use of Lock/Unlock commands.

Friday, May 9, 2008

Production Monitoring Success Story

Here is an example of how one of our customers has been using eValid to perform Rich Internet Application (RIA) monitoring websites. As explained in our Production Monitoring summary, the offering provides detailed Quality of Service (QoS) to a variety of commercial clients.

Wednesday, May 7, 2008

Commercial Licenses for eValid Available

eValid has a license option that gives a corporate user a very flexible way to apply eValid operations in a wide range of commercial activities. An eValid Commercial License runs on a web-authenticated basis and can be configured for any combination of eValid features.

Tuesday, May 6, 2008

3rd Annual Conference of the Association of Software Testing (CAST 2008)

Scheduled for 14-16 July 2008, Toronto, Canada this is the third rendition of AST's conference, largely engineered by Cem Kaner Ph.D., Professor, Author, and Attorney. CAST 2008 features keynotes by Jerry Weinberg, Bob Sabourin, and Cem Kaner.

Thursday, May 1, 2008

eValid V7 Support Ended

As eValid users are aware, support for prior versions of eValid generally ends a few months after the new version is introduced. We give users plenty of notice that support is going to end. Support for eValid V7 has now officially ended. All technical issues with users of V7 are automatically referred to the V8 level and an upgrade will be required.

Technical Resources

Here are some useful technical resources for eValid users:
  • Take a few minutes to watch some of our Annotated/Animated Movies. You'll find seven that show how eValid works from the GUI level, and three that deal with specific testing situations.
  • If you run into a tricky problem testing a website, you might consider checking out the 40+ entries in our Worked Solutions Resource. You'll find a wide range of already-worked examples showing how eValid solves typical testing situations.
  • For general eValid usage you may wish to check into the set of our "top 99" Power User Tips & Tricks. They cover everything from simple functional testing to detailed LoadTest experiment development.
  • If you have a technical issue with eValid remember that you can use the Submit Script to eValid option in the Help Pulldown option.

If you wish, you can post a comment on this Blog entry and we will answer your question here and/or send you an email.