Discussions

News: 10 Ways To Build and Test Rich Internet Applications (RIA)

  1. Rich Internet Applications (RIA) use modern agile software development techniques to build highly-usable and highly-functional applications for deployment over the Web. Software architects routinely accept that whatever technology consumes an information source will also have capacity to handle complex data, sophisticated user interaction, and the workflow of an application's business logic.

    Today's Web is a rich set of competing approaches to deliver RIA. The user community is already equipped to run your application when you choose a RIA techniques.

    Pretty much any technique is viable. That puts the emphasis on which approach is easist to test and deploy.
    • Web 1.0 - Everything in the user interface is text, forms, and links. Java spawned the framework approach to building Web 1.0 applications. Selenium, TestMaker, and others provide fast and easy test construction and operation through automatic record/playback or writing unit tests in a high level language. Click here to see the TestMaker tutorial. Lately Web page performance optimization through HTTP Archive (HAR) support has become the rage.
    • Ajax - Web pages with asynchronously running Javascript functions. Javascript functions change the Web page content dynamically, validate user input dynamically, presents live back-end data, and communicates with one or more backend systems as needed. The asynchronous nature of the Javascript functions makes test construction challenging. Javascript adds thousands of new Web objects that most test tools do not recognize and procedurally oriented test tools struggle to keep the test in synchronization with the application state. TestMaker providesautomatic test construction and operation through automatic record/playback or writing unit tests in a high level language, including support for Ajax Web objects and automatic synchronization.
    • WebKit - Safari, Chrome, most mobile and table devices, and Amazon Kindles use WebKit-based browsers for user interaction. WebKit is widely used and well known in the developer community. Wells Fargo Bank, for example, deploys a private-label package of Chrome to provide user interaction with its applications (as opposed to the entire public Web) to its employees. Tools like Sahi and TestMaker Object Designer work really well to plug-in, record, and drive WebKit applications.
    • Flex and Flash - Flex components provide a rich display of media (photos, video, audio, animations) within a component in a Web page or packaged as a desktop application (using Adobe Air.) Flex provides the ActionScript language for building complex workflows within Flex components. There are mappings from Java to ActionScript. Adobe provides the Flex Automation APIs to make Flex components testable. Record/playback or build a unit test of a Flex or Flash component that appears within the Web interface of your application. Watch a short screencast demonstrating these APIs.
    • Oracle Forms and Java Applets - Applets provide a high degree of control and precise function delivery.  Oracle Forms uses Java Applet technology to deliver applications that access Oracle database contents through defined workflows. Oracle uses Forms technology in its own Oracle Application Suite. PushToTest designed TestMaker Java Applet Technology (JAT) to provide record/playback testing for Oracle Forms and other Applet based applications. Watch a screencast showing TestMaker JAT in action.
    • Silverlight - Microsoft's answer to HTML 5 and Adobe Flex. Build and deploy workflow based application components for delivery across the Web using typical Microsoft technology (Visual Studio, ASP.net, and others.) Various open source efforts emerged to test Silverlight, including a unit test for Silverlight with Selenium.
    • Terminal Sessions - Terminal session services like Citrix deliver highly functional, easily administered applications by using virtualization technology to run an application remotely. Users see the application through a virtual terminal server. Upgrading the application is easy - upgrade the single centrally hosted application. There is no need to use network bandwidth to move a component - such as a Flex or Ajax app - to the user. Of course, the terminal server client needs to be installed for every user or terminal device. I like  Enteros' solution for functional testing and performance testing solution for Citrix based applications.
    • Message-based Applications - The communication between a RIA client and the backend introduces scalability challenges. Watch a screencast I made with Greg Hoelzer of TIBCO to learn how Big Data and NoSQL help build scalable and high performance RIA.
    What do you think about this list?

    -Frank

    Sources:
    http://solacesystems.com/blog/technology/web-messaging/latency-and-rias/
    http://marketshare.hitslink.com/report.aspx?qprid=0&qpcustomd=1
    http://www.webkit.org/blog/188/safari-hits-622-market-share/

     
  2. Re: Citrix Load testing[ Go to top ]

    Enteros load testing for Citrix technology is available both in enterprise and in cloud. In addition to using it for a windows and .NET application it has a great used to simulate browser clouds. For example with the Citrix in EC2 we can simulate 1000 IE browsers, 1000 Firefox and 1000 Chrome with the single load test in a matter of seconds.

    Enteros Citrix UI load testing technology also enable relay of HP QTP scripts as a load test - this way all investment into functional scripts development can be leveraged for load testing.

    Enteros Citrix UI load testing technology support very sophisticated UI load testing methods, such as object synchronization, bitmap synchronization and approximate bitmap synchronization, to mention a few

    Enteros Citrix UI load testing solution is currently used by large US and international customer.

    For enquiries, please email ron at enteros dot com