HTTP Test Tool
Encyclopedia
HTTP Test Tool is an open source scriptable protocol test tool for HTTP
Hypertext Transfer Protocol
The Hypertext Transfer Protocol is a networking protocol for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web....

 protocol based products like web server
Web server
Web server can refer to either the hardware or the software that helps to deliver content that can be accessed through the Internet....

s, web browser
Web browser
A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...

s, web application
Web application
A web application is an application that is accessed over a network such as the Internet or an intranet. The term may also mean a computer software application that is coded in a browser-supported language and reliant on a common web browser to render the application executable.Web applications are...

s or ICAP
Internet Content Adaptation Protocol
The Internet Content Adaptation Protocol is a lightweight HTTP-like protocol specified in RFC 3507 which is used to extend transparent proxy servers, thereby freeing up resources and standardizing the way in which new features are implemented. ICAP is generally used to implement virus scanning,...

.

Software
Computer software
Computer software, or just software, is a collection of computer programs and related data that provide the instructions for telling a computer what to do and how to do it....

 products are per se not error free. Adding new features, fixing errors and upgrading library versions can all introduce new errors and security holes. A protocol test tool helps to detect errors within HTTP
Hypertext Transfer Protocol
The Hypertext Transfer Protocol is a networking protocol for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web....

 protocol based Software
Computer software
Computer software, or just software, is a collection of computer programs and related data that provide the instructions for telling a computer what to do and how to do it....

. It is very simple and can therefore do bad requests/response to emulate bad or malicious server/client software. There are many more protocol test tools for HTTP
Hypertext Transfer Protocol
The Hypertext Transfer Protocol is a networking protocol for distributed, collaborative, hypermedia information systems. HTTP is the foundation of data communication for the World Wide Web....

 like OpenSTA
OpenSTA
OpenSTA is a feature-rich GUI-based web server benchmarking utility that can perform scripted HTTP and HTTPS heavy load tests with performance measurements. It is freely available and distributable under the open source GNU General Public License. OpenSTA currently only runs on Microsoft...

, ApacheBench
ApacheBench
ApacheBench is a single-threaded command line computer program for measuring the performance of HTTP web servers. Originally designed to test the Apache HTTP Server, it is actually generic enough to test any web server....

, Selenium
Selenium (software)
Selenium is a portable software testing framework for web applications. Selenium provides a record/playback tool for authoring tests without learning a test scripting language . It also provides a test domain-specific language to write tests in a number of popular programming languages, including...

... which also can do stress testing.

There is also a proxy
Proxy server
In computer networks, a proxy server is a server that acts as an intermediary for requests from clients seeking resources from other servers. A client connects to the proxy server, requesting some service, such as a file, connection, web page, or other resource available from a different server...

 to record a browser session.
The HTTP Test Tool supports
  • Run test script
    Test script
    A test script in software testing is a set of instructions that will be performed on the system under test to test that the system functions as expected.There are various means for executing test scripts.* Manual testing...

     for batch mode
  • Act as a client e.g. web browser
    Web browser
    A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...

  • Act as a server e.g. Webapplication
  • Send and receive data
  • Conditional failure on unexpected data
  • Cut definable data from input data stream and store in variables
  • Exectute scripts and pipe the output in to data stream
  • Pipe data stream into a script

Proxy Development

Testing Proxy Server
Proxy server
In computer networks, a proxy server is a server that acts as an intermediary for requests from clients seeking resources from other servers. A client connects to the proxy server, requesting some service, such as a file, connection, web page, or other resource available from a different server...

 or Reverse Proxy
Reverse proxy
In computer networks, a reverse proxy is a type of proxy server that retrieves resources on behalf of a client from one or more servers. These resources are then returned to the client as though it originated from the reverse proxy itself...

 is a special use case. A test script defines a client for requesting and its corresponding server for responding with the Proxy Server
Proxy server
In computer networks, a proxy server is a server that acts as an intermediary for requests from clients seeking resources from other servers. A client connects to the proxy server, requesting some service, such as a file, connection, web page, or other resource available from a different server...

 in between.

A set of such client/server tests can then test the functionality of the Proxy Server
Proxy server
In computer networks, a proxy server is a server that acts as an intermediary for requests from clients seeking resources from other servers. A client connects to the proxy server, requesting some service, such as a file, connection, web page, or other resource available from a different server...

.

Webapplication Development

Testing functionality of a Webapplication is a very common use case. A test script send a request to your Webapplication and do expect a specific answer e.g. a "HTTP/1.1 200 OK" and the Content "Hello World".

The test script performs functionality tests on development and ensure that the application is working the way you expect it.

Webapplication Integration

Webapplication integration normally do need a Webserver configuration change. A set of tests does test the availability and functionality of your services.

Error Reporting

It is very useful for developers if an error report describes how to reproduce the error. A test script (along with a well-defined server configuration) is useful for this.

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK