Monday, December 20, 2010

User Forum Posts

Beginning in mid-2010 we have directed all technical support questions to the eValid User Forum. We have learned that when one user has an issue, all users can profit from the answer.

Here is an additional selection of some of the posts that we think would be of general interest.

Wednesday, December 15, 2010

Holiday Greetings! Here's Our Year-End Special Gift To Everyone

Please accept our very best wishes for a Happy Holiday Season and a Prosperous New Year.

As a special promotional offer, valid only until 15 January 2011, we will provide a license -- including a 1-year maintenance subscription -- to any eValid product bundle (Regression Testing, Server Loading, Site Analysis) for just $995. The only requirement is that the order be handled via credit card and be completed before close of business on 15 January 2011. Click here for the Complete Offer Details.

HAPPY HOLIDAYS!

Monday, December 13, 2010

eValid vs. TruClient

Question Recently Posted On The eValid User Forum:
Hey eValid! What do you think about HP's announcement of their TruClient technology? Isn't this what you guys do? --WebTestGadfly

Our Response On The Forum:
Yes, true client based testing and performance analysis -- including server loading -- is what we have been offering with our solution for many years. We believe we were the first to put this idea out there, and we believe we have the very best everything-in-the-browser test engine possible.

The HP solution appears (we have not yet had much direct experience with it) to be based on the Selenium solution, in which JavaScript executions drive the browser. If that's the case, then the objections we have always expressed about the JavaScript approach would apply equally to HP's offering: High overhead, skewing of timing data, lack of scaling, and the requirement to be a programmer to get useful results.

On a positive note many here at eValid think that HP's announcement represents a real "sea change" in the community. Previously the position by the "big three" was that simulating the behavior of an AJAX user on an application could be adequately handled with the "http/s traffic generation" methods that have been highly developed over time.

The "sea change" is that at least one of the "big three" has explicitly admitted that to accurately simulate an AJAX user you really DO have to use a complete browser. So this is a victory -- perhaps even a genuine vindication, if you will -- for the eValid approach, which has ALWAYS been based on the use of the fully automated eValid browser.

Sunday, December 12, 2010

Recent and Upcoming Conferences & Technical Community Events

Here are links to some technical meetings that may be of interest to WQN readers:

Community events like these deserve very careful consideration!

Friday, December 10, 2010

Selected User Forum Posts

Beginning in mid-2010 we have directed all technical support questions to the eValid User Forum. We have learned that when one user has an issue, all users can profit from the answer.

Here is an additional selection of some of the posts that we think would be of general interest.

Wednesday, December 1, 2010

BizDev Opportunities with eValid

People often ask us, is there some way to partner with eValid? How can we support our customers with eValid better? What are the available partnering or BizDev opportunities.

We welcome inquires about Business Development Opportunities from qualified firms worldwide. The possibilities can include such areas as: PerformanceTest service partnerships, testing of AJAX applications, licensing of eValid technology, development of custom branded versions of the eValid test enabled browser, support to contractors with Commercial Licenses, etc.

If this catches your attention, we want to hear from you! Please Contact Us with your idea and we will respond quickly!

Monday, November 29, 2010

Selected User Forum Posts

Beginning in mid-2010 we have directed all technical support questions to the eValid User Forum. We have learned that when one user has an issue, all users can profit from the answer.

Here is an additional selection of some of the posts that we think would be of general interest.

Saturday, November 27, 2010

Webinar: AJAX Performance/Load Testing

Test Complex AJAX Applications Quickly
Run 1,000's of Browser Users (BU's) Easily
Use Realistic Loads To Pinpoint Server-Stack Problems

Wednesday, 8 December 2010
2:00 PM Eastern Time / 11:00 AM Pacific Time

QA/Testing/Tuning/Performance groups need to qualify performance of complex AJAX web applications -- within strict budget and time constraints -- to make sure their server-stack setups can meet the need.

The traditional methods of ramping up load, based on using HTTP/S simulations or "VUs", don't always work when asynchronous AJAX applications are involved. VU's don't do AJAX very well.

eValid server loading methods offer both quick-to-create realistic and fully synchronized AJAX functional tests, and can lift those tests into performance/loading scenarios that can involve 100's or 1,000's or 10,000's of Browser Users ("BUs") per machine.

In this webinar you'll learn: how special eValid commands overcome problems with variable-time playback dependency; how to create a full-reality AJAX test quickly; how to adjust it to be totally self-synchronizing under stressed conditions; how to incorporate it in an eValid load test scenario; how to launch 100's or 1,000's or 10,000's of Browser User (BU) instances; and, how to analyze consolidated performance summary files to identify server-stack bottlenecks.

This unique approach demonstrates how eValid becomes a genuine force multiplier in your web application performance testing efforts.

Webinar Topic Summary:
  • eValid Architecture and Structure: How eValid functional and performance tests work.
  • Functional Testing: How to make reliable recordings of AJAX applications.
  • Making AJAX Tests Safe: How to augment test scripts for complete AJAX synchronization.
  • Creating Realistic LoadTest Scenarios: How to use the LoadTest scenario editor to create realistic LoadTest control scripts.
  • Running Heavy LoadTests: How to launch single and multiple-instance runs using "compute cloud" resources.
  • Finding Bottlenecks: How to read the LoadTest and other raw data to help spot server-stack problems.
You are cordially invited to attend this free Webinar.

Sunday, November 14, 2010

Illustration of eValid Structural Commands

From time to time users ask us to provide more examples of how to use the special eValid structural testing commands. These commands provide a way to extract, save, read, and insert values into the DOM of a page.

