This document explains how to test the Logging and Bookkeeping (\LB) service.
-\TODO{add some more introduction}
+As part of the EGEE-III project, Specific Service Activity SA3: Integration,
+testing and certification\footnote{\url{https://twiki.cern.ch/twiki/bin/view/EGEE/SA3}},
+testing is an essential activity and all important information about gLite software
+testing should be available from the webpage
+\begin{center}
+\url{https://twiki.cern.ch/twiki/bin/view/EGEE/EGEECertification#Test_writing}.
+\end{center}
-\subsection{Test Categories}
-Several layers of tests are considered:
-
-\begin{description}
-\item[Layer 1 - service ping tests:] Basic test if a service is up and running.
-\item[Layer 2 - service functionality tests:] Test the fully supported functionality of a service. This includes also service interface tests.
-\item[Layer 3 - system tests:] Test a complete system that traverses multiple services.
-\item[Layer 4 - stress tests:] Stress test services and systems (including long running jobs to check for resource leaks).
-\item[Layer 5 - performance tests:] Test performance of the service (including the MegaJob results).
-\item[Layer 6 - interoperability tests:] Test for interoperability with other grids (might be interactive).
-\end{description}
+This document describes test plan for the \LB service.
-\TODO{dalsi cleneni: normal (lze testovat vzhledem k produkcnimu prostredi), certification (musi si kazdy pustit sam), }
-\begin{verbatim}
-https://twiki.cern.ch/twiki/bin/view/LCG/LCGgliteTestWritingGuidelines
-- local (meant to be run on the install node) LB server ping test
-- remote (meant to be run via another node) LB server ping test
-- local LB logger ping test
-- remote LB logger ping test
+\subsection{Test Categories}
-- local
+% Obsolete, not used anymore:
+%
+% Several layers of tests are considered:
+% \begin{description}
+% \item[Layer 1 - service ping tests:] Basic test if a service is up and running.
+% \item[Layer 2 - service functionality tests:] Test the fully supported functionality of a service. This includes also service interface tests.
+% \item[Layer 3 - system tests:] Test a complete system that traverses multiple services.
+% \item[Layer 4 - stress tests:] Stress test services and systems (including long running jobs to check for resource leaks).
+% \item[Layer 5 - performance tests:] Test performance of the service (including the MegaJob results).
+% \item[Layer 6 - interoperability tests:] Test for interoperability with other grids (might be interactive).
+% \end{description}
+
+According to the gLite Test Writnig Guidelines
+\footnote{\url{https://twiki.cern.ch/twiki/bin/view/LCG/LCGgliteTestWritingGuidelines}},
+we consider two test categories with the following test types:
+
+\begin{description}
+\item[Integration tests] verify if the software is installable and configurable
+They also check for basic, not depending on other grid services, functionality
+of the component (e.g. daemon is up and running).
+\begin{enumerate}
+\item installation tests,
+\item configuration tests,
+\item service ping tests: basic tests if service is up and running.
+\end{enumerate}
+%
+\item[System tests] verify if the component works within the grid in
+interaction with other grid services.
+\begin{enumerate}
+\item functionality tests of fully supported functionality (including APIs and CLI),
+\item stress tests and performance tests,
+\item interoperability tests,
+\item security tests.
+\end{enumerate}
+\end{description}
-\end{verbatim}
+The tests could be run either locally (on the install node = where the service
+is installed, configured and running) or remotely (via another node, where some
+parts of the software also must be installed).
-\subsection{Test Coverage}
-\TODO{unit tests?}
+Apart from these tests, there exist also tests of the individual components run
+for example during the build process (especially unit tests). They are not
+described in this document.
\subsection{Tests in \texttt{org.glite.testsuites.ctb/LB}}