2015-04-27 08:35:04 +02:00
|
|
|
QGIS unit tests
|
|
|
|
===============
|
|
|
|
|
|
|
|
Build tests
|
|
|
|
-----------
|
|
|
|
|
|
|
|
Make sure that you have enabled building of tests in CMake.
|
|
|
|
`cmake -DENABLE_TESTS=ON ..`
|
|
|
|
|
|
|
|
Run tests
|
|
|
|
---------
|
|
|
|
|
|
|
|
You can run all tests using `make check`.
|
|
|
|
|
|
|
|
Individual tests can be run using `ctest`.
|
|
|
|
|
|
|
|
For example if the output of `make check` ends like this:
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
The following tests FAILED:
|
|
|
|
77 - PyQgsLocalServer (Failed)
|
|
|
|
```
|
|
|
|
|
|
|
|
You could re-run the failing test with:
|
|
|
|
|
|
|
|
```
|
|
|
|
ctest -V -R PyQgsLocalServer
|
|
|
|
```
|
|
|
|
|
|
|
|
The parameter `-V` enables verbose mode and `-R` takes a regular expression as
|
|
|
|
parameter and will only run matching tests.
|
|
|
|
|
|
|
|
Advanced configuration
|
|
|
|
----------------------
|
|
|
|
|
|
|
|
### Postgres
|
|
|
|
|
2015-11-15 22:39:02 +01:00
|
|
|
Make sure that you have enabled building of postgres test in CMake.
|
|
|
|
`cmake -DENABLE_PGTEST=ON ..`
|
|
|
|
|
2015-04-27 08:35:04 +02:00
|
|
|
To test the postgres provider you will need to have a database available to
|
2015-11-15 22:39:02 +01:00
|
|
|
which the postgres provider can connect. The server will need to have postgis
|
|
|
|
support enabled.
|
2016-02-10 17:05:38 +01:00
|
|
|
|
|
|
|
By default the test uses the following connection string:
|
|
|
|
|
|
|
|
dbname=qgis_test
|
2015-11-15 22:39:02 +01:00
|
|
|
|
|
|
|
If this does not match your setup you can set the environment variable
|
2016-02-10 17:05:38 +01:00
|
|
|
`QGIS_PGTEST_DB` to the desired connection string, or you can rely
|
|
|
|
on standard libpq environment variables to tweak host, port user and
|
|
|
|
password (PGHOST, PGPORT, PGUSER, PGPASSWORD).
|
2015-11-15 22:39:02 +01:00
|
|
|
|
|
|
|
Please note that the database needs to be initialized using the sql-script
|
2016-02-10 17:05:38 +01:00
|
|
|
|
|
|
|
tests/testdata/provider/testdata_pg*.sql
|
|
|
|
|
|
|
|
They take care of activating postgis for the test database and
|
|
|
|
create some tables containing test data.
|