You would typically use these kinds of eValid commands to convert a script that you have recorded from life (using the eValid recording engine) into one that is immune to changes in the content, or even in the structure, of the page you are testing. This technique is the antidote to the "brittle test" issue -- the complaint made about the record/play method that the recorded scripts break too easily.

Almost every eValid "from-life" recorded script command has a structural equivalent that can be derived easily using the command lexicon and the details of the page that you find from the eValid PageMap command.

It's even possible to use the structural commands to manipulate key variables from within a page. The Value Setting Loop example explains one way to use these special commands to extract a session id from a page and then insert that same session id into the query-string section of a page. This kind of scripting method applies to any number of values that you want to save locally and then communicate back into your playback script. That's a powerful feature worth taking advantage of.

Saturday, November 13, 2010

User Forum Posts

Beginning in mid-2010 we have directed all technical support questions to the eValid User Forum. We have learned that when one user has an issue, all users can profit from the answer.

Here is an additional selection of some of the posts that we think would be of general interest.

Please Contact Us if you have questions about any of these topics.

Friday, November 12, 2010

eValid Used at Sacramento State

We're pleased to pass on the news that the eValid web testing system is being used as an example testing suite at California State University at Sacramento in a course taught by Prof. Ahmen Salem on Software Verification and Validation.

Prof. Salem's students are downloading and using eValid in their laboratory work for the CSc 131 and CSc 234 courses, which involve both graduate and undergraduate students, throughout the Fall 2010 semester. Their work with eValid involves both functional testing of selected AJAX applications and generating server loads with multiple eValid instances.

Wednesday, November 10, 2010

Synchronizing Multiple eValid Instances

In many of our fixed-price PerformanceTest Service Projects a common requirement is to provide a sharp increment in the total number of BUs -- a kind of "step function" for the server stack that acts to "ring out" problems the same way an step function signal does for an electronic circuit.

eValid provides multiple techniques to do this, all of based on the use of the internal synchronization/logic commands such as SyncOnText. When (for example) 100's or 1,000's of eValid BUs are all running in parallel and they are all waiting for a particular DOM element to take on a particular value, the total "width" of the step function measures out to about 1-2 seconds, even when the BUs are located on separate machines.

The real world results we get doing this kind of step function are very interesting because a near-simultaneous burst of new activity can often overload servers, load-balancers, database back-end machine, etc. A lot of performance and diagnostic data in a very short time.

Tuesday, November 2, 2010

Recent and Upcoming Conferences & Technical Community Events

Here are links to some technical meetings that may be of interest to WQN readers: Community events like these deserve very careful consideration!

Friday, October 22, 2010

Small and Medium Enterprise (SME) Support

Test Complex AJAX Applications Quickly and Efficiently
Run 1,000's of Browser Users (BU's) Easily and Efficiently
Monitor End-User Performance Accurately
Analyze Websites From The Client Perspective
Very Attractive SME License Offers

Wednesday, 27 October 2010
2:00 PM Eastern Time / 11:00 AM Pacific Time

In small and medium enterprises the world over, QA/Testing/Performance groups often face the job of qualifying the quality and performance of complex web applications -- including AJAX applications -- and are expected to do this within severe budget and time constraints.

eValid offers a comprehensive and self-contained solution to 99% of web application testing issues that is optimized for use in Small and Medium Enterprises (SMEs).

In this webinar you'll learn how eValid's features overcome common problems with variable-time playback dependency; how to create a full-reality AJAX regression test quickly; how to lift a test into a sever loading scenario; that launchs 100's or 1,000's of Browser User (BU) instances; and, how to set up a site analysis scan to validate a complete website.

Overall, you'll see how easily eValid can become a genuine force multiplier in your company's web application quality assurance, testing and performance tuning projects.

This Webinar Will Discuss:

* eValid Architecture: How eValid functional testing, monitoring, performance testing and site scanning components.
* Functional/Regression Testing: How to make regression recordings -- including complex AJAX applications.
* Imposing Server Load: How to create a LoadTest scenario and run it against your servers, with 100's or 1,000's of BUs.
* Creating a Realistic Monitor Script: How to provision a script for use as a monitoring agent for complex applications -- including AJAX.
* How to Scan a WebSite Quickly and Accurately Search criteria and limits setup to yield a very effective site scan.

You are cordially invited to attend this free Webinar.
REGISTER NOW!

Wednesday, October 20, 2010

eValid for Use in Coursework at Universidade Federal de Campina Grande (UFCG)

We recently provided copies of eValid for use in coursework at Universidade Federal de Campina Grande (UFCG) and here are some comments by one of the students.

What course was this for at UFCG?
I'm currently taking undergraduate classes in the course of Computer Science at UFCG.

The professor name is Patricia Machado.

What was your goal for the demonstration.
The goal of the demonstration was to show to the crowd a demo of a tool. The teacher choose a bunch of tools test related, and I was asked to perform a demo of eValid.

What about eValid functionality did you show off and what were the impressions you got?
I've focused on the test functionality. Basically I've created a test on a website, then I've modified the website and ran the test again, showing that the test was resulting in a error.

Besides, I took a look on the performance analysis functionality, and I've really appreciated it.

I really enjoyed the [page] metrics.

What was the reaction of the others?
Everybody enjoyed the presentation, and the teacher was really impressed about all functionalities provided by eValid.

May we use your name and email address?
Sure you can, just let me know as soon as it happens, please.

I have nothing else to say, other than congratulates the team for the good job. I'm also very satisfied about this kind of contact you guys have provided me and I would be very glad if this kind of behavior keep coming.

