dev:regtesting
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
dev:regtesting [2015/04/28 13:34] – oschuett | dev:regtesting [2018/10/08 19:58] – oschuett | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== CP2K Regression Testing ====== | ====== CP2K Regression Testing ====== | ||
- | CP2K comes with over 2500 test input files (located in [[src> | + | CP2K comes with over 2500 test input files (located in [[src> |
+ | * all developers complete a regression test before committing | ||
+ | * all users complete a test before using a self-compiled binary for their projects | ||
==== Dashboard ==== | ==== Dashboard ==== | ||
- | A number of regtests are run automatically by various members of our community. The results of these tests are collected centrally at the [[http:// | + | A number of regtests are run automatically by various members of our community. The results of these tests are collected centrally at the [[http:// |
==== Code Coverage ==== | ==== Code Coverage ==== | ||
- | We aim that the regression test suite covers all the functionality of CP2K. For this purpose we regularly create [[http:// | + | We aim that the regression test suite covers all the functionality of CP2K. For this purpose we regularly create [[http:// |
===== How does it work? ===== | ===== How does it work? ===== | ||
- | The regression test suite is run using the [[src>cp2k/tools/ | + | The regression test suite is run using the [[src> |
It performs the following tasks: | It performs the following tasks: | ||
* update to the current SVN version (including new tests) | * update to the current SVN version (including new tests) | ||
Line 21: | Line 23: | ||
===== Running the regtests ===== | ===== Running the regtests ===== | ||
+ | |||
+ | ==== Step 0: make based testing ==== | ||
+ | |||
+ | * If you are able to build and run cp2k on the local machine the easiest way is to start the regtesting by running '' | ||
+ | * Be careful about the value of '' | ||
+ | * If this fails (e.g. on batch systems), continue with Step 1 else go to interpretation. | ||
==== Step 1: Preparation ==== | ==== Step 1: Preparation ==== | ||
- | * You must be able to build and run cp2k on the given machine, the rest should be ' | ||
* Decide on a directory for doing the regtest, there will be plenty of files in this dir (after a while) so make it something like '' | * Decide on a directory for doing the regtest, there will be plenty of files in this dir (after a while) so make it something like '' | ||
* Checkout a version of cp2k into '' | * Checkout a version of cp2k into '' | ||
* Set up the arch files so that you can cleanly build cp2k (test this) | * Set up the arch files so that you can cleanly build cp2k (test this) | ||
- | ==== Step 2: Configuration | + | ==== Step 2: Running |
- | + | ||
- | The // | + | |
- | + | ||
- | ^ Config Variable ^ Default ^ Meaning | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | + | ||
- | Furthermore: | + | |
< | < | ||
- | # Script configuration. The value of the follow variables can be redefined, see below | + | $ tools/ |
- | # | + | Usage: do_regtest [OPTION] |
- | # make, awk, datum_full, datum_short, | + | Run the CP2K regression test suite |
- | # | + | Example: do_regtest -c my_regtest.conf |
- | </ | + | |
+ | General: | ||
+ | -h, -help, --help | ||
+ | -c, -config FILE read any of the following configuration switches from FILE. | ||
+ | -cp2kdir PATH | ||
- | ==== Step 3: Execution ==== | + | Svn: |
- | Normally, you just have to call the // | + | -svndate DATE |
+ | -nosvn | ||
+ | -noemptycheck | ||
- | < | + | Build: |
- | $ ./ | + | |
- | </ | + | |
+ | | ||
+ | -nobuild | ||
- | However, the // | + | Runtime: |
- | ^ Command Line Switch | + | -mpiranks NRANKS |
- | | '' | + | -ompthreads NTHREADS |
- | | '' | + | -maxtasks NPROCS |
- | | '' | + | -jobmaxtime SECONDS |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | | '' | + | |
- | The // | + | Testing: |
+ | -noreset | ||
+ | -skiptest | ||
+ | -skipdir TESTDIR | ||
+ | -restrictdir TESTDIR | ||
+ | -retest | ||
- | ^ Exit Code | + | Exit codes: |
- | | | + | 0 |
- | | | + | 1 |
- | | | + | 3 |
- | | | + | 4 |
- | | | + | 5 |
- | | | + | 6 |
- | | | + | 7 |
- | | | + | 8 |
- | | | + | 100 |
+ | For more information visit: < | ||
+ | </ | ||
- | ==== Step 4: Interpretation ==== | + | ==== Step 3: Interpretation ==== |
A test results can be any of the following: | A test results can be any of the following: | ||
^ Test Result | ^ Test Result | ||
Line 110: | Line 103: | ||
| '' | | '' | ||
| '' | | '' | ||
- | | '' | + | | '' |
| '' | | '' | ||
dev/regtesting.txt · Last modified: 2023/10/19 14:03 by krack