by Ovidiu Predescu, Jeff Turner
Anteater is a testing framework designed around Ant, from
the Apache Jakarta Project. It provides an easy way to write
tests for checking the functionality of a Web application or of
an XML Web service.
The type of tests you can write using Anteater are:
- Send a HTTP/HTTPS request to a Web server. When the response comes
back, test that it meets certain criteria. You can check for HTTP
headers and response codes, and validate the response body with
regexp, XPath, Relax NG, or contentEquals tests, plus some binary
formats. New tests can be easily added.
- Listen for incoming HTTP requests at an given URL on the
local machine. When a request comes on that URL, you can check
its parameters and/or content, and send a response
The ability to wait for incoming HTTP messages is something
unique to Anteater, which makes it especially useful when
building tests for applications that use high level SOAP-based
communication, like ebXML or BizTalk. Applications written using
these protocols usually receive SOAP messages, and send back a
meaningless response. It is only later when they inform the
client, using an HTTP request on the client, about the results
of the processing. These are the so-called asynchronous SOAP
messages, and are the heart of many high-level protocols
based on SOAP or XML messages.
Here is a simple example written using Anteater:
<soapRequest description="Post a simple SOAP request"
<namespace prefix="soap" uri="http://schemas.xmlsoap.org/soap/envelope/"/>
<namespace prefix="n" uri="urn:xmethods-delayed-quotes"/>
Anteater provides XML and text logging support, and the ability
to render the logs into HTML reports.