Cheers!

Felipe Vieira,
UFCG Student
(felipe29vieira@gmail.com)

Thursday, September 30, 2010

User Forum Posts

Beginning in mid-2010 we have directed all technical support questions to the eValid User Forum. We have learned that when one user has an issue, all users can profit from the answer.

Here is an additional selection of some of the posts that we think would be of general interest.

Please Contact Us for additional details about any of these topics.

Wednesday, September 15, 2010

Recent and Upcoming Conferences & Technical Community Events

Here are links to some technical meetings that may be of interest to WQN readers: Community events like these deserve very careful consideration!

Friday, September 10, 2010

High BU-Count Server Performance Testing Projects

eValid users are already aware of the use of multiple eValid instances -- called Browser Users (BUs) -- to generate 100% realistic load on servers. Each BU runs as a separate Windows process, and each can handle very complex applications including AJAX and database-related applications.

To get high BU counts requires that we use two methods:

  • The first method involves making OS parameter changes to increase the size of the virtual memory, increase the desktop heap size, and change the performance option to optimize for background operations.
  • Even with these adjustments, each desktop user still runs up against a limit on the number of GDI Objects per user session. To overcome this constraint, we open additional user accounts on the driver machine.

Using EC2 cloud machines to drive very heavy BU-count loads, we usually employ 8-core High-Memory and/or High-CPU machine images. One such machine, properly configured, yields 1,000+ BUs per machine depending on the test duty-cycle and machine resource use. All of these methods come together in our PerformanceTest projects, which offer load generation up to 100,000 BUs in parallel,

Wednesday, August 25, 2010

User Forum Posts

Here are some eValid User Form posts of interest to the greater eValid community:

Please Contact Us for additional information about any of these topics.

Wednesday, August 18, 2010

The Fuss About ID Tags

One of the biggest advantages eValid has is its Adaptive Playback feature. This feature compensates for non-consequential web page changes by pivoting on page element's HTML ID Tags structure. The basic idea of an ID Tag is to insert something "constant" into the page HTML, and most web page editors and production systems assure fixed IDtags and assure that they are kept unique (although uniqueness is not a requirement). The ID tags were recorded into the original page, and so long as they don't change, Adaptive Playback makes sure the test runs OK. To assure full disclosure, however, eValid always reports successful use of Adaptive Playback as a non-fatal Warning message in the test's event log.

A simple example is an HTML anchor tag -- just a regular dynamic link -- where the URL and/or visible text can change but eValid can still work correctly even when the visible text changes or when the underlying URL changes -- so long as the ID tags are left alone.

When ID Tags Change: But, if the ID tags on a page DO change there's nothing to pivot on and the Adaptive Playback feature will either fail or at best give a misleading result. The test that relies on constant ID tags, in turn, will also fail. Not the best possible outcome at all.

In fact there are many applications where ID tags change and for good reason. There are some environments where the ID tags are automatically generated with new values every time the page is edited and re-published. In THAT case, pivoting tests on ID tags clearly won't be effective. Tests that ought to be OK now show false negative results.

Structural Testing Enters The Picture: In this case, a slightly stronger mode can be used to provide protection for tests even when ID tags are non-constant. What such tests do is rely on Structural/Algorithmic Testing -- where you use as a pivot any feature of the web page that know WILL be constant over time. While it takes a bit longer to create such a "structural test" the benefit is a playback that continues to reliably indicate a valid page even when the internals change.

Tuesday, August 10, 2010

Recent and Upcoming Conferences & Technical Community Events

Here are links to some technical meetings that may be of interest to WQN readers:

Tuesday, July 20, 2010

Current User Forum Posts

Beginning in mid-2010 we have directed all technical support questions to the eValid User Forum. We have learned that when one user has an issue, all users can profit from the answer.

Here is an additional selection of some of the posts that we think would be of general interest.

Monday, July 19, 2010

Structural Testing: Making Web Tests More Durable

We often hear users complaining that their web pages changed and the tests that used to PASS yesterday now FAIL. Is there anything that can be done to have tests endure page changes that don't affect functionality, they ask?

The answer lies in the use of the Structural/Algorithmic Testing testing approach. Instead of basing test on properties of the page, when a particular feature is likely to move around, the test is based on (pivots on) that feature. The result (as the table outlines) is a little bit more work in exchange for a much higher level of durability -- without any loss in test quality (no increase in false-negative results).

A simple technique that we recommend, a Manual Script Creation Process, takes the mystery out of converting a "from life" recording into a highly durable validation test. Once the key page elements are identified, you modify the script using the Structural Testing Commands.

P.S. If this structural testing approach still isn't strong enough for your needs, with some additional programming effort you can exploit the eValid Programmatic Interface [EPI] to create a C++ program that runs your test at any level of durability you want.

Saturday, July 10, 2010

User Forum Posts

Beginning in mid-2010 we have directed all technical support questions to the eValid User Forum. We have learned that when one user has an issue, all users can profit from the answer.

Here is an additional selection of some of the posts that we think would be of general interest.

Wednesday, July 7, 2010

User Forum Posts

Beginning in mid-2010 we have directed all technical support questions to the eValid User Forum. We have learned that when one user has an issue, all users can profit from the answer.

