summaryrefslogtreecommitdiff
path: root/doc/testing.txt
blob: b64d5a466b9b640794df6f7737187cb54b6aadd7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Running regression tests:
-------------------------

Prerequisites: cmake, python

cd tests
mkdir build
cd build
cmake ..
make
make test


Adding  a new regression test:
------------------------------

1) create a test file at an appropriate location under testdata/
2) if the test is non-obvious, create a human readable description of the test in the same directory (e.g testdata/scad/mytest.txt)
3) if a new test app was written, this must be added to tests/CMakeLists.txt
4) Add the tests to the test apps for which you want them to run (in tests/CMakeLists.txt)
5) run the test with the environment variable TEST_GENERATE=1, e.g.:
   $ TEST_GENERATE=1 ctest -R mytest
   (this will generate a mytest-expected.txt file which is used for regression testing)
6) manually verify that the output is correct (tests/regression/<testapp>/mytest-expected.<suffix>)
7) run the test normally and verify that it passes:
  $ ctest -R mytest

Note that test files which don't have an *-expected.<suffix> file will
be ignored for the test apps in question.
contact: Jan Huwald // Impressum