Test Examples
A test suite is provided for validating your ChemShell installation in YOUR_CHEMSH_DIR/tests
.
To run the test suite, use the test script:
./test
The test driver will then execute each of the ChemShell tests in turn, followed by a summary of
the results. The summary is also saved to the file validate.log
.
As well as pass or fail, tests may return as unsupported (e.g. if an external code is not available on your machine), or unknown if no result could be found. Failures and unknown results are not expected and should be investigated before proceeding to use ChemShell for production calculations.
By default the test suite will be run using the chemsh
script, but execution directly via Python
can also be tested with, e.g.:
./test --exe python3
The test set can also be used as a reference set of example inputs to base your own calculations on. However please note the calculations are designed primarily to test the code and so may be deliberately unrealistic in some cases.
Test driver options
All of the optional arguments that can be supplied to the chemsh
script can also be given to
the test driver. For example, to run the test suite with a parallel build of ChemShell using
4 MPI processes:
./test --exe chemsh -np 4
On HPC platforms, the tests can be submitted to the queueing system in the usual way:
./test --exe chemsh --submit [job options]
Note in this case the test results will be given in the output file of the submitted job.
Subsets of the test suite can also be run by giving a list of directory names.
For example, to run the NWChem tests in tests/nwchem/
and tests/qmmm/nwchem-gulp
run:
./test --sets nwchem nwchem-gulp
Any tests in subdirectories will also be run. So, for example:
./test --sets qmmm
will run all the tests in tests/qmmm/
including all subdirectories.