Here is an additional selection of some of the posts that we think would be of general interest.

  • What's The Impact Of This On The "Reality" Of The Playbacks? -- The cache is a unitary resource, and eValid instances must share it during multiple-BU playbacks, but, this turns out to be a conservative assumption.
  • Making A Recording Versus Scripting A Test -- The eValid approach makes creating the script so easy, our recommended approach is to "record first, script later".
  • Why is having a lot of BUs running such a big deal? -- For many modern web applications -- especially those which use AJAX methods -- having an actual user do the test playback assures 100% realism.
  • Structural Testing For Web Apps -- There are special eValid "structural testing" commands that allow a script to be completely independent of inconsequential page changes.
  • A Sequence of HTTP References -- There is a special facility in eValid to generate a sequence of HTTP Get's that correspond to the actual sequence of page components that comprise a full page download.
  • Microsoft SkyDrive Applications -- The Microsoft SkyDrive based applications -- common office utilities like a word processor or a spreadsheet -- actually test quite well with eValid, but they are among the more challenging applications to test.
  • Link Checking -- There's a special eValid dynamic link check command that automatically visits every link on a page, even when the page is generated dynamically.
  • Constant ID Tags -- When a web page has permanently-assigned ID tags the theses can "pivot" on those internal identifies, but even when the ID tags are dynamic it is still possible to obtain reliable tests.
  • Running A Very Large Scan -- When the eValid site analysis "spider" is scanning a website you have to remember that to do its work properly eValid has to download every page. If the page it scans to is "bad" for some reason then that may stop the scan.

Friday, July 2, 2010

About The Browser User Controversy

About The Browser User Controversy

Key Idea: In creating realistic load for performance testing of AJAX applications it's critical to simulate users realistically, and for this reason the trend is toward using Browser Users (BUs). Why is this so important? And how many BUs can you get on one machine? On 10 machines? On 100 machines?

The question often comes up: What is all this ruckus about "browser users"? Why is it such an important?

Introduction

The general discussion you're probably referring to is about server loading methods. The goal in such projects is to simulate large numbers of users to do "web performance testing" in general. And, more specifically, to do "AJAX applications performance testing" in particular. The claim is made that the usual methods -- which typcially are based on simulating HTTP/S traffic -- don't work with AJAX.

There are [at least] two dimensions to this discussion:

  1. The simulation of users needs to be realistic if you are to believe the results; and,
  2. It is very difficult to get good scaling factors so that your realistic sessions impose realistic load.

About AJAX Applications

AJAX applications are NOT stateful and typically involve complex interactions between the JavaScript (JScript) programs in the browser and various programs running in the server that cooperate with each other. And, because it is "A"JAX it is "A"synchronous by nature.

Consequently, the big issue with testing an AJAX application is timing.

Now, the use of HTTP/S protocol traffic simulation is insufficient for AJAX applications because HTTP/S is "memoryless" -- whereas AJAX applications do have internal state. A "memoryless" simulation can't remember any state, and therefore can't wait for download work to be completed.

The way most HTTP/S loading approaches overcome that is to put in user "think time" or "waits" -- so that the traffic is slow enough to account for typical delays. This is good practice, but...what happens when the server slows down?

No matter how long a Wait you put in, there is ALWAYS a load level at which the Wait times are "not long enough" and the test fails. When your AJAX tests "fail to sync" you are out of luck. But an eValid script playback, given that it has been adapted to be self-synchronizing, won't have these timing issues. You'll never "fail to sync" -- because the script has programming in it that directs the eValid browser to wait in just the right ways.

Creating Realistic Load
There are two main ways to create load on a server:

  1. Virtual Users (VUs) -- This methods uses simulated HTTP/S protocol traffic to produce the effect of a user running a specific application.

    This approach scales well -- because all that is needed is to generate HTTP/S traffic, and this can be done with simple HTTP Get commands. On the other hand, the use of a stateless protocol disables end-user reality when you have an AJAX application under scrutiny

  2. Browser Users (BUs) -- Running a test playback with an actual browser instance, which is what eValid does.

    The scaling issue here is more complex, because to run 10, or 100, or 1,000 BUs requires quite a lot of compute power. Typically, with eValid BUs, we find that you will run out of RAM first, and so on a typical XP box you will max out at about 100 BUs per user. (Interestingly, our experience is that you run out of RAM first and we don't usually have problems with I/O capacity with higher loading levels).

    To get to the 1,000 BU level -- or to even higher BU counts -- you will need to have a fairly strong machine (RAM is the scarce resource) and use multiple user accounts.

At the end of the day, if you imagine a 100-BUs loading scenario, what you have is a group of eValid instances each running a separate playback script and each one independently acting like an AJAX application user. Any question about realism is moot. You're actually running real browsers. And, your load, performance, and testing results show you accurately and easily what the end-users are experiencing.

Thursday, June 24, 2010

New Review of eValid Published

We're always pleased when a new review of eValid is published, and in this case we'e particularly pleased to have an eValid in the well know Methods & Tools web site and no-fee magazine published by Franco Martinig, who operates out of Vevey, Switzerland, EU.

Software developers may know that Martinig has been covering the world of software development methods and tools for over a decade. His first issue appeard in early 1993 (based on his software development newsletter published in French since 1991), and since then he has covered a wide range of software development. Martinig's material generally focuses on the more practical aspects of software development, and he is well known as an editor/publisher who is not afraid to express an opinion when it comes to practical realities.

Here is the actual eValid Review [PDF].

Thursday, June 17, 2010

Webinar: Cloud-Based AJAX Performance Testing

Test Complex AJAX Applications Quickly and Efficiently
Run 1,000's of Browser Users (BU's) Easily and Efficiently
Apply Realistic Loads To Find Server Bottlenecks

Wednesday, 23 June 2010
2:00 PM Eastern Time / 11:00 AM Pacific Time

