com.meterware.servletunit

Class ServletUnitClient

public class ServletUnitClient extends WebClient

A client for use with the servlet runner class, allowing the testing of servlets without an actual servlet container. Testing can be done in one of two ways. End-to-end testing works much like the HttpUnit package, except that only servlets actually registered with the ServletRunner will be invoked. It is also possible to test servlets 'from the inside' by creating a ServletInvocationContext and then calling any servlet methods which may be desired. Even in this latter mode, end-to-end testing is supported, but requires a call to this class's getResponse method to update its cookies and frames.

Author: Russell Gold

Method Summary
WebResponsegetResponse(InvocationContext invocation)
Updates this client and returns the response which would be displayed by the user agent.
HttpSessiongetSession(boolean create)
Returns the session that would be used by the next request (if it asks for one).
static ServletUnitClientnewClient(InvocationContextFactory factory)
Creates and returns a new servlet unit client instance.
InvocationContextnewInvocation(String requestString)
Creates and returns a new invocation context from a GET request.
InvocationContextnewInvocation(WebRequest request)
Creates and returns a new invocation context to test calling of servlet methods.
protected WebResponsenewResponse(WebRequest request, FrameSelector targetFrame)
Creates a web response object which represents the response to the specified web request.

Method Detail

getResponse

public WebResponse getResponse(InvocationContext invocation)
Updates this client and returns the response which would be displayed by the user agent. Note that this will typically be the same as that returned by the servlet invocation unless that invocation results in a redirect request.

getSession

public HttpSession getSession(boolean create)
Returns the session that would be used by the next request (if it asks for one).

Parameters: create if true, will create a new session if no valid session is defined.

Since: 1.6

newClient

public static ServletUnitClient newClient(InvocationContextFactory factory)
Creates and returns a new servlet unit client instance.

newInvocation

public InvocationContext newInvocation(String requestString)
Creates and returns a new invocation context from a GET request.

newInvocation

public InvocationContext newInvocation(WebRequest request)
Creates and returns a new invocation context to test calling of servlet methods.

newResponse

protected WebResponse newResponse(WebRequest request, FrameSelector targetFrame)
Creates a web response object which represents the response to the specified web request.