Das HttpUnitProtocol ist ein Protocol für die ProtocolFactory für die Integration der HttpUnit. HttpUnitProtocol ist ein Bestandteil von Intersult Testing.
Anwendung#
HttpUnitProtocol ist zunächst ein Protocol, das durch einen einfachen Aufruf mit der ProtocolFactory aktiviert wird.Damit können WAR-Projekte direkt getestet werden, ohne über das TCP/IP-System zu gehen. Es wird eine direkte Stream-Verbindung (java.io) zwischen dem Aufrufer und dem Servlet hergestellt. Die Server-Komponenten können dabei direkt über die web.xml definiert werden, sodass ein WAR-Projekt direkt aufgerufen werden kann.
Das HttpUnitProtocol kann für die Konfiguration von anderen Komponenten wie Abraxas verwendet werden.
Beispiele#
Echo-Servlet#
String message = "Hello World!"; URL url = new URL("unit://localhost/echo"); HttpUnitConnection connection = (HttpUnitConnection)url.openConnection(); connection.setDoOutput(true); connection.addRequestProperty("Content-Type", "text/xml"); IOUtils.write(connection.getOutputStream(), message); String response = IOUtils.readString(connection.getInputStream()); Assert.assertEquals(message, response);
Und in der web.xml:
<servlet> <servlet-name>EchoServlet</servlet-name> <servlet-class>com.intersult.testing.EchoServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>EchoServlet</servlet-name> <url-pattern>/echo</url-pattern> </servlet-mapping>