QA/Testing/Performance groups often face the job of qualifying the performance of complex AJAX web applications -- and are expected to do this within severe budget and time constraints. Another major hurdle in validating capacity for an AJAX app is assuring that the performance tests are realistic. The traditional methods of ramping up load, based on HTTP/S simulations, don't always work when asynchronous AJAX applications are involved.

The eValid PerformanceTest solution offers both quick-to-create realistic and fully synchronized AJAX functional tests, and can lift those tests into performance/loading scenarios that can involve 100's or even 1,000's of Browser Users (BUs) per machine.

In this webinar you'll learn how special eValid commands overcome problems with variable-time playback dependency; how to create a full-reality AJAX test quickly; how to adjust it to be totally self-synchronizing under stressed conditions; how to incorporate it in an eValid load test scenario; how to launch 100's or 1,000's of Browser User (BU) instances; and, how to read the consolidated result test performance summary files.

With this approach you'll see how eValid becomes a genuine force amplifier in your company's web application performance testing efforts.

This Webinar will Discuss:
  • eValid Architecture and Structure: How eValid functional and performance tests work.
  • Functional Testing: How to make live recordings of AJAX applications.
  • Making AJAX Tests LoadTest Safe: How to validate tests for complete synchronization.
  • Creating a Realistic LoadTest Scenario: Using the LoadTest scenario editor to create effective LoadTest control scripts.
  • Running Wide LoadTests: How to launch single and multiple-instance runs "in the cloud".
  • Monitoring and Interpreting Test Results How to read the standard LoadTest reports.

You are cordially invited to attend this free Webinar.

REGISTER NOW!

Tuesday, June 15, 2010

Selected User Forum Posts

Here is a selection of recent posts to the eValid User Forum that should be of interest to the eValid community.

  • Testing Web Forms -- The best thing to do is to "record from life" and then make careful modifications to achieve the best overall test results. This minimizes costs and maximizes benefits.
  • Can I Use eValid in Several Different Accounts? -- The standard license supports one user at a time, but on a terminal services machine that can support many different users non-simultaneously.
  • Multiple User Accounts -- You may have to have an EPRISEnn feature to allow multiple simultaneous users.
  • Capture The Total -- The way to do this is to write some simple structural commands that extract the DOM value, save it locally, and then compare it with the expected value.
  • JavaScript Menu -- To capture a dynamic menu the best solution is to use the eValid PageMap and from that data captured there write a simple structural sequence to manipulate the list/menu.
  • Cloud Based Test Solution -- The key advantage of using "cloud resources" is that they are inexpensive and VERY powerful. That route is how eValid is able to offer 1,000's of "browser users" on a regular basis.
  • To Convert A eValid Script -- Any eValid script is easily mapped into the corresponding C++ passage needed for EPI operation. After compilation you have a separate executable that runs the playback.
  • Testing A Smart GWT Application With Webdriver -- The issue with some GWT applications is that the ID tags change dynamically. What we do to handle this is to focus on the "fixed point" properties of the page that do NOT involve the use of ID tags. This seems to produce reliable scripts.
  • Desktop Based Application -- The desktop is a unitary resource, so special care must be given to scripts that exploit data on the desktop. eValid has a MUTEX Lock/Unlock operator that helps to synchronize playbacks.
  • Google's Images -- When pages have a log of dynamic JavaScript (JScript) the eValid "IndexElementMouseOver" command can save the day.

Tuesday, June 1, 2010

Recent and Upcoming Conferences & Technical Community Events

Here are links to some technical meetings that may be of interest to WQN readers: These events all deserve careful consideration, so please take a look at them!

Thursday, May 20, 2010

User Forum Posts

Here is a selection of interesting recent queries and responses in the eValid User Forum:

Please Contact Us for additional information about any of these topics.

Saturday, May 15, 2010

Scaling Tests To 1,000's of BU's

As the web becomes more and more pervasive, and as AJAX applications become more and more sophisticated, having an application that "scales" well in terms of achieved user performance is becoming a critically important issue. As our tests of the AJAX-based Financial Reporting System illustrated, eValid was able to mount 1,000 "Browser Users" instances, or BU's, each running a LoadTest-safe AJAX playback fully independent of each other. Typically we used 100 BU's per machine.

Because of some recent advances, we're now able to run these same kinds of tests, using Cloud-Based resources, with 1,000 of BU's per machine, with extremely good accuracy and reality. Using ten machines in the Cloud equals 10,000 BU's.

To help introduce these new capabilities we are making a special short-term offer of Across-The-Board Discounts on both our PerformanceTest Services and our Server Loading Bundle

Monday, May 10, 2010

Cloud-Based AJAX Performance Testing

Test Complex AJAX Applications Quickly and Efficiently
Run 1,000's of Browser Users (BU's) Easily and Efficiently
Apply Realistic Loads To Find Real-World Bottlenecks

Wednesday, 19 May 2010
2:00 PM Eastern Time / 11:00 AM Pacific Time

QA/Testing/Performance groups often face the job of qualifying the performance of complex AJAX web applications -- and are expected to do this within severe budget and time constraints. Another major hurdle in validating capacity for an AJAX app is assuring that the performance tests are realistic. The traditional methods of ramping up load, based on HTTP/S simulations, don't always work when asynchronous AJAX applications are involved.

The eValid PerformanceTest solution offers both quick-to-create realistic and fully synchronized AJAX functional tests, and can lift those tests into performance/loading scenarios that can involve 100's or even 1,000's of Browser Users (BUs) per machine.

