![]() |
|
|
|
|
HTTP Robot
between browsers and Web applications during the recording mode. It can play back the requests to simulate one or multiple clients and performs diff operations to detect discrepancies between the testing and the baselined versions. Built-in and application-defined diff operators can be used to detect discrepancies.HTTP Robot (HttpRobot) is a state of the art, automatic regression/ performance testing tool for web-based applications.
HttpRobot works as an HTTP/HTTPS proxy server that logs requests/ responses
HttpRobot is flexible, extensible but surprisingly easy to be used. It offers an extensible interface that can include an application specific plug-in during the recording and player modes. An application that uses dynamic parameters and/ or URLS can be easily simulated by this product. And unlike other similar products, no scripting is needed by end users to use the HttpRobot.
Other direct applications of HTTP Robot include web application simulator, automatic performance/ endurance testing and integration.
The HTTP Robot's console window
.
The HTTP Robot's setup configuration window.
Regression test is a process to retest a software for every release to make sure its original features still work the same. This is an important procedure because original features might have been unintentionally broken due to newly added functions or bug fixes. Regression test is usually performed in the same, controlled environment applied with the identical, standardized procedures to ease discrepancy detection..
Manual regression testing is expensive, time-consuming and usually error-prone. HTTP Robot can be configured to extract essential information from both requests and responses and then conduct a diff operation with the counterparts stored in the baselined release. All these can be done automatically to perform thousands or even hundred thousands of cases over night or over the weekend. Regression summary reports are automatically generated
.
The proxy summary report window lists the performance report for recording mode.
The player summary report window lists the performance and regression testing results.
Performance or load test is the procedure to benchmark your application’s processing capabilities, for example, number of requests a server can process per second, number of concurrent users a system can support or the time to process a set of predefined tasks.
Performance test is also an important and necessary procedure to be conducted for each release before deployment or starting a field trial. A system's processing capability may have been unintentionally degraded due to newly added functions or bug fixes. Besides, how does one know the system can sustain 100 or 1000 concurrent users with the satisfied processing speed before starting a field trial.
Manual performance testing is also expensive, time-consuming and usually error-prone. HTTP Robot can be configured to perform performance tests automatically to simulate one or multiple concurrent clients. Performance reports are also generated.
Endurance test is similar to performance test with emphasis on the processing capability for a raining day scenario for a long period of time. For example, ten requests per second for twenty four hours. Since "raining day" scenario is difficult to be generated in real world, a testing robot is usually used to provide the needed scenario, HTTP Robot is an easy but efficient tool to conduct an endurance test.
A web-based application may be too dynamic or too specific to fit into a plain recording-and-playing-back scheme. For example,
The server may generate dynamic tags for each page, the tag will become part of the request parameters for subsequent pages.
A web page may use other components including applets and other middleware technologies, like CORBA, RMI, TIBCO, JMS, JDBC etc. to communicate with the server.
HTTP Robot is configurable and extensible. It allows application or middleware specific plug-ins to be added for both proxy and player modes to support your applications.
Simulating Multiple Clients and Iterations
HTTP Robot can play back logged requests simulating a single client or multiple clients. In either case, HTTP Robot can play back requests in iterative mode using the so called do-loops. For example, the recorded sequence had created only one account into a CRM (Customer Relation Management) system. When playing back, you can let HTTP Robot create 100 or even 100,000 customers into the system. The features of simulating multiple clients and using do-loops make HTTP Robot an effective tool for performing performance, load and endurance tests.
Detecting Discrepancies in Regression Testing
The following diff operations are available to detect discrepancies between a testing and a baselined versions.
Unix diff: using the legacy Unix like diff algorithm
XML diff (with filtering): comparing two XML trees with filtering specifications that an application can specify which nodes to be included or excluded in the comparison.
File size: diff by comparing file sizes of the request or response messages.
Check Sum: diff by comparing the check sum of the request or response messages.
Response Header (and/ or response code): diff by comparing the HTTP response header, including the HTTP response code.
Html Scraping: one can specify the elements of an HTML document to be included/ excluded in the diff comparison.
Application-defined: An application can define its own diff operators.
Screen Scraping and Data Extraction:
HTTP Robot comes with a built-in HTML parser, HtmlScraper, that can parse an HTML page into a tree structure. Unlike other XML-based parsers, HtmlScraper can handle non-well-formed HTML pages, e.g., documents without matching starting and ending tags. You can use built-in user-friendly GUI and utilities, point and click to choose the elements of an HTML that you want to extract, discard or to perform regression testing. See HtmlScraper for details.
An HTML page like this can be parsed and specified using a point-and-click GUI for the regression testing diff operation.
The is the HtmlScraper used for performing HTML parsing and screen scraping.
FAQs:
I need a tool to monitor and debug requests and responses between web clients and servers, not only for HTTP but also for HTTPS. Could HTTP Robot do this?
Yes, HTTP Robot can do it. It monitors traffics in both HTTP and HTTPS.
Does HTTP Robot support cookies?
Yes, HTTP Robot supports cookies.
I'm looking for an HTML screen scraper to extract data from web pages and then want to feed the extracted data to another system or database. Could HTTP Robot do it?
Yes, HTTP Robot has a built-in HTML parser and user-friendly GUIs that allows you to point and click to specify the areas of interest for data extraction. Or if you want you may also consider the HtmlScraper product which contains only the HTML parser and screen scraper.
We are integrating two systems through web pages that were designed for human users. We will be more focused in the integration per se than the regression/ performance testing part. Could HTTP Robot be used for the integration?
Yes, HTTP Robot has all the elements you need for a web interface integration: template data capturing, analysis through HTML parser, extensible API, client simulation and data extraction etc. Not to mention that the same tool can be used to help you perform regression and performance tests down the road. Or if you want you may also consider the HtmlScraper product which contains only the HTML parser and screen scraper.
Our application is very dynamic that a plain recording-and-playing-back scheme will definitely fail. I wonder how HTTP Robot can fit in our application?
HTTP Robot is extensible and allows you to provide the application specific knowledge in the form of a plug-in to simulate your clients exactly like a real one during the player mode.
Our application uses other middleware protocols (e.g., CORBA, RMI, JMS, TIBCO etc.). Could we use HTTP Robot?
Yes, HTTP Robot is extensible and allows you to integrate with other middleware in the form of a plug-in so that it can simulate your clients exactly like a real one during the player mode. Please take a look of our CAST (CORBA Application Simulator and regression/ load Tester) product as an example. We also have solutions for other middleware including RMI, JMS, TIBCO, VITRIA, MQ etc. Please contact us for details.
100% java. Support all major platforms.
Supports HTTP/HTTPS, XML, cookies and SOAP protocols
Plays back requests with dynamic parameters, URL, cookies.
Simulates single or multiple clients, and do-loops
Automatic retries if a request timeouts or fails
Extensible: one can configure the product using application-specific
plug-ins.
HTML Screen scraping feature.
Built-in and application-defined Diff operators.
Regression and performance reports.
Extensible and flexible. Allow you to add application or middleware-specific plug-in during both recording and playback modes..
Requirements
Works with JDK 1.3 or above.
Works in Solaris, HP/UX, Window 2000, Window XP and Linux
Requires Pentium III 800 HZ CPU (for PC) or above with a minimum 1024x768 screen resolution, 16-bit display color, minimum of 256MB of memory and 100 MB of hard drive space.
Evaluation and Web-based Demo:
Please select Download page for an evaluation copy or contact prod@eaiBridge.com for a Web-based demonstration.
HOME | CAST | HttpRobot | HtmlScraper | News| Download | Contact Us Copyright © EaiBridge All rights reserved |