We all know that since the early ‘90s, Internet usage has exploded. Buying online, booking a trip or communicating with friends and relatives are just a few examples of what all of us are doing every day. The continuous development of broadband connectivity has also made easy the growth of those services and, as more bandwidth becomes available, quality will continued to improve as well. Considering this evolution and looking at the details of its capabilities, it appears Rich Internet Applications are one of the most important elements to improve the user experience in the modern Internet era.
From HTML to RIA
First let's explore how we got to where we are today by looking at the major steps in the development of the Internet.
Back in the ‘90s, HTML came out and was quickly established as the main markup language for web pages. HTML allows images and objects to be embedded and can be used to create interactive forms. You can create structured documents through a defined semantic model, but essentially HTML was designed to deliver static content. This was the birth of the web as we know it today.
In 2004 "Web 2.0" was used for the first time by Tim O'Reilly. This term describes an evolution of the web toward greater simplicity and interactivity and technically speaking, it brings on the front of Rich Internet Applications (RIAs).
RIAs today are the latest evolution of the web. Following HTML and .NET, RIAs now enable more dynamic and interactive applications, more intuitive UIs, and data availability at any time through real time communication.
RIA: Technologies and Advantages
The advantages of RIAs are numerous and include:
Real-Time Information: Push
Earlier we talked about the greater complexity of the users interactions. RIAs and push seem to be able to help here. Push is a way to communicate between client and server, the dialog being initiated by the server and not the client. It's the opposite of what we are used to seeing in earlier web applications in which the user first sends a request to obtain a response from the server. This new way of exchanging information gives Web Apps a new dimension. Without any specific action, users can follow their usual flow and simultaneously get alerts about events they defined themselves. This communication mode is widely used in banking and trading apps where responsiveness is not merely important, but critical.
Adoption by the Industry
A survey by Service-now.com in 2010 about web CRM adoption showed that 81% said that they were currently using a web CRM instead of a desktop app, and an additional 12% were considering replacing desktop CRM with a web app. This survey pinpointed the fact that RIAs were not only a part of our web environment, but tended to be viewed as the standard in the industry.
In becoming an industry standard, web application technologies must also be subject to improvements in optimization and reliability. Like standard websites, RIAs must ensure sufficient performances to satisfy users. Web load testing has been in existence for about 20 years and brings valuable information and benefits to testers. Primarily it helps by improving the quality of websites. But what about load testing RIAs? Is it the same activity and do the tools remain the same?
Load-Testing RIAs: The Tools
To answer this last question - yes tools are pretty much still the same in terms of the information they can provide. But tool vendors must keep up with the latest technologies in order to meet the needs of RIAs. We said that an RIA is much more interactive than any website. Technically speaking, this means a large flow of requests and responses are generated, much more than for a typical website. Technologies like Push and Streaming can create hundreds of requests, whereas the user might have only executed three clicks. New complex behaviors are the consequence of the RIAs and therefore load testing tools must follow this trend by being more responsive to the needs of emerging technologies.
If tool vendors really want to answer RIA needs, their tools have to integrate automatic recognition of RIA frameworks. They must enable testers to rapidly create business case transactions. The new tool must be intuitive, RIA ready but without ignoring the existence of conventional HTTP websites.
RIAs represent the next step toward a more interactive, efficient, and easy-to-use web. They are becoming a standard for the industry and therefore must be optimized to ensure good performance for the users. Load testing is essential to effectively optimize the performance of these new technologies. Because of the change in how RIAs handle client / server interactions, special consideration must be given to testing methodology and tooling. The RIA trend is now fully upon us. Are you ready?