In this webinar you'll learn how special eValid commands overcome problems with variable-time playback dependency; how to create a full-reality AJAX test quickly; how to adjust it to be totally self-synchronizing under stressed conditions; how to incorporate it in an eValid load test scenario; how to launch 100's or 1,000's of Browser User (BU) instances; and, how to read the consolidated result test performance summary files.

With this approach you'll see how eValid becomes a genuine force amplifier in your company's web application performance testing efforts.

This Webinar Will Discuss:


  • eValid Architecture and Structure: How eValid functional and performance tests work.
  • Functional Testing: How to make live recordings of AJAX applications.
  • Making AJAX Tests LoadTest Safe: How to validate tests for complete synchronization.
  • Creating a Realistic LoadTest Scenario: Using the LoadTest scenario editor to create effective LoadTest control scripts.
  • Running Wide LoadTests: How to launch single and multiple-instance runs "in the cloud".
  • Monitoring and Interpreting Test Results How to read the standard LoadTest reports.

You are cordially invited to attend this free Webinar.

REGISTER NOW!

Monday, May 3, 2010

Financial Reporting System Case Study

It always gets interesting when you're doing something truly real! Here's a summary of one of our recently completed PerformanceTest projects:

  • Our goal was to create and run a series of relatively long (3 min to 10 min) AJAX test scripts, applied against a complex financial analysis website, and with ramped load up to 1,000 emulated users (EUs). The purpose was to identify performance issues at high load levels.
  • The nine scripts recorded from life had ~1,000 lines overall. To make certain that they did not de-synchronize due to loads on the server, we added ~200 DOM-based synchronization commands. Most of these were simple SyncOnText commands, but some involved quite complex structural motion sequences followed by SyncOnElementProperty commands.
  • We ramped up the scenario mix at the rate of +10 EUs per minute for 100 minutes until we had 1,000+ running, using a total of 10 machine image "in the cloud". The playback repeat counts were set quite high so at the end of the startup all of the EU's were running in parallel.
  • At the end of the runs the machines had completed a total of ~6,000 playbacks that accounted for ~500 TeraBytes of download!

Many issues of performance and capacity were resolved with the performance data from this run. Here are additional project details: Financial Reporting System 1,000 User Case Study

Friday, April 23, 2010

Reliable AJAX Recordings

Many users ask "How do we create tests of AJAX pages that are self-synchronizing?" It turns out that there is a very Simple AJAX Synchronization Methodology that records an AJAX application that stays in sync -- and the recording is direct from the eValid GUI "from life". The idea that grew from our experience in test development is to record a SyncOnText command after every action you take on the web application.

You do this by highlighting some text phrase on the page that MIGHT be subject to AJAX de-synchronization, and then clicking the eValid: Record > Validate > Selected Text pulldown from the GUI. The effect of this shows up in the Script Window as a SyncOnText command that explicitly mentions the text you had highlighted.

At playback time, when the eValid engine processes the SyncOnText command and then waits until that specific text shows up on the screen. It does this by interrogating the DOM for the current page, and if the DOM is not yet complete (the page has not fully downloaded) it will continue to wait until it DOES validate that phrase.

In the rare case when this simple method doesn't work you'll find that eValid has a full lexicon of SyncOnXXXX type commands, and these include some very sophisticated check loops based on specific values of page properties.

Tuesday, April 20, 2010

User Forum Posts

Here are some eValid User Form posts of interest to the greater eValid community:

Please Contact Us for additional information about any of these topics.

Friday, April 9, 2010

Current User Forum Posts

Here are some eValid User Form posts of interest to the greater eValid community:

Please Contact Us for additional information about any of these topics.

Wednesday, April 7, 2010

Webinar: Advanced AJAX Testing

Test Complex AJAX Applications Quickly and Efficiently
Regression Tests, Monitoring Runs, Extreme Reliability
Meet SLA Monitoring Requirements With Ease

Wednesday, 21 April 2010
2:00 PM Eastern Time / 11:00 AM Pacific Time

Many QA/Testing groups face the often daunting task of qualifying complex AJAX web applications, within severe budget and time constraints. Either for functional behavior confirmation or for on-going SLA monitoring.

The biggest problem in testing AJAX is assuring that tests play back reliably -- and the biggest obstacle is the essential asynchronous operation of an AJAX application. Scripted wait times are unreliable and always cause problems. The solution is to use DOM-based playback synchronization -- a unique eValid capability.

In this webinar you'll learn how special eValid commands overcome problems with variable-time playback dependency by synchronizing on internal AJAX application page properties. You'll learn how to find a pivot object on a page, how to use eValid's structural commands to focus on the right action element, how to issue the action, how to choose the correct DOM synchronization command, and how to confirm that effective playback synchronization has been obtained.

With these techniques, you'll see how eValid becomes a real force amplifier in your company's web application testing. Resilient eValid tests are simple and fast, realistic yet precise, accurate and reliable. An easy way to meet SLA requirements.

This Webinar Will Discuss:

  • eValid Architecture and Structure: How eValid makes testing web apps easy.
  • Functional Testing: How to make live recordings of your AJAX application.
  • Regression/Validation Testing: How to validate outputs to confirm correct operation.
  • Identifying Synchronization Trouble Spots: How to identify when you need to augment your recording with explicit synchronization.
  • AJAX Application Synchronization: How to fully-synchronize AJAX apps to play safely and reliably.
  • Monitoring: How to schedule test runs to feed Network Status Reporting engines.

You are cordially invited to attend this free Webinar.

REGISTER NOW!

Friday, April 2, 2010

