morgand 02/01/15 13:56:02
Added: latka/doc index.xml
Log:
latka docbook before "xpath" validator doco
Revision Changes Path
1.1 jakarta-commons/latka/doc/index.xml
Index: index.xml
===================================================================
<chapter id="latka">
<title>Latka (Version 1.0 Alpha 2)</title>
<sect1>
<title>What is Latka?</title>
<para>
<firstterm>Latka</firstterm> is a functional (end-to-end) testing
tool. It is implemented in Java, and uses an XML syntax to define
a series of HTTP (or HTTPS) requests and a set of
<firstterm>validations</firstterm> used to verify that the request
was processed correctly.
</para>
<remark>
Although Latka currently supports only HTTP and HTTPS
request/response validations, it may be expanded to perform other
sorts of functional testing as warranted.
</remark>
<para>
A simple example of a Latka XML test suite is shown in our
<ulink url="TestCommonsWebsite.xml">sample Latka test suite</ulink>.
When processed, this example would verify that the Jakarta Commons
homepage is present and that all the Commons Components have online
documenation.
</para>
</sect1>
<sect1>
<title>Installing Latka</title>
<sect2>
<title>Requirements</title>
<itemizedlist>
<listitem>JDK 1.3 or better</listitem>
<listitem>
(for optional web application)
Tomcat 4.0 B7 or better - does not work in Tomcat 3.2, untested in other
containers
</listitem>
<listitem>
(for optional SSL support)
Sun JSSE library
</listitem>
</itemizedlist>
</sect2>
<sect2>
<title>General installation</title>
<orderedlist>
<listitem>Download and uncompress the Latka distribution.</listitem>
<listitem>
If you wish to perform Latka test over SSL,
you need to configure your JVM with the Sun JSSE library.
</listitem>
</orderedlist>
</sect2>
<sect2>
<title>Optional web application installation </title>
<orderedlist>
<listitem>
Copy the "webapp/latka-webapp.war" file from the
distribution to the "webapp" directory of Tomcat.
</listitem>
<listitem>
If you have already configured log4j for Tomcat,
you should remove log4j.jar from the /WEB-INF/lib
directory of the Latka webapp.
</listitem>
</orderedlist>
</sect2>
</sect1>
<sect1>
<title>Using Latka</title>
<sect2>
<title>Running the sample tests</title>
<remark>Command-line interface</remark>
<orderedlist>
<listitem>Open a command prompt inside the "bin" directory of the
distribution.</listitem>
<listitem>
Run the Latka batch script on one of the sample XML test suites
(e.g. "latka file:../tests/samples/TestCommonsWebsite.xml ").
</listitem>
</orderedlist>
<remark>Web application</remark>
<orderedlist>
<listitem>Go to the index page of the Latka web application.</listitem>
<listitem>Select "Run a test from the server" </listitem>
<listitem>
In the test directory dialog box, enter the directory:
<latka distrubution directory>/tests/samples
</listitem>
<listitem>Click on one of the tests to execute it. </listitem>
</orderedlist>
</sect2>
<sect2>
<title>Creating your own tests</title>
<para>
(More to come...) Examine the Latka DTD in the conf directory
for a list of all available elements. See the samples for typical syntax.
</para>
</sect2>
<sect2>
<title>Running tests</title>
<remark>Command-line interface</remark>
<orderedlist>
<listitem>Open a command prompt inside the "bin" directory of the
distribution. </listitem>
<listitem>
Run the Latka script with no arguments for information on usage.
</listitem>
</orderedlist>
<remark>Web application</remark>
<orderedlist>
<listitem>Go to the index page of the Latka web application. </listitem>
<listitem>Select "Run a test from the server" </listitem>
<listitem>
In the test directory dialog box, enter the directory where your tests
are located.
</listitem>
<listitem>Click on one of the tests to execute it. </listitem>
</orderedlist>
</sect2>
<sect2>
<title>Creating your custom validations</title>
<remark>(More to come...)</remark>
</sect2>
</sect1>
<sect1>
<title>Latka XML Reference</title>
<!-- REFENTRY: byteLength -->
<sect2 id="latka.ref.byteLength" xreflabel="byteLength">
<title>byteLength</title>
<para>
validates the length of an HTTP(S) response
</para>
<sect3>
<title>DTD</title>
<programlisting> <!ELEMENT byteLength EMPTY>
<!ATTLIST byteLength min CDATA "0"
max CDATA #IMPLIED
label CDATA #IMPLIED></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<informaltable colsep="1" rowsep="1">
<tgroup cols="4">
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="2in"/>
<thead>
<row>
<entry>Name</entry>
<entry>Type</entry>
<entry>Default</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><sgmltag class="attribute">min</sgmltag></entry>
<entry>NUMBER</entry>
<entry><sgmltag class="attvalue">0</sgmltag></entry>
<entry>
Minimum number of bytes required for a valid
response. Implied. Defaults to
<sgmltag class="attvalue">0</sgmltag>.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">max</sgmltag></entry>
<entry>NUMBER</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Maximum number of bytes required for a valid
response. Optional. When absent, there is no
upper limit on the number of bytes in a valid
response.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">label</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Label associated with this validation, which may
be used in programatically generated documentation
or reports. Optional.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref
linkend="latka.ref.validate"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
A <sgmltag>byteLength</sgmltag> validation
passes if the HTTP(S) response is at least
<sgmltag class="attribute">min</sgmltag>
bytes long, and (when specified) at most
<sgmltag class="attribute">max</sgmltag> bytes long.
</para>
</sect3>
</sect2>
<!-- REFENTRY: COOKIE -->
<sect2 id="latka.ref.cookie" xreflabel="cookie">
<title>cookie</title>
<para>
validates the presence of an HTTP(S) cookie in a response
</para>
<sect3>
<title>DTD</title>
<programlisting><![CDATA[<!ELEMENT cookie EMPTY>
<!ATTLIST cookie name CDATA #REQUIRED
value CDATA #IMPLIED
label CDATA #IMPLIED>]]></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<informaltable colsep="1" rowsep="1">
<tgroup cols="4">
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="2in"/>
<thead>
<row>
<entry>Name</entry>
<entry>Type</entry>
<entry>Default</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><sgmltag class="attribute">name</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none, but required</emphasis></entry>
<entry>
The name of the cookie to look for.
Required.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">value</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none, optional</emphasis></entry>
<entry>
The value that the cookie with the specified name should
have (if any).
</entry>
</row>
<row>
<entry><sgmltag class="attribute">label</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Label associated with this validation, which may
be used in programatically generated documentation
or reports. Optional.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref
linkend="latka.ref.validate"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
A <sgmltag>cookie</sgmltag> validation
passes if the HTTP(S) response contains a cookie with the
specified <sgmltag class="attribute">name</sgmltag>.
If a <sgmltag class="attribute">value</sgmltag> is provided,
the cookie must also have the specified value.
</para>
</sect3>
</sect2>
<!-- REFENTRY: CREDENTIALS -->
<sect2 id="latka.ref.credentials" xreflabel="credentials">
<title>credentials</title>
<para>
username/password credentials for Basic HTTP authentication.
</para>
<sect3>
<title>DTD</title>
<programlisting><![CDATA[<!ELEMENT credentials EMPTY>
<!ATTLIST credentials user_name CDATA #REQUIRED
password CDATA #REQUIRED>]]></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<informaltable colsep="1" rowsep="1">
<tgroup cols="4">
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="2in"/>
<thead>
<row>
<entry>Name</entry>
<entry>Type</entry>
<entry>Default</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><sgmltag class="attribute">user_name</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none, required</emphasis></entry>
<entry>User name. Required.</entry>
</row>
<row>
<entry><sgmltag class="attribute">password</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none, required</emphasis></entry>
<entry>Password. Required.</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref
linkend="latka.ref.request"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
Contains credentials for HTTP Basic Authentication.
</para>
</sect3>
</sect2>
<!-- REFENTRY: maxRequestTime -->
<sect2 id="latka.ref.maxRequestTime" xreflabel="maxRequestTime">
<title>maxRequestTime</title>
<para>validates the response time for an HTTP(S) request</para>
<sect3>
<title>DTD</title>
<programlisting><![CDATA[<!ELEMENT maxRequestTime EMPTY>
<!ATTLIST maxRequestTime millis CDATA "30000"
message CDATA #IMPLIED>]]></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<informaltable colsep="1" rowsep="1">
<tgroup cols="4">
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="2in"/>
<thead>
<row>
<entry>Name</entry>
<entry>Type</entry>
<entry>Default</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><sgmltag class="attribute">millis</sgmltag></entry>
<entry>NUMBER</entry>
<entry><sgmltag class="attvalue">30000</sgmltag></entry>
<entry>
Maximum amount of time, in milliseconds, in which
a response must be returned to be considered a
valid response. Implied. Defaults to
<sgmltag class="attvalue">30000</sgmltag> milliseconds,
or 30 seconds.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">label</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Label associated with this validation, which may
be used in programatically generated documentation
or reports. Optional.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref
linkend="latka.ref.validate"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
A <sgmltag>maxRequestTime</sgmltag> validation
passes if the HTTP(S) response is obtained in no more than
<sgmltag class="attribute">millis</sgmltag> milliseconds.
</para>
</sect3>
</sect2>
<!-- REFENTRY: PARAM -->
<sect2 id="latka.ref.param" xreflabel="param">
<title>param</title>
<para>indicates a request parameter as part of an HTTP(S) request to be
executed</para>
<sect3>
<title>DTD</title>
<programlisting><!ELEMENT request (<xref
linkend="latka.ref.paramName"/>, <xref
linkend="latka.ref.paramValue"/>)></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<para>
<emphasis>None.</emphasis>
</para>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref
linkend="latka.ref.request"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
A parameter to be submitted as part of a <sgmltag><xref
linkend="latka.ref.request"/></sgmltag>.
</para>
</sect3>
</sect2>
<!-- REFENTRY: paramName -->
<sect2 id="latka.ref.paramName" xreflabel="paramName">
<title>paramName</title>
<para>the name part of a name/value pair parameter</para>
<sect3>
<title>DTD</title>
<programlisting><!ELEMENT paramName (#PCDATA)></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<para>
<emphasis>None.</emphasis>
</para>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref linkend="latka.ref.param"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
The name part of <sgmltag><xref linkend="latka.ref.param"/></sgmltag>
to be submitted as part of a <sgmltag><xref
linkend="latka.ref.request"/></sgmltag>.
</para>
</sect3>
</sect2>
<!-- REFENTRY: paramValue -->
<sect2 id="latka.ref.paramValue" xreflabel="paramValue">
<title>paramValue</title>
<para>the value part of a name/value pair parameter</para>
<sect3>
<title>DTD</title>
<programlisting><!ELEMENT paramValue (#PCDATA)></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<para>
<emphasis>None.</emphasis>
</para>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref linkend="latka.ref.param"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
The value part of <sgmltag><xref linkend="latka.ref.param"/></sgmltag>
to be submitted as part of a <sgmltag><xref
linkend="latka.ref.request"/></sgmltag>.
</para>
</sect3>
</sect2>
<!-- REFENTRY: REGEXP -->
<sect2 id="latka.ref.regexp" xreflabel="regexp">
<title>regexp</title>
<para>
validates the presence or absence of a regular expression within an
HTTP(S) response
</para>
<sect3>
<title>DTD</title>
<programlisting><![CDATA[<!ELEMENT regexp EMPTY>
<!ATTLIST regexp pattern CDATA #REQUIRED
cond (true | false) "true"
ignoreCase (true | false) "false"
label CDATA #IMPLIED>]]></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<informaltable colsep="1" rowsep="1">
<tgroup cols="4">
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="2in"/>
<thead>
<row>
<entry>Name</entry>
<entry>Type</entry>
<entry>Default</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><sgmltag class="attribute">pattern</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none, but required.</emphasis></entry>
<entry>
The regular expression to look for.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">cond</sgmltag></entry>
<entry>
<emphasis>Enumeration:</emphasis>
<simplelist>
<member><sgmltag
class="attvalue">true</sgmltag></member>
<member><sgmltag
class="attvalue">false</sgmltag></member>
</simplelist>
</entry>
<entry><sgmltag class="attvalue">true</sgmltag></entry>
<entry>
When <sgmltag class="attvalue">true</sgmltag>,
the given <sgmltag class="attribute">pattern</sgmltag>
must match within the response.
When <sgmltag class="attvalue">false</sgmltag>,
the given <sgmltag class="attribute">pattern</sgmltag>
must not match within the response.
</entry>
</row>
<row>
<entry><sgmltag
class="attribute">ignoreCase</sgmltag></entry>
<entry>
<emphasis>Enumeration:</emphasis>
<simplelist>
<member><sgmltag
class="attvalue">true</sgmltag></member>
<member><sgmltag
class="attvalue">false</sgmltag></member>
</simplelist>
</entry>
<entry><sgmltag class="attvalue">false</sgmltag></entry>
<entry>
When <sgmltag class="attvalue">true</sgmltag>,
case is ignored within the
given <sgmltag class="attribute">pattern</sgmltag>.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">label</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Label associated with this validation, which may
be used in programatically generated documentation
or reports. Optional.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref
linkend="latka.ref.validate"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
A <sgmltag>maxRequestTime</sgmltag> validation
passes if the HTTP(S) response is obtained in no more than
<sgmltag class="attribute">millis</sgmltag> milliseconds.
</para>
</sect3>
</sect2>
<!-- REFENTRY: REQUEST -->
<sect2 id="latka.ref.request" xreflabel="request">
<title>request</title>
<para>indicates an HTTP(S) request to be executed</para>
<sect3>
<title>DTD</title>
<programlisting><!ELEMENT request (<xref
linkend="latka.ref.credentials"/>?, <xref linkend="latka.ref.param"/>*, <xref
linkend="latka.ref.validate"/>?)>
<!ATTLIST request path CDATA #REQUIRED
method (post | get) "get"
host CDATA #IMPLIED
port CDATA #IMPLIED
label CDATA #IMPLIED></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<para>
<informaltable colsep="1" rowsep="1">
<tgroup cols="4">
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="2in"/>
<thead>
<row>
<entry>Name</entry>
<entry>Type</entry>
<entry>Default</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><sgmltag class="attribute">path</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none, but required</emphasis></entry>
<entry>Request path. Required.</entry>
</row>
<row>
<entry><sgmltag class="attribute">method</sgmltag></entry>
<entry>
<emphasis>enumeration:</emphasis>
<simplelist>
<member><sgmltag
class="attvalue">get</sgmltag></member>
<member><sgmltag
class="attvalue">post</sgmltag></member>
</simplelist>
</entry>
<entry><sgmltag class="attvalue">get</sgmltag></entry>
<entry>HTTP method. Implied. Defaults to <sgmltag
class="attvalue">get</sgmltag>.</entry>
</row>
<row>
<entry><sgmltag class="attribute">host</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Host to submit request to.
Optional.
When absent, uses default from <sgmltag><xref
linkend="latka.ref.suite"/></sgmltag>.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">port</sgmltag></entry>
<entry>NUMBER</entry>
<entry><emphasis>depends upon protocol</emphasis></entry>
<entry>
Port to submit request to.
Optional.
When absent, uses default from <sgmltag><xref
linkend="latka.ref.suite"/></sgmltag>.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">label</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Label associated with this validation, which may
be used in programatically generated documentation
or reports. Optional.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref linkend="latka.ref.suite"/></sgmltag></member>
<member><sgmltag><xref
linkend="latka.ref.session"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
An HTTP(S) request to be executed.
</para>
</sect3>
</sect2>
<!-- REFENTRY: SESSION -->
<sect2 id="latka.ref.session" xreflabel="session">
<title>session</title>
<para>wrapper for a sequence of <sgmltag><xref
linkend="latka.ref.request"/></sgmltag>s associated with the same state
(session)</para>
<sect3>
<title>DTD</title>
<programlisting><!ELEMENT session (<xref
linkend="latka.ref.request"/>+)>
<!ATTLIST session session_id CDATA #IMPLIED
label CDATA #IMPLIED></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<informaltable colsep="1" rowsep="1">
<tgroup cols="4">
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="2in"/>
<thead>
<row>
<entry>Name</entry>
<entry>Type</entry>
<entry>Default</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><sgmltag
class="attribute">session_id</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Unique identifier for this <sgmltag>session</sgmltag>.
Sessions with the same <sgmltag
class="attribute">session_id</sgmltag>
will share the same underlying state (e.g., cookies, etc.)
</entry>
</row>
<row>
<entry><sgmltag class="attribute">label</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Label associated with this <sgmltag>session</sgmltag>,
which may
be used in programatically generated documentation
or reports. Optional.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref linkend="latka.ref.suite"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
A <sgmltag>session</sgmltag> is a collection of
<sgmltag><xref linkend="latka.ref.request"/></sgmltag>s
that share the same underlying state. For example,
a cookie that returned in the response to one
<sgmltag><xref linkend="latka.ref.request"/></sgmltag>
will be included in subsequent
<sgmltag><xref linkend="latka.ref.request"/></sgmltag>s.
</para>
</sect3>
</sect2>
<!-- REFENTRY: statusCode -->
<sect2 id="latka.ref.statusCode" xreflabel="statusCode">
<title>statusCode</title>
<para>validates an HTTP response code</para>
<sect3>
<title>DTD</title>
<programlisting><![CDATA[<!ELEMENT statusCode EMPTY>
<!ATTLIST statusCode code CDATA "200"
label CDATA #IMPLIED>]]></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<informaltable colsep="1" rowsep="1">
<tgroup cols="4">
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="2in"/>
<thead>
<row>
<entry>Name</entry>
<entry>Type</entry>
<entry>Default</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><sgmltag class="attribute">code</sgmltag></entry>
<entry>NUMBER</entry>
<entry><sgmltag class="attvalue">200</sgmltag></entry>
<entry>
Numeric HTTP response code to expect.
Implied. Defaults to
<sgmltag class="attvalue">200</sgmltag>.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">label</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Label associated with this validation, which may
be used in programatically generated documentation
or reports. Optional.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref
linkend="latka.ref.validate"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
A <sgmltag>statusCode</sgmltag> validation
passes if the HTTP(S) response code for the given request
matches the value specified by
<sgmltag class="attribute">code</sgmltag>.
</para>
</sect3>
</sect2>
<!-- REFENTRY: SUITE -->
<sect2 id="latka.ref.suite" xreflabel="suite">
<title>suite</title>
<para>root element for a suite of tests</para>
<sect3>
<title>DTD</title>
<programlisting><!ELEMENT suite ( (<xref
linkend="latka.ref.session"/> | <xref linkend="latka.ref.request"/>)+ )>
<!ATTLIST suite default_host CDATA #IMPLIED
default_port CDATA #IMPLIED
label CDATA #IMPLIED></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<informaltable colsep="1" rowsep="1">
<tgroup cols="4">
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="1in"/>
<colspec colwidth="2in"/>
<thead>
<row>
<entry>Name</entry>
<entry>Type</entry>
<entry>Default</entry>
<entry>Description</entry>
</row>
</thead>
<tbody>
<row>
<entry><sgmltag
class="attribute">default_host</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Default hostname for <sgmltag><xref
linkend="latka.ref.request"/></sgmltag>s. Optional.
</entry>
</row>
<row>
<entry><sgmltag
class="attribute">default_port</sgmltag></entry>
<entry>NUMBER</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Default port for <sgmltag><xref
linkend="latka.ref.request"/></sgmltag>s. Optional.
</entry>
</row>
<row>
<entry><sgmltag class="attribute">label</sgmltag></entry>
<entry>CDATA</entry>
<entry><emphasis>none</emphasis></entry>
<entry>
Label associated with this <sgmltag>suite</sgmltag>,
which may
be used in programatically generated documentation
or reports. Optional.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</sect3>
<sect3>
<title>Parents</title>
<para>
<emphasis>None.</emphasis>
</para>
</sect3>
<sect3>
<title>Description</title>
<para>
A <sgmltag>suite</sgmltag> is a collection of
<sgmltag><xref linkend="latka.ref.request"/></sgmltag>s
and <sgmltag><xref linkend="latka.ref.session"/></sgmltag>s
to execute.
</para>
</sect3>
</sect2>
<!-- REFENTRY: VALIDATE -->
<sect2 id="latka.ref.validate" xreflabel="validate">
<title>validate</title>
<para>
indicates the suite of validations to apply to the
current <sgmltag><xref linkend="latka.ref.request"/></sgmltag> (and
its response)
</para>
<sect3>
<title>DTD</title>
<programlisting><!ELEMENT validate (<xref
linkend="latka.ref.byteLength"/> | <xref linkend="latka.ref.cookie"/> | <xref
linkend="latka.ref.maxRequestTime"/> | <xref linkend="latka.ref.regexp"/> | <xref
linkend="latka.ref.statusCode"/> )+></programlisting>
</sect3>
<sect3>
<title>Attributes</title>
<para>
<emphasis>None.</emphasis>
</para>
</sect3>
<sect3>
<title>Parents</title>
<simplelist type="inline">
<member><sgmltag><xref
linkend="latka.ref.request"/></sgmltag></member>
</simplelist>
</sect3>
<sect3>
<title>Description</title>
<para>
Contains the set of validations to apply to the
current <sgmltag><xref linkend="latka.ref.request"/></sgmltag>
(and its response).
</para>
</sect3>
</sect2>
</sect1>
</chapter>
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>