quantum-espresso/test-suite/testcode/docs/index.rst

45 lines
1.7 KiB
ReStructuredText

testcode
========
testcode is a python module for testing for regression errors in numerical
(principally scientific) software. Essentially testcode runs a set of
calculations, and compares the output data to that generated by a previous
calculation (which is regarded to be "correct"). It is designed to be
lightweight and highly portable: it can be used both as part of the development
process and to verify the correctness of a binary on a new architecture.
testcode requires python 2.4-3.4. If these are not available, then `pypy
<http://www.pypy.org>`_ is recommended---for this purpose pypy serves as
a portable, self-contained python implementation but this is a tiny aspect of
the pypy project.
testcode can run a set of tests and check the calculated data is within a the
desired tolerance of results contained in previous output (using an internal
data extraction engine, a user-supplied data extraction program or
a user-supplied verification program). The programs to be tested can be run in
serial and in parallel and tests can be run in either locally or submitted to
a compute cluster running a queueing system such as PBS. Previous tests can be
compared and diffed against other tests or benchmarks.
testcode provides access to these features via an API. The supplied
command-line interface, :ref:`testcode.py`, should be sufficient for most
purposes. The command-line interface utilises simple :ref:`configuration files
<config>`, wich makes it easy to customise to the local environment and to add
new tests.
.. toctree::
:maxdepth: 1
installation
configuration_files
jobconfig
userconfig
verification
testcode.py
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`