Recent and Upcoming Conferences & Technical Community Events

Here are links to some technical meetings that could be of interest to WQN readers:

These events deserve careful consideration, so please take a look at them!

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.

Tuesday, March 23, 2010

eValid Confirmed Operational With IE9

There has been a lot of interest lately in the new IE9 browser from Microsoft -- which is out for evaluation in a kind of pre-pre-beta release. The question arises: Does eValid work OK with IE9?

We downloaded the IE9 distribution from Microsoft and installed it on a machine running Windows 7 and then launched eValid. As you may know, eValid relies in part on Windows DLLs that are also part of Windows support for the IE browser.

We're happy to report that eValid worked just fine!

The only anomaly we saw was that when you ask eValid to identify the version of IE it is running on, eValid reports that it is IE8, rather than IE9. We're betting that is a simple documentation oversight.

As IE9 comes closer and closer to general release we'll keep on confirming full compatibility. We'll keep users posted of any glitches that occur.

Monday, March 15, 2010

Recording Guide Updated

In 99% of the cases, when you are using eValid to record a web application test, the recording process is accurate and complete: "What you see and what you do is what eValid records and plays back." But that other 1% is often where web application testers run into difficulty -- when you think you've recorded an action correctly but it doesn't play back correctly.

The key to success is to know what you are trying to do, on what kind of object, and what kind of action you expect. Naturally, this requires that you know the application you are testing fairly well, but even if you do there are those "unusual cases".

So we have put together a complete eValid Recording Guide that shows the full range of objects you might see in a web application page, and how to respond to each one. You might note that use of the eValid PageMap will be a big help in seeing what's really behind what you see on the page.

Friday, March 12, 2010

eValid and Agile Methods

We have been asked recently by a number of eValid users and potential users to comment about how eValid fits into a "Agile Method" development environment?

Here are the the Wikipedia descriptions for Agile Software Development and the closely related description of Internet-Speed Development.

Obviously this is a very complex topic, but the way these methods differ from the traditional (and more formal) Waterfall Model of software development is that "Agile" methods allow the software development to "break the process loop" and focus on results, rather than holding up progress pending completion of various process steps and creation of required documentation.

In other words, that results count as much or more than plans or hopes or dreams. That having something actually WORKING could be a very good thing to have happen!

In that context, then, we think eValid as a test engine fits very well into the notion of an Agile Method because it allows all of these:

  1. Easy and quick creation of functional test that can be used to demonstrate and validation OK operation. This is the eValid record/playback paradigm.
  2. Easy and quick "lifting" of these tests into realistic server loading experiments that can validate capacity on 100's of simulated users. This is eValid's LoadTest mode.
  3. Sideways conversion of functional tests into RIA Monitoring. Here you would be provisioning scripts for regularly scheduled, batch mode data collection.
  4. Selective drop of functional tests into your regression test suite. eValid's eV.Manager does this pretty much automatically.

That's pretty agile, isn't it?

Webinar: Testing AJAX Applications 101

Test Complex AJAX Applications Quickly and Reliably
Functional/Regression Tests, RIA Monitoring, Loading
All From The Same Tests, The Same Test Engine


Wednesday, 24 March 2010
2:00 PM Eastern Time / 11:00 AM Pacific Time

QA departments face the daunting tasks of Testing Web Applications using complex AJAX elements and interactive components, within the constraints of limited development time and testing schedules. Not to mention the mandatory "budget friendly" requirement. Would you like to see your work and limited resources multiplied, without breaking a sweat (and without breaking the Bank for that matter)?

Discover how to find a real force amplifier in your company's web application testing: eValid is there to help. Testing AJAX Web Applications can be simple and fast, realistic yet precise, accurate and reliable. More important even is that you will learn how to analyze your web applications from the real End-User Perspective, with reports delivered automatically, all in real time.

Find all the bottlenecks and problem areas in your AJAX web applications and web sites before your potential customers do. They will never tell you, they'll simply click away.

This Webinar Will Discuss:
  • eValid Architecture and Structure: How eValid makes testing web apps easy.
  • Functional Testing: How you can record your AJAX testing so that eValid can reproduce it.
  • Regression Testing: How to validate outputs to confirm operation.
  • AJAX Application Testing: How to fully-synchronize AJAX apps to play safely and reliably.
  • Monitoring: How to schedule test runs to feed data for Network Status Reporting.
  • Server Loading: How to amplify functional tests by a factor of 100+ to let multiple AJAX scripts impose realistic server load.

You are cordially invited to attend this free Webinar.
REGISTER NOW!

Wednesday, March 10, 2010

User Forum Posts

Here are some eValid User Forum posts of interest to the greater eValid community:

Please Contact Us for additional information about any of these topics.

Saturday, March 6, 2010

Recent and Upcoming Conferences & Technical Community Events

Here are links to some technical meetings that could be of interest to WQN readers: These events all deserve careful consideration, so please take a look at them!

Wednesday, March 3, 2010

Selected User Forum Posts

Recent Forum posts that'll surely be of interest to eValid users include:

Please Contact Us for additional information about any of these topics.

Thursday, February 18, 2010

Webinar: Less Is More: Web Application Testing Simplified

Powerful Test-Enabled Browser Saves IT Professionals Development Time and Budget. Test Complex Applications -- Including AJAX -- All From The Same Test Script With The Same Test Engine, Simply and Reliably. Re-use Existing Tests for Functional & Regression Testing, RIA Monitoring and Server Loading.

Wednesday, 24 February 2010
2:00 PM Eastern Time / 11:00 AM Pacific Time

In these tough economic times, wouldn't you like to have your work count multiple ways? Wouldn't management like to see a real force amplifier in your testing? How is that possible in a constantly changing, dynamic web environment?

As if that's not enough of a challenge, add in the complexity of testing an AJAX application, where behavior is context sensitive and asynchronous. No wonder you're overwhelmed.

What you need is a proven solution that cuts test development time, amplifies your efforts, and still is easy on your budget. Thanks to eValid's integrated architecture, you can combine essentially all of the critical parts of web application qualification and performance testing.

The eValid web application testing suite will do this...and more. There is no elaborate learning curve; the GUI is simple and intuitive with simple point and click access to most functions. eValid uses a unique in-the-browser test engine to record internal state information into your script, evoke native events during playback, support AJAX synchronization with DOM manipulation commands, and run multiple copies to impose fully realistic load.


This
Webinar
Will
Discuss
  • eValid Architecture and Structure: How eValid makes life easy for you as you test a web application.
  • Functional Testing: How you can record your test activity so that eValid can reproduce it.
  • Regression Testing: How to validate that what you got is what you want.
  • AJAX Application Testing: How to handle complex, asynchronous web applications safely and reliably.
  • Monitoring: How to feed regularly scheduled test run outputs into your Network Reporting System.
  • Server Loading: How to amplifying your functional tests by a factor of 100+ to let a single script impose realistic server load.

You are cordially invited to attend this free Webinar.
REGISTER NOW!

Monday, February 8, 2010

Selected User Forum Posts

Recent Forum posts that'll surely be of interest to eValid users include:

Please Contact Us for additional information about any of these topics.

Friday, February 5, 2010

Special Promotional Offers

You hear a lot of talk about "economic stimulus packages" these days, so we have added one of our own! For a very limited time -- through 28 February 2010 -- we have put together some very attractive "package deals".
  • Server Loading Projects: Straight 10% across off the total cost of any PerformanceTest Project.
  • Regression Test Bundle with Scripts: We'll deliver the complete eValid Regression Test Bundle and three AJAX-aware scripts -- for a really good price!
  • AJAX Monitoring Bundle, AJAX Master and Two Agents with Scripts and Integration: Get the popular eValid Monitoring AJAX Master Station with full provisioning -- including three ready-to-go scripts -- at a big discount off List Price.
  • 30-Day Email AJAX/RIA Monitoring: Try out our Email based monitoring services, including building you a resilient test script, for just pennies per test.

Please check out the Current Promotional Offers page for additional details. Use the Contact Us to get a detailed quote.

Monday, February 1, 2010

Recent and Upcoming Conferences & Technical Community Events

Here are links to some technical meetings that could be of interest to WQN readers: These events all deserve careful consideration, so please take a look at them!

Sunday, January 31, 2010

Welcome to New eValid Users

We'd like to welcome the following new and continuing eValid customers to the growing eValid user community:

Here's an expanded list of several hundred Selected Customers by Industry Sector.

Tuesday, January 19, 2010

Webinar: Regression Testing for AJAX/Web 2.0

Run Regression Tests on Complex, Dynamic Applications
Make Tests Resilient and Robust, Tolerant Of Application Changes

Wednesday, 27 January 2010 — 2:00 PM Eastern Time / 11:00 AM Pacific Time

Peace of mind equals knowing that your web application is performing as you expect. Yet, web applications change in subtle ways, and you want your tests to be tolerant of just the right amount of change, without spending more.

eValid capabilities such as Adaptive Playback, Index/Motion (Algorithmic/Structural) commands, and DOM Checking capabilities can make tests very reliable -- even when page structure and details, but not intent and effect, change drastically -- and even for dynamic Web 2.0 applications, such as Google GWT, Microsoft SkyDrive, or IBM LotusLive iNotes.

Learn how you can gain greater productivity with smaller budgets, maximize your IT investments and get more work done in less time with less energy. Build reliable, robust tests once, and you won't have to worry about them again.

Outline:
  • Architecture: How eValid's unique architecture and implementation makes web application testing easy, reliable, and durable.
  • Advantages: Overcomes HTTP-based recording limitations, maintains internal state during tests, does not conflict with JavaScript execution, fully AJAX synchronizable, small footprint, and very high ROI.
  • Functional test creation: "What you see is what you record is what eValid reproduces."
  • Adaptive Playback: Automated tolerance of basic page changes.
  • AJAX Testing: Test AJAX applications with built-in synchronization and validation, regardless of complexity. Structural testing commands work at the visual level.
  • DOM Synchronization: How to keep asynchronous (AJAX) operations from spoiling your tests.
  • Index/Motion (Algorithmic/Structural) commands: New ways to bullet-proof tests aimed at Web 2.0 applications.
  • eV.Manager Operation: Put your tests into a test suite with central execution control.

You are cordially invited to attend this free Webinar.
REGISTER NOW!


Friday, January 15, 2010

Microsoft Web Apps Technical Demonstrations

You may have heard about Microsoft's new Web Apps offering, announced in September 2009 and currently in the process of being released as part of Microsoft Office 2010, and operating as a Windows Live SkyDrive application. How well does eValid handle this kind of sophisticated AJAX application? To find out we've been developing experimental scripts for the PowerPoint (PPT) and the Excel applications, with very good results.

Monday, January 11, 2010

Current User Forum Posts

Here are some recent posts on the eValid User Forum:

Tuesday, January 5, 2010

Recent and Upcoming Conferences & Technical Community Events

Here are links to some technical meetings that could be of interest to WQN readers: